Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
hphy
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
向怀芳
hphy
Commits
c291d99d
Commit
c291d99d
authored
Jun 30, 2022
by
fshenye
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
实时忙闲预测
parent
e396c4ca
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
177 additions
and
51 deletions
+177
-51
HpgpDepartmentRankMapper.java
.../sh/stc/sict/theme/hpgp/dao/HpgpDepartmentRankMapper.java
+2
-1
HpgpBusyIdlePrediction.java
.../sh/stc/sict/theme/hpgp/model/HpgpBusyIdlePrediction.java
+19
-21
HpgpBusyIdlePredictionService.java
...ict/theme/hpgp/service/HpgpBusyIdlePredictionService.java
+2
-1
HpgpBusyIdlePredictionServiceImpl.java
.../hpgp/service/impl/HpgpBusyIdlePredictionServiceImpl.java
+77
-17
DeptPredictionVO.java
...n/java/cn/sh/stc/sict/theme/hpgp/vo/DeptPredictionVO.java
+31
-0
DeptRankVO.java
...rc/main/java/cn/sh/stc/sict/theme/hpgp/vo/DeptRankVO.java
+10
-0
WDController.java
...cn/sh/stc/sict/theme/hphy/controller/mp/WDController.java
+8
-0
HpDeptInfoServiceImpl.java
...c/sict/theme/hphy/service/impl/HpDeptInfoServiceImpl.java
+7
-0
NumSourceInfo.java
...main/java/cn/sh/stc/sict/theme/hphy/wd/NumSourceInfo.java
+2
-2
WanDaHttpUtil.java
...main/java/cn/sh/stc/sict/theme/hphy/wd/WanDaHttpUtil.java
+2
-3
logback-spring.xml
...odules/theme-schema/src/main/resources/logback-spring.xml
+1
-1
HpgpBusyIdlePredictionMapper.xml
...in/resources/mapper/hpgp/HpgpBusyIdlePredictionMapper.xml
+2
-1
HpgpDepartmentRankMapper.xml
...c/main/resources/mapper/hpgp/HpgpDepartmentRankMapper.xml
+14
-4
No files found.
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hpgp/dao/HpgpDepartmentRankMapper.java
View file @
c291d99d
package
cn
.
sh
.
stc
.
sict
.
theme
.
hpgp
.
dao
;
package
cn
.
sh
.
stc
.
sict
.
theme
.
hpgp
.
dao
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpDepartmentRank
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpDepartmentRank
;
import
cn.sh.stc.sict.theme.hpgp.vo.DeptRankVO
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
...
@@ -19,5 +20,5 @@ public interface HpgpDepartmentRankMapper extends BaseMapper<HpgpDepartmentRank>
...
@@ -19,5 +20,5 @@ public interface HpgpDepartmentRankMapper extends BaseMapper<HpgpDepartmentRank>
* @param size 查询记录数 默认3条
* @param size 查询记录数 默认3条
* @return
* @return
*/
*/
List
<
HpgpDepartmentRank
>
getRankByStandardDept
(
@Param
(
"deptName"
)
String
deptName
,
@Param
(
"size"
)
int
size
);
List
<
DeptRankVO
>
getRankByStandardDept
(
@Param
(
"deptName"
)
String
deptName
,
@Param
(
"size"
)
int
size
);
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hpgp/model/HpgpBusyIdlePrediction.java
View file @
c291d99d
...
@@ -18,24 +18,22 @@ import java.io.Serializable;
...
@@ -18,24 +18,22 @@ import java.io.Serializable;
@Data
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@EqualsAndHashCode
(
callSuper
=
true
)
public
class
HpgpBusyIdlePrediction
extends
Model
<
HpgpBusyIdlePrediction
>
{
public
class
HpgpBusyIdlePrediction
extends
Model
<
HpgpBusyIdlePrediction
>
{
//医院代码
//医院代码
@ApiModelProperty
(
hidden
=
false
,
value
=
"医院代码"
)
@ApiModelProperty
(
hidden
=
false
,
value
=
"医院代码"
)
private
String
hospitalCode
;
private
String
hospitalCode
;
//医院名称
//医院名称
@ApiModelProperty
(
hidden
=
false
,
value
=
"医院名称"
)
@ApiModelProperty
(
hidden
=
false
,
value
=
"医院名称"
)
private
String
hospitalName
;
private
String
hospitalName
;
//科室代码
//科室代码
@ApiModelProperty
(
hidden
=
false
,
value
=
"科室代码"
)
@ApiModelProperty
(
hidden
=
false
,
value
=
"科室代码"
)
private
String
deptCode
;
private
String
deptCode
;
//科室名称
//科室名称
@ApiModelProperty
(
hidden
=
false
,
value
=
"科室名称"
)
@ApiModelProperty
(
hidden
=
false
,
value
=
"科室名称"
)
private
String
deptName
;
private
String
deptName
;
//预测日期
//预测日期
@ApiModelProperty
(
hidden
=
false
,
value
=
"预测日期"
)
@ApiModelProperty
(
hidden
=
false
,
value
=
"预测日期"
)
private
Date
predictionDate
;
private
Date
predictionDate
;
//忙闲评分
//忙闲评分
@ApiModelProperty
(
hidden
=
false
,
value
=
"忙闲评分"
)
@ApiModelProperty
(
hidden
=
false
,
value
=
"忙闲评分"
)
private
Integer
score
;
private
Integer
score
;
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hpgp/service/HpgpBusyIdlePredictionService.java
View file @
c291d99d
package
cn
.
sh
.
stc
.
sict
.
theme
.
hpgp
.
service
;
package
cn
.
sh
.
stc
.
sict
.
theme
.
hpgp
.
service
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpBusyIdlePrediction
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpBusyIdlePrediction
;
import
cn.sh.stc.sict.theme.hpgp.vo.DeptPredictionVO
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
java.util.List
;
import
java.util.List
;
...
@@ -19,5 +20,5 @@ public interface HpgpBusyIdlePredictionService extends IService<HpgpBusyIdlePred
...
@@ -19,5 +20,5 @@ public interface HpgpBusyIdlePredictionService extends IService<HpgpBusyIdlePred
* @param deptName 标准科室名称
* @param deptName 标准科室名称
* @return 忙闲医院科室
* @return 忙闲医院科室
*/
*/
List
<
HpgpBusyIdlePrediction
>
busyIdlePrediction
(
String
deptName
);
List
<
DeptPredictionVO
>
busyIdlePrediction
(
String
deptName
);
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hpgp/service/impl/HpgpBusyIdlePredictionServiceImpl.java
View file @
c291d99d
package
cn
.
sh
.
stc
.
sict
.
theme
.
hpgp
.
service
.
impl
;
package
cn
.
sh
.
stc
.
sict
.
theme
.
hpgp
.
service
.
impl
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.date.DatePattern
;
import
cn.hutool.core.date.DateTime
;
import
cn.hutool.core.date.DateTime
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.db.DaoTemplate
;
import
cn.hutool.json.JSONArray
;
import
cn.hutool.json.JSONUtil
;
import
cn.sh.stc.sict.cloud.common.core.util.NumberUtil
;
import
cn.sh.stc.sict.cloud.common.core.util.R
;
import
cn.sh.stc.sict.theme.hpgp.dao.HpgpBusyIdlePredictionMapper
;
import
cn.sh.stc.sict.theme.hpgp.dao.HpgpBusyIdlePredictionMapper
;
import
cn.sh.stc.sict.theme.hpgp.dao.HpgpDepartmentRankMapper
;
import
cn.sh.stc.sict.theme.hpgp.dao.HpgpDepartmentRankMapper
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpBusyIdlePrediction
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpBusyIdlePrediction
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpDepartmentRank
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpDepartmentRank
;
import
cn.sh.stc.sict.theme.hpgp.service.HpgpBusyIdlePredictionService
;
import
cn.sh.stc.sict.theme.hpgp.service.HpgpBusyIdlePredictionService
;
import
cn.sh.stc.sict.theme.hpgp.vo.DeptPredictionVO
;
import
cn.sh.stc.sict.theme.hpgp.vo.DeptRankVO
;
import
cn.sh.stc.sict.theme.hphy.wd.*
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
import
java.util.*
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -23,31 +33,81 @@ import java.util.stream.Collectors;
...
@@ -23,31 +33,81 @@ import java.util.stream.Collectors;
* @author zhangly
* @author zhangly
* @since 2022-01-14 09:56:43
* @since 2022-01-14 09:56:43
*/
*/
@Slf4j
@AllArgsConstructor
@AllArgsConstructor
@Service
(
"hpgpBusyIdlPredictionService"
)
@Service
(
"hpgpBusyIdlPredictionService"
)
public
class
HpgpBusyIdlePredictionServiceImpl
extends
ServiceImpl
<
HpgpBusyIdlePredictionMapper
,
HpgpBusyIdlePrediction
>
implements
HpgpBusyIdlePredictionService
{
public
class
HpgpBusyIdlePredictionServiceImpl
extends
ServiceImpl
<
HpgpBusyIdlePredictionMapper
,
HpgpBusyIdlePrediction
>
implements
HpgpBusyIdlePredictionService
{
private
final
HpgpDepartmentRankMapper
departmentRankMapper
;
private
final
HpgpDepartmentRankMapper
departmentRankMapper
;
@Override
@Override
public
List
<
HpgpBusyIdlePrediction
>
busyIdlePrediction
(
String
deptName
)
{
public
List
<
DeptPredictionVO
>
busyIdlePrediction
(
String
deptName
)
{
// 查询科室排名
// 查询科室排名
// 组装医院代码、科室代码
// 组装医院代码、科室代码
// 查询医院忙闲
// 查询医院忙闲
List
<
HpgpDepartmentRank
>
deptRank
=
departmentRankMapper
.
getRankByStandardDept
(
deptName
,
3
);
List
<
DeptRankVO
>
rankList
=
departmentRankMapper
.
getRankByStandardDept
(
deptName
,
3
);
if
(
CollectionUtil
.
isEmpty
(
deptRank
))
{
if
(
CollectionUtil
.
isEmpty
(
rankList
))
{
return
null
;
return
null
;
}
}
Set
<
String
>
hospitalCodes
=
deptRank
.
stream
().
map
(
HpgpDepartmentRank:
:
getHospitalCode
).
collect
(
Collectors
.
toSet
());
DateTime
startTime
=
DateUtil
.
date
();
Set
<
String
>
deptCodes
=
deptRank
.
stream
().
map
(
HpgpDepartmentRank:
:
getDeptCode
).
collect
(
Collectors
.
toSet
());
DateTime
endTime
=
DateUtil
.
offsetDay
(
DateUtil
.
date
(),
7
);
List
<
DeptPredictionVO
>
result
=
new
ArrayList
<>();
DateTime
today
=
DateUtil
.
date
();
rankList
.
forEach
(
rank
->
{
DateTime
nextDay
=
DateUtil
.
offsetDay
(
DateUtil
.
date
(),
7
);
List
<
DeptPredictionVO
>
rankResult
=
new
ArrayList
<>();
return
this
.
list
(
DeptInfo
deptInfo
=
new
DeptInfo
();
new
LambdaQueryWrapper
<
HpgpBusyIdlePrediction
>()
deptInfo
.
setHosOrgCode
(
rank
.
getHospitalCode
());
.
in
(
HpgpBusyIdlePrediction:
:
getHospitalCode
,
hospitalCodes
)
deptInfo
.
setOneDeptCode
(
rank
.
getOneDeptCode
());
.
in
(
HpgpBusyIdlePrediction:
:
getDeptCode
,
deptCodes
)
deptInfo
.
setDeptCode
(
rank
.
getSubDeptCode
());
.
gt
(
HpgpBusyIdlePrediction:
:
getPredictionDate
,
today
)
List
<
OutPatInfo
>
outPatInfo
=
WanDaHttpUtil
.
getResourceOutPatInfo
(
deptInfo
);
.
le
(
HpgpBusyIdlePrediction:
:
getPredictionDate
,
nextDay
)
if
(
CollUtil
.
isNotEmpty
(
outPatInfo
))
{
);
Map
<
String
,
DeptPredictionVO
>
dateResultMap
=
new
HashMap
<>();
outPatInfo
.
forEach
(
pat
->
{
NumSourceInfo
numSourceInfo
=
new
NumSourceInfo
();
numSourceInfo
.
setHosOrgCode
(
rank
.
getHospitalCode
());
numSourceInfo
.
setOneDeptCode
(
rank
.
getOneDeptCode
());
numSourceInfo
.
setDeptCode
(
rank
.
getSubDeptCode
());
numSourceInfo
.
setStartTime
(
DateUtil
.
format
(
startTime
,
DatePattern
.
NORM_DATE_FORMAT
));
numSourceInfo
.
setEndTime
(
DateUtil
.
format
(
endTime
,
DatePattern
.
NORM_DATE_FORMAT
));
numSourceInfo
.
setOrderType
(
WanDaConstant
.
ORDER_TYPE_CLINC
);
numSourceInfo
.
setPatient_type
(
WanDaConstant
.
PATIENT_TYPE_NORMAL
);
numSourceInfo
.
setResourceCode
(
pat
.
getResourceCode
());
List
<
NumSourceInfo
>
orderNumInfo
=
WanDaHttpUtil
.
getOrderNumInfo
(
numSourceInfo
);
if
(
CollUtil
.
isNotEmpty
(
orderNumInfo
))
{
Map
<
String
,
List
<
NumSourceInfo
>>
dateMap
=
orderNumInfo
.
stream
().
collect
(
Collectors
.
groupingBy
(
NumSourceInfo:
:
getScheduleDate
));
dateMap
.
forEach
((
date
,
numList
)
->
{
DeptPredictionVO
vo
=
dateResultMap
.
getOrDefault
(
date
,
new
DeptPredictionVO
());
vo
.
setDeptCode
(
rank
.
getDeptCode
());
vo
.
setDeptName
(
rank
.
getDeptName
());
vo
.
setHospitalName
(
rank
.
getHospitalName
());
vo
.
setHospitalCode
(
rank
.
getHospitalCode
());
vo
.
setPredictionDate
(
DateUtil
.
parseDate
(
date
));
int
reserveOrderNum
=
numList
.
stream
().
mapToInt
(
NumSourceInfo:
:
getReserveOrderNum
).
sum
();
vo
.
setReserveOrderNum
(
NumberUtil
.
isNullOrZero
(
vo
.
getReserveOrderNum
())
?
reserveOrderNum
:
vo
.
getReserveOrderNum
()
+
reserveOrderNum
);
int
remain
=
numList
.
stream
().
mapToInt
(
NumSourceInfo:
:
getRemainNum
).
sum
();
vo
.
setRemainNum
(
NumberUtil
.
isNullOrZero
(
vo
.
getRemainNum
())
?
remain
:
vo
.
getRemainNum
()
+
remain
);
vo
.
setScoreByNum
();
dateResultMap
.
put
(
date
,
vo
);
});
}
});
dateResultMap
.
forEach
((
k
,
v
)
->
{
rankResult
.
add
(
v
);
});
}
// 生成无号源信息
if
(
CollUtil
.
isEmpty
(
rankResult
))
{
for
(
Date
i
=
DateUtil
.
offsetDay
(
startTime
,
1
);
DateUtil
.
compare
(
i
,
endTime
)
<
1
;
i
=
DateUtil
.
offsetDay
(
i
,
1
))
{
DeptPredictionVO
vo
=
new
DeptPredictionVO
();
vo
.
setDeptCode
(
rank
.
getDeptCode
());
vo
.
setDeptName
(
rank
.
getDeptName
());
vo
.
setHospitalName
(
rank
.
getHospitalName
());
vo
.
setHospitalCode
(
rank
.
getHospitalCode
());
vo
.
setPredictionDate
(
i
);
vo
.
setScoreByNum
();
result
.
add
(
vo
);
}
}
result
.
addAll
(
rankResult
);
});
return
result
;
}
}
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hpgp/vo/DeptPredictionVO.java
0 → 100644
View file @
c291d99d
package
cn
.
sh
.
stc
.
sict
.
theme
.
hpgp
.
vo
;
import
cn.sh.stc.sict.cloud.common.core.util.NumberUtil
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpBusyIdlePrediction
;
import
lombok.Data
;
@Data
public
class
DeptPredictionVO
extends
HpgpBusyIdlePrediction
{
private
Integer
reserveOrderNum
;
private
Integer
remainNum
;
// 可用号源 / 号源
// >=0.5 0- 闲 -绿色
// 0.2-0.5 1-忙碌-黄色
// <=0.2 2-非常忙碌-红色
// 无号院 -1 灰色
public
void
setScoreByNum
()
{
if
(
NumberUtil
.
isNotNullOrZero
(
this
.
reserveOrderNum
))
{
double
roate
=
this
.
remainNum
*
1.0
/
this
.
reserveOrderNum
;
if
(
roate
>=
0.5
)
{
this
.
setScore
(
0
);
}
else
if
(
roate
>
0.2
&&
roate
<
0.5
)
{
this
.
setScore
(
1
);
}
else
{
this
.
setScore
(
2
);
}
}
else
{
this
.
setScore
(-
1
);
}
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hpgp/vo/DeptRankVO.java
0 → 100644
View file @
c291d99d
package
cn
.
sh
.
stc
.
sict
.
theme
.
hpgp
.
vo
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpDepartmentRank
;
import
lombok.Data
;
@Data
public
class
DeptRankVO
extends
HpgpDepartmentRank
{
private
String
oneDeptCode
;
private
String
subDeptCode
;
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/controller/mp/WDController.java
View file @
c291d99d
...
@@ -6,7 +6,11 @@ import cn.hutool.core.util.RandomUtil;
...
@@ -6,7 +6,11 @@ import cn.hutool.core.util.RandomUtil;
import
cn.sh.stc.sict.cloud.common.core.constant.Constant
;
import
cn.sh.stc.sict.cloud.common.core.constant.Constant
;
import
cn.sh.stc.sict.cloud.common.core.util.R
;
import
cn.sh.stc.sict.cloud.common.core.util.R
;
import
cn.sh.stc.sict.cloud.common.core.util.ValidateCodeUtil
;
import
cn.sh.stc.sict.cloud.common.core.util.ValidateCodeUtil
;
import
cn.sh.stc.sict.theme.hpgp.model.HpgpDepartmentRank
;
import
cn.sh.stc.sict.theme.hpgp.service.HpgpDepartmentRankService
;
import
cn.sh.stc.sict.theme.hphy.service.HpDeptInfoService
;
import
cn.sh.stc.sict.theme.hphy.wd.*
;
import
cn.sh.stc.sict.theme.hphy.wd.*
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
io.swagger.annotations.ApiParam
;
...
@@ -29,6 +33,10 @@ public class WDController {
...
@@ -29,6 +33,10 @@ public class WDController {
@Autowired
@Autowired
private
StringRedisTemplate
redisTemplate
;
private
StringRedisTemplate
redisTemplate
;
@Autowired
private
HpgpDepartmentRankService
hpgpDepartmentRankService
;
@Autowired
private
HpDeptInfoService
hpDeptInfoService
;
/**
/**
* 0. 发短信
* 0. 发短信
...
...
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/service/impl/HpDeptInfoServiceImpl.java
View file @
c291d99d
...
@@ -9,6 +9,9 @@ import cn.sh.stc.sict.theme.hphy.model.HpDocInfo;
...
@@ -9,6 +9,9 @@ import cn.sh.stc.sict.theme.hphy.model.HpDocInfo;
import
cn.sh.stc.sict.theme.hphy.model.HpHosInfo
;
import
cn.sh.stc.sict.theme.hphy.model.HpHosInfo
;
import
cn.sh.stc.sict.theme.hphy.service.HpDeptInfoService
;
import
cn.sh.stc.sict.theme.hphy.service.HpDeptInfoService
;
import
cn.sh.stc.sict.theme.hphy.vo.DeptDoctorsVO
;
import
cn.sh.stc.sict.theme.hphy.vo.DeptDoctorsVO
;
import
cn.sh.stc.sict.theme.hphy.wd.DeptInfo
;
import
cn.sh.stc.sict.theme.hphy.wd.DoctInfo
;
import
cn.sh.stc.sict.theme.hphy.wd.WanDaHttpUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
...
@@ -57,6 +60,10 @@ public class HpDeptInfoServiceImpl extends ServiceImpl<HpDeptInfoMapper, HpDeptI
...
@@ -57,6 +60,10 @@ public class HpDeptInfoServiceImpl extends ServiceImpl<HpDeptInfoMapper, HpDeptI
List
<
HpDocInfo
>
doctors
=
hpDocInfoMapper
.
selectList
(
docWrapper
);
List
<
HpDocInfo
>
doctors
=
hpDocInfoMapper
.
selectList
(
docWrapper
);
// 查询可预约医生信息
DeptInfo
info
=
new
DeptInfo
();
List
<
DoctInfo
>
resourceDoctInfo
=
WanDaHttpUtil
.
getResourceDoctInfo
(
info
);
return
new
DeptDoctorsVO
(
hosInfo
,
deptInfo
,
doctors
);
return
new
DeptDoctorsVO
(
hosInfo
,
deptInfo
,
doctors
);
}
}
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/wd/NumSourceInfo.java
View file @
c291d99d
...
@@ -31,6 +31,6 @@ public class NumSourceInfo {
...
@@ -31,6 +31,6 @@ public class NumSourceInfo {
private
String
visitCost
;
private
String
visitCost
;
private
String
scheduleDate
;
private
String
scheduleDate
;
private
String
timeRange
;
private
String
timeRange
;
private
String
remainNum
;
private
Integer
remainNum
;
private
String
reserveOrderNum
;
private
Integer
reserveOrderNum
;
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/wd/WanDaHttpUtil.java
View file @
c291d99d
...
@@ -197,7 +197,6 @@ public class WanDaHttpUtil {
...
@@ -197,7 +197,6 @@ public class WanDaHttpUtil {
*/
*/
public
List
<
NumSourceInfo
>
getOrderNumInfo
(
NumSourceInfo
numSourceInfo
)
{
public
List
<
NumSourceInfo
>
getOrderNumInfo
(
NumSourceInfo
numSourceInfo
)
{
String
xml
=
WanDaUtil
.
GetOrderNumInfoServiceXML
(
numSourceInfo
);
String
xml
=
WanDaUtil
.
GetOrderNumInfoServiceXML
(
numSourceInfo
);
System
.
out
.
println
(
xml
);
String
body
=
HttpRequest
.
post
(
URL
)
String
body
=
HttpRequest
.
post
(
URL
)
.
body
(
xml
)
.
body
(
xml
)
.
execute
()
.
execute
()
...
@@ -207,7 +206,7 @@ public class WanDaHttpUtil {
...
@@ -207,7 +206,7 @@ public class WanDaHttpUtil {
log
.
error
(
"号源查询 失败"
);
log
.
error
(
"号源查询 失败"
);
return
null
;
return
null
;
}
}
log
.
info
(
"号源查询:body = {}"
,
body
);
//
log.info("号源查询:body = {}", body);
String
returnXml
=
getReturn
(
body
,
"GetOrderNumInfoService"
);
String
returnXml
=
getReturn
(
body
,
"GetOrderNumInfoService"
);
if
(
Constant
.
STRING_NO
.
equals
(
getCode
(
returnXml
)))
{
if
(
Constant
.
STRING_NO
.
equals
(
getCode
(
returnXml
)))
{
Document
document
=
XmlUtil
.
readXML
(
returnXml
);
Document
document
=
XmlUtil
.
readXML
(
returnXml
);
...
@@ -450,7 +449,7 @@ public class WanDaHttpUtil {
...
@@ -450,7 +449,7 @@ public class WanDaHttpUtil {
log
.
error
(
"查询门诊信息失败"
);
log
.
error
(
"查询门诊信息失败"
);
return
null
;
return
null
;
}
}
log
.
info
(
"查询门诊信息:body = {}"
,
body
);
//
log.info("查询门诊信息:body = {}", body);
String
returnXml
=
getReturn
(
body
,
"GetResourceOutPatInfoService"
);
String
returnXml
=
getReturn
(
body
,
"GetResourceOutPatInfoService"
);
return
serialOutPatInfo
(
returnXml
);
return
serialOutPatInfo
(
returnXml
);
}
}
...
...
smart-health-modules/theme-schema/src/main/resources/logback-spring.xml
View file @
c291d99d
...
@@ -63,7 +63,7 @@
...
@@ -63,7 +63,7 @@
<appender-ref
ref=
"error"
/>
<appender-ref
ref=
"error"
/>
</logger>
</logger>
<!-- Level: FATAL 0 ERROR 3 WARN 4 INFO 6 DEBUG 7 -->
<!-- Level: FATAL 0 ERROR 3 WARN 4 INFO 6 DEBUG 7 -->
<root
level=
"
INFO
"
>
<root
level=
"
ERROR
"
>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"console"
/>
<appender-ref
ref=
"debug"
/>
<appender-ref
ref=
"debug"
/>
</root>
</root>
...
...
smart-health-modules/theme-schema/src/main/resources/mapper/hpgp/HpgpBusyIdlePredictionMapper.xml
View file @
c291d99d
...
@@ -13,5 +13,6 @@
...
@@ -13,5 +13,6 @@
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
hospital_code
hospital_code
, hospital_name, dept_code, dept_name, prediction_date, score
</sql>
, hospital_name, dept_code, dept_name, prediction_date, score
</sql>
</mapper>
</mapper>
smart-health-modules/theme-schema/src/main/resources/mapper/hpgp/HpgpDepartmentRankMapper.xml
View file @
c291d99d
...
@@ -13,9 +13,19 @@
...
@@ -13,9 +13,19 @@
<sql
id=
"Base_Column_List"
>
standard_dept , hospital_code, hospital_name, dept_code, dept_name, rank_score
</sql>
<sql
id=
"Base_Column_List"
>
standard_dept , hospital_code, hospital_name, dept_code, dept_name, rank_score
</sql>
<select
id=
"getRankByStandardDept"
resultMap=
"HpgpDepartmentRankMap"
>
<select
id=
"getRankByStandardDept"
resultType=
"cn.sh.stc.sict.theme.hpgp.vo.DeptRankVO"
>
select
select dr.standard_dept standardDept,
<include
refid=
"Base_Column_List"
/>
dr.hospital_code hospitalCode,
from hpgp_department_rank where standard_dept = #{deptName} order by rank_score asc limit #{size}
dr.hospital_name hospitalName,
dr.dept_code deptCode,
dr.dept_name deptName,
dr.rank_score rankScore,
d.one_dept_code oneDeptCode,
d.dept_code subDeptCode
from hpgp_department_rank dr
left join hp_dept_info d on (dr.hospital_code = d.hos_org_code and dr.dept_code = d.dept_code)
where dr.standard_dept = #{deptName}
order by dr.rank_score asc
limit #{size}
</select>
</select>
</mapper>
</mapper>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment