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
a9b851b0
Commit
a9b851b0
authored
Jan 06, 2023
by
gaozhaochen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add: 统计智能导诊使用详情
parent
e7b4a1b2
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
282 additions
and
0 deletions
+282
-0
SysUserBase.java
...ain/java/cn/sh/stc/sict/cloud/upms/model/SysUserBase.java
+5
-0
SysUserBaseServiceImpl.java
.../sict/cloud/upms/service/impl/SysUserBaseServiceImpl.java
+2
-0
HpStatisticsController.java
...ict/theme/hphy/controller/web/HpStatisticsController.java
+51
-0
HpStatisticsMapper.java
...ava/cn/sh/stc/sict/theme/hphy/dao/HpStatisticsMapper.java
+47
-0
HpStatisticsService.java
...n/sh/stc/sict/theme/hphy/service/HpStatisticsService.java
+22
-0
HpStatisticsServiceImpl.java
...sict/theme/hphy/service/impl/HpStatisticsServiceImpl.java
+48
-0
StatisticsUsageVO.java
.../java/cn/sh/stc/sict/theme/hphy/vo/StatisticsUsageVO.java
+45
-0
HpStatisticsMapper.xml
...ema/src/main/resources/mapper/hphy/HpStatisticsMapper.xml
+62
-0
No files found.
smart-health-modules/cloud-upms/cloud-upms-api/src/main/java/cn/sh/stc/sict/cloud/upms/model/SysUserBase.java
View file @
a9b851b0
...
...
@@ -32,6 +32,11 @@ public class SysUserBase extends Model<SysUserBase> {
@ApiModelProperty
(
value
=
"用户id"
)
private
Long
id
;
/**
* 公众号appId
*/
private
String
appId
;
private
String
openId
;
/**
...
...
smart-health-modules/cloud-upms/cloud-upms-biz/src/main/java/cn/sh/stc/sict/cloud/upms/service/impl/SysUserBaseServiceImpl.java
View file @
a9b851b0
...
...
@@ -108,6 +108,7 @@ public class SysUserBaseServiceImpl extends ServiceImpl<SysUserBaseMapper, SysUs
*/
private
UserInfo
getByXszyWoa
(
String
[]
infoArray
)
{
String
source
=
infoArray
[
0
];
String
appId
=
infoArray
[
1
];
String
token
=
infoArray
[
2
];
String
hospitalCode
=
infoArray
[
3
];
...
...
@@ -143,6 +144,7 @@ public class SysUserBaseServiceImpl extends ServiceImpl<SysUserBaseMapper, SysUs
user
.
setStatus
(
Constant
.
BYTE_NO
);
user
.
setPasswd
(
ENCODER
.
encode
(
Constant
.
DEFAULT_PASSWORD
));
user
.
setPhone
(
xszyUserInfo
.
getMobile
());
user
.
setAppId
(
appId
);
this
.
save
(
user
);
}
...
...
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/controller/web/HpStatisticsController.java
0 → 100644
View file @
a9b851b0
package
cn
.
sh
.
stc
.
sict
.
theme
.
hphy
.
controller
.
web
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.json.JSONUtil
;
import
cn.sh.stc.sict.cloud.common.core.constant.enums.LoginTypeEnum
;
import
cn.sh.stc.sict.cloud.common.core.dto.WDUserCardInfo
;
import
cn.sh.stc.sict.cloud.common.core.dto.WDUserInfo
;
import
cn.sh.stc.sict.cloud.common.core.dto.XSZYUserInfo
;
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.cloud.common.core.util.SsbUtil
;
import
cn.sh.stc.sict.cloud.common.security.util.SecurityUtils
;
import
cn.sh.stc.sict.theme.hphy.constant.PatientConstant
;
import
cn.sh.stc.sict.theme.hphy.model.HphyPatientBase
;
import
cn.sh.stc.sict.theme.hphy.service.HpStatisticsService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
/**
* 黄埔医导统计
*
* @author gao
* @date 2023/01/06 10:43
*/
@Api
(
value
=
"[黄浦]统计使用情况"
,
tags
=
"[黄浦]统计使用情况"
)
@RestController
@RequestMapping
(
"hpStatistics"
)
@AllArgsConstructor
@Slf4j
public
class
HpStatisticsController
{
private
final
HpStatisticsService
hpStatisticsService
;
@ApiOperation
(
"统计用户使用情况"
)
@GetMapping
(
"/usage-overview"
)
public
R
statisticsUsage
(
@RequestParam
(
"startTime"
)
String
startTime
,
@RequestParam
(
"endTime"
)
String
endTime
)
{
log
.
error
(
"统计用户使用情况:startTime = {}, token = {}"
,
startTime
,
endTime
);
return
new
R
(
hpStatisticsService
.
getUsageOverviewStatistics
(
startTime
,
endTime
));
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/dao/HpStatisticsMapper.java
0 → 100644
View file @
a9b851b0
package
cn
.
sh
.
stc
.
sict
.
theme
.
hphy
.
dao
;
import
cn.sh.stc.sict.theme.hphy.vo.StatisticsUsageVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @author gao
* @date 2023/01/06 11:09
*/
@Mapper
public
interface
HpStatisticsMapper
{
/**
* 按时间统计各医院预约人数
*
* @param startTime 开始时间
* @param endTime 结束时间
* @return
*/
List
<
StatisticsUsageVO
.
HosUsageStatistics
>
queryAppointmentUserGroupByHos
(
@Param
(
"startTime"
)
String
startTime
,
@Param
(
"endTime"
)
String
endTime
);
/**
* 统计新增用户
*
* @param startTime
* @param endTime
* @return
*/
Long
countNewUser
(
@Param
(
"startTime"
)
String
startTime
,
@Param
(
"endTime"
)
String
endTime
);
/**
* 统计登录用户
*
* @param startTime
* @param endTime
* @return
*/
Long
countLoginUser
(
@Param
(
"startTime"
)
String
startTime
,
@Param
(
"endTime"
)
String
endTime
);
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/service/HpStatisticsService.java
0 → 100644
View file @
a9b851b0
package
cn
.
sh
.
stc
.
sict
.
theme
.
hphy
.
service
;
import
cn.sh.stc.sict.theme.hphy.vo.StatisticsUsageVO
;
/**
* @author gao
* @date 2023/01/06 11:03
*/
public
interface
HpStatisticsService
{
/**
* 获取使用情况概览统计信息
*
* @param startTime 开始时间
* @param endTime 结束时间
* @return
*/
StatisticsUsageVO
getUsageOverviewStatistics
(
String
startTime
,
String
endTime
);
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/service/impl/HpStatisticsServiceImpl.java
0 → 100644
View file @
a9b851b0
package
cn
.
sh
.
stc
.
sict
.
theme
.
hphy
.
service
.
impl
;
import
cn.sh.stc.sict.theme.hphy.dao.HpAppointmentMapper
;
import
cn.sh.stc.sict.theme.hphy.dao.HpStatisticsMapper
;
import
cn.sh.stc.sict.theme.hphy.dao.HphyPatientBaseMapper
;
import
cn.sh.stc.sict.theme.hphy.model.HphyPatientBase
;
import
cn.sh.stc.sict.theme.hphy.service.HpStatisticsService
;
import
cn.sh.stc.sict.theme.hphy.vo.StatisticsUsageVO
;
import
lombok.AllArgsConstructor
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
java.util.List
;
/**
* 黄埔医导用户使用情况查询
*
* @author gao
* @date 2023/01/06 11:04
*/
@Service
(
"hpStatisticsService"
)
@AllArgsConstructor
public
class
HpStatisticsServiceImpl
implements
HpStatisticsService
{
@Autowired
private
final
HpStatisticsMapper
hpStatisticsMapper
;
@Autowired
private
final
HpAppointmentMapper
hpAppointmentMapper
;
/**
* 获取使用情况概览统计信息
*
* @param startTime 开始时间
* @param endTime 结束时间
* @return
*/
@Override
public
StatisticsUsageVO
getUsageOverviewStatistics
(
String
startTime
,
String
endTime
)
{
Long
loginUserCount
=
hpStatisticsMapper
.
countLoginUser
(
startTime
,
endTime
);
Long
newUserCount
=
hpStatisticsMapper
.
countNewUser
(
startTime
,
endTime
);
List
<
StatisticsUsageVO
.
HosUsageStatistics
>
hosUsageStatisticsList
=
hpStatisticsMapper
.
queryAppointmentUserGroupByHos
(
startTime
,
endTime
);
return
StatisticsUsageVO
.
builder
().
newUserCount
(
newUserCount
).
loginUserCount
(
loginUserCount
).
hosAppointmentStatistics
(
hosUsageStatisticsList
).
build
();
}
}
smart-health-modules/theme-schema/src/main/java/cn/sh/stc/sict/theme/hphy/vo/StatisticsUsageVO.java
0 → 100644
View file @
a9b851b0
package
cn
.
sh
.
stc
.
sict
.
theme
.
hphy
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.*
;
import
java.io.Serializable
;
import
java.util.List
;
/**
* 统计用户使用详情
*
* @author gao
* @date 2023/01/06 10:58
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
(
access
=
AccessLevel
.
PRIVATE
)
public
class
StatisticsUsageVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
279866011612238581L
;
@ApiModelProperty
(
value
=
"登录总人数"
)
private
Long
loginUserCount
;
@ApiModelProperty
(
value
=
"新增用户总人数"
)
private
Long
newUserCount
;
@ApiModelProperty
(
value
=
"医院预约人数"
)
private
List
<
HosUsageStatistics
>
hosAppointmentStatistics
;
@Data
public
static
class
HosUsageStatistics
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
1088663393589514198L
;
@ApiModelProperty
(
value
=
"医院编码"
)
private
String
hospitalCode
;
@ApiModelProperty
(
value
=
"医院名称"
)
private
String
hospitalName
;
@ApiModelProperty
(
value
=
"医院预约人数"
)
private
Long
appointmentUserCount
;
}
}
smart-health-modules/theme-schema/src/main/resources/mapper/hphy/HpStatisticsMapper.xml
0 → 100644
View file @
a9b851b0
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.sh.stc.sict.theme.hphy.dao.HpStatisticsMapper"
>
<resultMap
type=
"cn.sh.stc.sict.theme.hphy.vo.StatisticsUsageVO$HosUsageStatistics"
id=
"AppointmentHosCountMap"
>
<result
property=
"appointmentUserCount"
column=
"appointment_count"
jdbcType=
"INTEGER"
/>
<result
property=
"hospitalCode"
column=
"hos_org_code"
jdbcType=
"VARCHAR"
/>
<result
property=
"hospitalName"
column=
"hos_name"
jdbcType=
"VARCHAR"
/>
</resultMap>
<select
id=
"queryAppointmentUserGroupByHos"
resultMap=
"AppointmentHosCountMap"
>
SELECT
c.appointment_count,
c.hos_org_code,
h.hos_name
FROM (
SELECT count(1) AS appointment_count, hos_org_code
FROM `hp_appointment`
<where>
<if
test=
"startTime != null and startTime != '' "
>
AND create_time >= #{startTime}
</if>
<if
test=
"endTime != null and endTime != '' "
>
AND create_time
<
= #{endTime}
</if>
</where>
GROUP BY hos_org_code
) c
LEFT JOIN hp_hos_info h ON c.hos_org_code = h.hos_org_code
</select>
<select
id=
"countNewUser"
resultType=
"java.lang.Long"
>
SELECT count(1)
FROM hp_user_base
<where>
<if
test=
"startTime != null and startTime != '' "
>
AND create_time >= #{startTime}
</if>
<if
test=
"endTime != null and endTime != '' "
>
AND create_time
<
= #{endTime}
</if>
</where>
</select>
<select
id=
"countLoginUser"
resultType=
"java.lang.Long"
>
SELECT
count( DISTINCT create_by )
FROM
`sys_log`
<where>
<if
test=
"startTime != null and startTime != '' "
>
AND create_time >= #{startTime}
</if>
<if
test=
"endTime != null and endTime != '' "
>
AND create_time
<
= #{endTime}
</if>
AND `title` LIKE '%用户登录%'
AND `exception` = ''
</where>
</select>
</mapper>
\ No newline at end of file
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