修改新疆大屏及小助手专家咨询量bug

This commit is contained in:
wanghao
2025-07-09 13:47:44 +08:00
parent 19addb4469
commit ec897c0567
10 changed files with 69 additions and 5 deletions
@@ -537,7 +537,8 @@
WHERE del_flag = 0 WHERE del_flag = 0
AND status = 1 AND status = 1
AND tf_reply = 1 AND tf_reply = 1
AND from_account IN AND session_type = 1
AND to_account IN
<foreach item="id" collection="doctorIds" open="(" separator="," close=")"> <foreach item="id" collection="doctorIds" open="(" separator="," close=")">
#{id} #{id}
</foreach> </foreach>
@@ -369,10 +369,13 @@ public class ConHelperServiceImpl extends ServiceImpl<ConHelperMapper, ConHelper
conHelperDoctorVO.setStatus(it.getDoctorStatus()); conHelperDoctorVO.setStatus(it.getDoctorStatus());
conHelperDoctorVO.setTimes("0"); conHelperDoctorVO.setTimes("0");
if (CollectionUtils.isNotEmpty(conSessions)) { if (CollectionUtils.isNotEmpty(conSessions)) {
List<ConSession> collect = conSessions.stream().filter(i -> i.getToAccount().equals(it.getId())).filter(Objects::nonNull).distinct().collect(Collectors.toList()); int times = 0;
if (CollectionUtils.isNotEmpty(collect)) { for (ConSession conSession : conSessions) {
conHelperDoctorVO.setTimes(String.valueOf(collect.size())); if (conSession.getToAccount().equals(it.getId())) {
times++;
}
} }
conHelperDoctorVO.setTimes(String.valueOf(times));
} }
conHelperDoctorVOList.add(conHelperDoctorVO); conHelperDoctorVOList.add(conHelperDoctorVO);
}); });
@@ -4,6 +4,7 @@ import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
@@ -21,7 +22,13 @@ public class HealthRoomDTO {
* 检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加 * 检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加
*/ */
@Schema(title = "检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加") @Schema(title = "检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加")
@Dict(dicCode = "xj_check_type")
private String checkType; private String checkType;
/**
* 单位名称
*/
@Schema(title = "单位名称")
private String departName;
/** /**
* 员工姓名 * 员工姓名
*/ */
@@ -41,6 +41,12 @@ public class HealthBloodSugarVO {
*/ */
@Schema(title = "血糖是否异常 1:是/0:否") @Schema(title = "血糖是否异常 1:是/0:否")
private String bmiFlag; private String bmiFlag;
/**
* 腰围(CM
*/
@Schema(title = "腰围(CM")
private String waist;
/** /**
* 填报时间 * 填报时间
*/ */
@@ -2,6 +2,7 @@ package com.renkang.emergency.largeScreen.entity.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
@Data @Data
public class HealthRoomVO { public class HealthRoomVO {
@@ -24,6 +25,7 @@ public class HealthRoomVO {
* 检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加 * 检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加
*/ */
@Schema(title = "检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加") @Schema(title = "检查类型 11:BMI/21:收缩压/22:舒张压/31:血糖/41:低密度脂蛋白/42:总胆固醇/43:甘油三酯/51:尿酸/61:同型半胱氨酸 等等,缺失的可以继续加")
@Dict(dicCode = "xj_check_type")
private String checkType; private String checkType;
/** /**
* 去年体检值 前一年的体检值(初始值) * 去年体检值 前一年的体检值(初始值)
@@ -124,7 +124,7 @@ public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, Large
for (int i = 0; i < 10; i++) { for (int i = 0; i < 10; i++) {
HealthRoomVO roomVO = new HealthRoomVO(); HealthRoomVO roomVO = new HealthRoomVO();
roomVO.setName("小屋"); roomVO.setName("小屋");
roomVO.setDepartName("新疆大厂"+i); roomVO.setDepartName("新疆大厂");
roomVO.setCheckInDate(DateUtil.today()); roomVO.setCheckInDate(DateUtil.today());
Random random = new Random(); Random random = new Random();
@@ -200,6 +200,7 @@ public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, Large
bloodSugarVO.setBmiFlag("0"); bloodSugarVO.setBmiFlag("0");
bloodSugarVO.setInputDate(new Date()); bloodSugarVO.setInputDate(new Date());
bloodSugarVO.setBsVal("100"); bloodSugarVO.setBsVal("100");
bloodSugarVO.setWaist("88");
Random random = new Random(); Random random = new Random();
bloodSugarVO.setSex(random.nextInt(2) + 1); bloodSugarVO.setSex(random.nextInt(2) + 1);
bloodSugarVO.setAge(random.nextInt(65 - 18 + 1) + 18); bloodSugarVO.setAge(random.nextInt(65 - 18 + 1) + 18);
@@ -5,6 +5,7 @@ import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* @author Junqiang Zhu * @author Junqiang Zhu
@@ -34,4 +35,6 @@ public class AbnormalEventFilter {
private Date warnTimeEnd; private Date warnTimeEnd;
private String errorType; private String errorType;
private String orgCodes;
} }
@@ -103,6 +103,23 @@ public class WatchMonitorDataController extends JeecgController<WatchMonitorData
return Result.OK(pageList); return Result.OK(pageList);
} }
/**
* 自定义异常数据列表 - 大屏用
*
* @param filter 筛选条件
* @param pageNo 页码
* @param pageSize 条数
* @return pageData
*/
@GetMapping(value = "/largeScreen/listCustom")
@PermissionData(pageComponent = "healthMonitor/healMonitorManage/monitorToll/abnormalEvents/abnormalEventsList")
public Result<IPage<AbnormalEvent>> largeScreenListCustom(AbnormalEventFilter filter,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
IPage<AbnormalEvent> pageList = watchMonitorDataService.largeScreenListCustom(pageNo, pageSize, filter);
return Result.OK(pageList);
}
/** /**
* 蚁熊新血管监测大屏 预警人员数据 查询条件同同类中 /listCustom 接口,不同之处是返回的信息按人员去重,取每人最新一次有定位的告警数据 * 蚁熊新血管监测大屏 预警人员数据 查询条件同同类中 /listCustom 接口,不同之处是返回的信息按人员去重,取每人最新一次有定位的告警数据
* @param filter * @param filter
@@ -23,6 +23,8 @@ public interface IWatchMonitorDataService extends IService<WatchMonitorData> {
IPage<AbnormalEvent> pageCustom(int pageNo, int pageSize, AbnormalEventFilter filter); IPage<AbnormalEvent> pageCustom(int pageNo, int pageSize, AbnormalEventFilter filter);
IPage<AbnormalEvent> largeScreenListCustom(int pageNo, int pageSize, AbnormalEventFilter filter);
/** /**
* 健康终端报警列表 * 健康终端报警列表
* @return * @return
@@ -585,6 +585,28 @@ public class WatchMonitorDataServiceImpl extends ServiceImpl<WatchMonitorDataMap
return resultPage; return resultPage;
} }
@Override
public IPage<AbnormalEvent> largeScreenListCustom(int pageNo, int pageSize, AbnormalEventFilter filter) {
// 大屏辐射单位
if (ObjUtil.isEmpty(filter.getOrgCodes())){
return new Page<>();
}
List<String> orgCodeList = Arrays.stream(filter.getOrgCodes().split(","))
.map(String::trim)
.collect(Collectors.toList());
if (CollUtil.isEmpty(orgCodeList)) {
return new Page<>();
}
// 条件
LambdaQueryWrapper<WatchMonitorData> queryWrapper = getQueryWrapper(filter, orgCodeList);
// 数据
Page<WatchMonitorData> page = page(new Page<>(pageNo, pageSize), queryWrapper);
IPage<AbnormalEvent> resultPage = new Page<>();
GlobalUtils.copyPageDataToTarget(page, resultPage);
resultPage.setRecords(handleData(page.getRecords()));
return resultPage;
}
private String getOrgCode(String secondDepartCode, String departCode) { private String getOrgCode(String secondDepartCode, String departCode) {
if (StrUtil.isBlank(secondDepartCode) && StrUtil.isBlank(departCode)) { if (StrUtil.isBlank(secondDepartCode) && StrUtil.isBlank(departCode)) {
return null; return null;