From 1468abbfadd8ba623c85e0c871aade69607ce085 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 25 二月 2025 14:24:54 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 94 +++++++++++++++++++++++++++++------------------
1 files changed, 58 insertions(+), 36 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index 32b93ec..d22dc99 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -66,6 +66,9 @@
private IServiceTaskdeptService serviceTaskdeptService;
@Autowired
+ private IServiceTaskdiagService serviceTaskdiagService;
+
+ @Autowired
private RedisCache redisCache;
@Autowired
@@ -199,7 +202,7 @@
patTaskRelevance.setPhone(serviceSubtask1.getPhone());
patTaskRelevance.setTelcode(serviceSubtask1.getPhone());
patTaskRelevance.setAddr(serviceSubtask1.getAddr());
- patTaskRelevance.setDiagname(serviceSubtask1.getDiagname());
+ patTaskRelevance.setDiagname(serviceSubtask1.getLeavediagname());
patTaskRelevance.setPatid(serviceSubtask1.getPatid());
patTaskRelevance.setSendStatus(serviceSubtask1.getSendstate());
patTaskRelevance.setDeptCode(serviceSubtask1.getDeptcode());
@@ -226,7 +229,7 @@
patTaskRelevance.setDeptName(serviceSubtask1.getDeptname());
patTaskRelevance.setDeptCode(serviceSubtask1.getDeptcode());
patTaskRelevance.setBedNo(serviceSubtask1.getBedNo());
- patTaskRelevance.setDiagname(serviceSubtask1.getDiagname());
+ patTaskRelevance.setDiagname(serviceSubtask1.getLeavediagname());
patTaskRelevance.setPatid(serviceSubtask1.getPatid());
patTaskRelevance.setSendStatus(serviceSubtask1.getSendstate());
patTaskRelevance.setLeavehospitaldistrictcode(serviceSubtask1.getLeavehospitaldistrictcode());
@@ -251,8 +254,8 @@
public List<ServiceSubtask> patItem(ServiceSubtaskVO serviceSubtaskVO) {
List<ServiceSubtask> selectServiceSubtaskList = this.selectServiceSubtaskList(serviceSubtaskVO);
//鏍规嵁鍑洪櫌 鏃堕棿鍊掑簭
-// List<ServiceSubtask> sortedServiceSubtaskList = selectServiceSubtaskList.stream().sorted(Comparator.comparing(ServiceSubtask::getEndtime).reversed()).collect(Collectors.toList());
- return selectServiceSubtaskList;
+ List<ServiceSubtask> sortedServiceSubtaskList = selectServiceSubtaskList.stream().sorted(Comparator.comparing(ServiceSubtask::getEndtime, Comparator.nullsLast(Comparator.naturalOrder())).reversed()).collect(Collectors.toList());
+ return sortedServiceSubtaskList;
}
@Override
@@ -377,39 +380,55 @@
serviceTask.setTemplatename(tempName);
serviceTask.setLeaveldeptcodes(serviceTaskVO.getLeaveldeptcodes());
serviceTask.setLeavehospitaldistrictcode(serviceTask.getLeavehospitaldistrictcode());
- if (serviceTaskVO.getLongTask() == 1L) serviceTask.setSendState(2L);
- serviceTaskService.insertServiceTask(serviceTask);
- ServiceTaskdept serviceTaskdept = new ServiceTaskdept();
- serviceTaskdept.setTaskId(serviceTask.getTaskid());
- serviceTaskdept.setTaskName(serviceTask.getTaskName());
- serviceTaskdept.setLongtask(0L);
- serviceTaskdept.setGuid(serviceTask.getGuid());
- serviceTaskdept.setOrgid(serviceTask.getOrgid());
- serviceTaskdept.setOrgid(serviceTask.getOrgid());
- if (serviceTaskVO.getLongTask() == 1) serviceTaskdept.setLongtask(1L);
- if (StringUtils.isNotEmpty(serviceTaskVO.getDeptcode())) {
- String[] deptcodes = serviceTaskVO.getDeptcode().split(",");
- for (String deptCode : deptcodes) {
- serviceTaskdept.setDeptCode(deptCode);
- serviceTaskdept.setDeptType("1");
- serviceTaskdept.setServiceType(serviceTaskVO.getServiceType());
- serviceTaskdeptService.insertServiceTaskdept(serviceTaskdept);
+ if (serviceTaskVO.getLongTask() == 1L) {
+ serviceTask.setSendState(2L);
+ serviceTaskService.insertServiceTask(serviceTask);
+ if (StringUtils.isEmpty(serviceTaskVO.getIcd10code())) {
+ ServiceTaskdept serviceTaskdept = new ServiceTaskdept();
+ serviceTaskdept.setTaskId(serviceTask.getTaskid());
+ serviceTaskdept.setTaskName(serviceTask.getTaskName());
+ serviceTaskdept.setLongtask(1L);
+ serviceTaskdept.setGuid(serviceTask.getGuid());
+ serviceTaskdept.setOrgid(serviceTask.getOrgid());
+ serviceTaskdept.setOrgid(serviceTask.getOrgid());
+ if (serviceTaskVO.getLongTask() == 1) serviceTaskdept.setLongtask(1L);
+ if (StringUtils.isNotEmpty(serviceTaskVO.getDeptcode())) {
+ String[] deptcodes = serviceTaskVO.getDeptcode().split(",");
+ for (String deptCode : deptcodes) {
+ serviceTaskdept.setDeptCode(deptCode);
+ serviceTaskdept.setDeptType("1");
+ serviceTaskdept.setServiceType(serviceTaskVO.getServiceType());
+ serviceTaskdeptService.insertServiceTaskdept(serviceTaskdept);
+ }
+ }
+ if (StringUtils.isNotEmpty(serviceTaskVO.getLeavehospitaldistrictcode())) {
+ String[] leavehospitaldistrictcodes = serviceTaskVO.getLeavehospitaldistrictcode().split(",");
+ for (String districtcode : leavehospitaldistrictcodes) {
+ serviceTaskdept.setDeptCode(districtcode);
+ serviceTaskdept.setDeptType("2");
+ serviceTaskdept.setServiceType(serviceTaskVO.getServiceType());
+ serviceTaskdeptService.insertServiceTaskdept(serviceTaskdept);
+ }
+ }
+
+ } else {
+ ServiceTaskdiag serviceTaskdiag = new ServiceTaskdiag();
+ serviceTaskdiag.setTaskId(serviceTask.getTaskid());
+ serviceTaskdiag.setTaskName(serviceTask.getTaskName());
+ serviceTaskdiag.setLongtask(1L);
+ serviceTaskdiag.setGuid(serviceTask.getGuid());
+ serviceTaskdiag.setOrgid(serviceTask.getOrgid());
+ if (serviceTaskVO.getLongTask() == 1) serviceTaskdiag.setLongtask(1L);
+ serviceTaskdiagService.insertServiceTaskdiag(serviceTaskdiag);
+
}
- }
- if (StringUtils.isNotEmpty(serviceTaskVO.getLeavehospitaldistrictcode())) {
- String[] leavehospitaldistrictcodes = serviceTaskVO.getLeavehospitaldistrictcode().split(",");
- for (String districtcode : leavehospitaldistrictcodes) {
- serviceTaskdept.setDeptCode(districtcode);
- serviceTaskdept.setDeptType("2");
- serviceTaskdept.setServiceType(serviceTaskVO.getServiceType());
- serviceTaskdeptService.insertServiceTaskdept(serviceTaskdept);
+ if (serviceTaskVO.getLongTask() != null && serviceTaskVO.getLongTask() == 1 && serviceTaskVO.getPatCycle() == 0L) {
+ Map<String, Integer> map = new HashMap<>();
+ map.put("taskId", serviceTask.getTaskid().intValue());
+ return map;
}
- }
-//
- if (serviceTaskVO.getLongTask() != null && serviceTaskVO.getLongTask() == 1 && serviceTaskVO.getPatCycle() == 0L) {
- Map<String, Integer> map = new HashMap<>();
- map.put("taskId", serviceTask.getTaskid().intValue());
- return map;
+ } else {
+ serviceTaskService.insertServiceTask(serviceTask);
}
//灏嗕换鍔′俊鎭斁鍒版湇鍔¤〃涓�
@@ -1858,6 +1877,7 @@
//鏃犱汉鎺ュ惉
getSmsCompensate(Long.valueOf(phoneCallRecordVO.getTaskid()));
redisCache.deleteObject(phoneCallRecordVO.getTaskid() + "recordAccept-hungup");
+ redisCache.removeElementFromList("cache-exist", phoneCallRecordVO.getTaskid());
} else if (ObjectUtils.isNotEmpty(cacheObject) && String.valueOf(cacheObject).equals("2")) {
// if (phoneCallRecordVO.getAnswered() != null && phoneCallRecordVO.getAnswered() == true) {
log.error("鏈変汉鎺ョ數璇濅簡锛屽苟涓斿畬浜�");
@@ -1875,6 +1895,8 @@
redisCache.deleteObject(phoneCallRecordVO.getTaskid() + "recordAccept-hungup");
} else {
//鎮h�呮嫆缁濋殢璁�
+ //鍏堟妸璇ubId浠巆ache_exist涓墧闄わ紝鍙鏈夊洖璋冨氨鍓旈櫎锛堢洰鐨勬槸锛屽敖蹇cache-exist涓虹┖锛屽幓缂撳瓨涓嬩竴鎵硅鎵撶殑鐢佃瘽;杩欓噷鍓旈櫎涓嶅奖鍝嶇數璇濈殑姝e父涓氬姟锛�
+ redisCache.removeElementFromList("cache-exist", phoneCallRecordVO.getTaskid());
ServiceSubtask serviceSubtask = new ServiceSubtask();
serviceSubtask.setRemark("鐢佃瘽鎺ラ�氭垚鍔燂紝鎮h�呮嫆缁濋殢璁�");
serviceSubtask.setId(Long.valueOf(phoneCallRecordVO.getTaskid()));
@@ -1933,7 +1955,7 @@
public List<ServiceSubtaskStatistic> getSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq) {
log.error("getSfStatistics鐨勫叆鍙備负锛歿}", serviceSubtaskCountReq);
List<ServiceSubtaskStatistic> serviceSubtaskStatistics = new ArrayList<>();
- Map<String, List<ServiceSubtask>> collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(ServiceSubtask::getLeavehospitaldistrictname));
+ Map<String, List<ServiceSubtask>> collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeavehospitaldistrictname()).orElse("Unknown")));
for (List<ServiceSubtask> serviceSubtaskList : collect.values()) {
if (CollectionUtils.isEmpty(serviceSubtaskList)) {
continue;
--
Gitblit v1.9.3