修改新疆大屏及小助手专家咨询量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
AND status = 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=")">
#{id}
</foreach>
@@ -369,10 +369,13 @@ public class ConHelperServiceImpl extends ServiceImpl<ConHelperMapper, ConHelper
conHelperDoctorVO.setStatus(it.getDoctorStatus());
conHelperDoctorVO.setTimes("0");
if (CollectionUtils.isNotEmpty(conSessions)) {
List<ConSession> collect = conSessions.stream().filter(i -> i.getToAccount().equals(it.getId())).filter(Objects::nonNull).distinct().collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(collect)) {
conHelperDoctorVO.setTimes(String.valueOf(collect.size()));
int times = 0;
for (ConSession conSession : conSessions) {
if (conSession.getToAccount().equals(it.getId())) {
times++;
}
}
conHelperDoctorVO.setTimes(String.valueOf(times));
}
conHelperDoctorVOList.add(conHelperDoctorVO);
});
@@ -4,6 +4,7 @@ import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
@@ -21,7 +22,13 @@ public class HealthRoomDTO {
* 检查类型 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;
/**
* 单位名称
*/
@Schema(title = "单位名称")
private String departName;
/**
* 员工姓名
*/
@@ -41,6 +41,12 @@ public class HealthBloodSugarVO {
*/
@Schema(title = "血糖是否异常 1:是/0:否")
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 lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
@Data
public class HealthRoomVO {
@@ -24,6 +25,7 @@ public class HealthRoomVO {
* 检查类型 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;
/**
* 去年体检值 前一年的体检值(初始值)
@@ -124,7 +124,7 @@ public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, Large
for (int i = 0; i < 10; i++) {
HealthRoomVO roomVO = new HealthRoomVO();
roomVO.setName("小屋");
roomVO.setDepartName("新疆大厂"+i);
roomVO.setDepartName("新疆大厂");
roomVO.setCheckInDate(DateUtil.today());
Random random = new Random();
@@ -200,6 +200,7 @@ public class LargeScreenServiceImpl extends ServiceImpl<LargeScreenMapper, Large
bloodSugarVO.setBmiFlag("0");
bloodSugarVO.setInputDate(new Date());
bloodSugarVO.setBsVal("100");
bloodSugarVO.setWaist("88");
Random random = new Random();
bloodSugarVO.setSex(random.nextInt(2) + 1);
bloodSugarVO.setAge(random.nextInt(65 - 18 + 1) + 18);
@@ -5,6 +5,7 @@ import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import java.util.List;
/**
* @author Junqiang Zhu
@@ -34,4 +35,6 @@ public class AbnormalEventFilter {
private Date warnTimeEnd;
private String errorType;
private String orgCodes;
}
@@ -103,6 +103,23 @@ public class WatchMonitorDataController extends JeecgController<WatchMonitorData
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 接口,不同之处是返回的信息按人员去重,取每人最新一次有定位的告警数据
* @param filter
@@ -23,6 +23,8 @@ public interface IWatchMonitorDataService extends IService<WatchMonitorData> {
IPage<AbnormalEvent> pageCustom(int pageNo, int pageSize, AbnormalEventFilter filter);
IPage<AbnormalEvent> largeScreenListCustom(int pageNo, int pageSize, AbnormalEventFilter filter);
/**
* 健康终端报警列表
* @return
@@ -585,6 +585,28 @@ public class WatchMonitorDataServiceImpl extends ServiceImpl<WatchMonitorDataMap
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) {
if (StrUtil.isBlank(secondDepartCode) && StrUtil.isBlank(departCode)) {
return null;