From 55d724ddd52b2acb6e7ee2d291e04e4b6d96ad19 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期一, 09 十一月 2026 16:06:47 +0800
Subject: [PATCH] sync: service_subtask 科室病区字段重命名对齐
---
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 99 ++++++++++++++++++++++++++++---------------------
1 files changed, 56 insertions(+), 43 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 21f048f..1224356 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -348,8 +348,8 @@
patTaskRelevance.setDiagname(serviceSubtask1.getLeavediagname());
patTaskRelevance.setPatid(serviceSubtask1.getPatid());
patTaskRelevance.setSendStatus(serviceSubtask1.getSendstate());
- patTaskRelevance.setDeptcode(serviceSubtask1.getDeptcode());
- patTaskRelevance.setDeptName(serviceSubtask1.getDeptname());
+ patTaskRelevance.setDeptcode(serviceSubtask1.getLeaveldeptcode());
+ patTaskRelevance.setDeptName(serviceSubtask1.getLeaveldeptname());
patTaskRelevance.setLeavehospitaldistrictcode(serviceSubtask1.getLeavehospitaldistrictcode());
patTaskRelevance.setLeavehospitaldistrictname(serviceSubtask1.getLeavehospitaldistrictname());
patTaskRelevance.setInhosptime(serviceSubtask1.getInhosptime());
@@ -369,8 +369,8 @@
patTaskRelevance.setTelcode(serviceSubtask1.getPhone());
patTaskRelevance.setFinishtime(serviceSubtask1.getFinishtime());
patTaskRelevance.setAddr(serviceSubtask1.getAddr());
- patTaskRelevance.setDeptName(serviceSubtask1.getDeptname());
- patTaskRelevance.setDeptcode(serviceSubtask1.getDeptcode());
+ patTaskRelevance.setDeptName(serviceSubtask1.getLeaveldeptname());
+ patTaskRelevance.setDeptcode(serviceSubtask1.getLeaveldeptcode());
patTaskRelevance.setBedNo(serviceSubtask1.getBedNo());
patTaskRelevance.setDiagname(serviceSubtask1.getLeavediagname());
patTaskRelevance.setPatid(serviceSubtask1.getPatid());
@@ -924,8 +924,8 @@
visitDeptCode = requestDeptCode;
visitDeptName = requestDeptName;
} else {
- visitDeptCode = serviceSubtask.getDeptcode();
- visitDeptName = serviceSubtask.getDeptname();
+ visitDeptCode = serviceSubtask.getLeaveldeptcode();
+ visitDeptName = serviceSubtask.getLeaveldeptname();
}
if (StringUtils.isEmpty(visitDeptCode)) {
log.error("鍐嶆闅忚浠诲姟鍒涘缓澶辫触锛屾湰绉戝闅忚鏈壘鍒伴殢璁跨瀹�, subTaskId = {}", serviceSubtask.getId());
@@ -970,6 +970,18 @@
return "鍐嶆闅忚浠诲姟鍒涘缓澶辫触锛屾偅鑰呭嚭闄㈣褰曚笉瀹屾暣鎴栦笅涓�浠诲姟閰嶇疆寮傚父, 鍐嶈娆¢噸璇�";
}
Date now = new Date();
+ applyAgainVisitTime(serviceSubtaskAgain, serviceSubtask, nextServiceTask, config, now);
+ // 鍖荤敓澶勭悊鎰忚鍙栬嚜鏈璇锋眰锛屾寜涓嬩竴浠诲姟閲嶅缓瀛愪换鍔℃椂闇�鏄惧紡甯﹀叆锛屽惁鍒欎笉浼氳惤搴�
+ if (request != null) {
+ serviceSubtaskAgain.setDoctorOpinion(request.getDoctorOpinion());
+ serviceSubtaskAgain.setRemark(request.getRemark());
+ serviceSubtaskAgain.setDrcode(request.getDrcode());
+ serviceSubtaskAgain.setDrname(request.getDrname());
+ serviceSubtaskAgain.setNurseId(request.getNurseId());
+ serviceSubtaskAgain.setNurseName(request.getNurseName());
+ serviceSubtaskAgain.setManagementDoctor(request.getManagementDoctor());
+ serviceSubtaskAgain.setManagementDoctorCode(request.getManagementDoctorCode());
+ }
serviceSubtaskAgain.setId(null);
serviceSubtaskAgain.setUpid(serviceSubtask.getId().intValue());
serviceSubtaskAgain.setVisitCount(ObjectUtils.isNotEmpty(serviceSubtask.getVisitCount())
@@ -978,9 +990,6 @@
serviceSubtaskAgain.setIsVisitAgain(1);
serviceSubtaskAgain.setCreateTime(now);
serviceSubtaskAgain.setUpdateTime(now);
-
- // 浜屾闅忚鏃堕棿锛氫笂娆¢殢璁垮畬鎴愭椂闂达紙鏈畬鎴愬垯褰撳墠鏃堕棿锛�+ 涓嬩竴浠诲姟鍙戦�佸ぉ鏁帮紱杩囧幓鏃堕棿鍏滃簳涓哄綋鍓嶆椂闂�
- applyAgainVisitTime(serviceSubtaskAgain, serviceSubtask, nextServiceTask, config, now);
// 鏂颁换鍔$殑闅忚鏂瑰紡璁板綍鏈閫夋嫨鐨勫啀娆¢殢璁挎柟寮忥紱resource 鏈韩涓嶈惤搴�
serviceSubtaskAgain.setVisitType(resource);
serviceSubtaskAgain.setVisitDeptCode(visitDeptCode);
@@ -1058,6 +1067,10 @@
if (dueTime.before(now)) {
dueTime = now;
}
+ if(ObjectUtils.isNotEmpty(origin.getVisitTime())){
+ dueTime = ObjectUtils.isNotEmpty(origin.getVisitTime()) ? origin.getVisitTime() : now;
+ }
+
target.setLongSendTime(dueTime);
Date visitTime = dueTime;
if ("3".equals(nextTask.getType())) {
@@ -1151,8 +1164,8 @@
visitDeptCode = fallbackDeptCode;
visitDeptName = serviceSubtask.getVisitDeptName();
} else {
- visitDeptCode = serviceSubtask.getDeptcode();
- visitDeptName = serviceSubtask.getDeptname();
+ visitDeptCode = serviceSubtask.getLeaveldeptcode();
+ visitDeptName = serviceSubtask.getLeaveldeptname();
}
}
ServiceSubtask serviceSubtaskAgain = patMedInhospService.boxedServiceSubtask(nextServiceTask,
@@ -1576,11 +1589,11 @@
serviceSubtask.setSendstate(2L);
String subtaskDeptCode = patTaskRelevance.getDeptcode();
if (StringUtils.isEmpty(subtaskDeptCode) && StringUtils.isNotEmpty(serviceTaskVO.getDeptcode())) {
- // service_subtask.deptcode 涓哄崟鍊煎瓧娈碉紝涓嶈兘鍐欏叆浠诲姟鐨勫绉戝鎷兼帴涓诧紝鍙栫涓�涓瀹ゅ厹搴�
+ // service_subtask.leaveldeptcode 涓哄崟鍊煎瓧娈碉紝涓嶈兘鍐欏叆浠诲姟鐨勫绉戝鎷兼帴涓诧紝鍙栫涓�涓瀹ゅ厹搴�
subtaskDeptCode = serviceTaskVO.getDeptcode().split(",")[0].trim();
}
- serviceSubtask.setDeptcode(subtaskDeptCode);
- serviceSubtask.setDeptname(StringUtils.isNotEmpty(patTaskRelevance.getDeptName()) ? patTaskRelevance.getDeptName() : serviceTaskVO.getDeptname());
+ serviceSubtask.setLeaveldeptcode(subtaskDeptCode);
+ serviceSubtask.setLeaveldeptname(StringUtils.isNotEmpty(patTaskRelevance.getDeptName()) ? patTaskRelevance.getDeptName() : serviceTaskVO.getDeptname());
serviceSubtask.setLeavehospitaldistrictcode(patTaskRelevance.getLeavehospitaldistrictcode());
serviceSubtask.setLeavehospitaldistrictname(patTaskRelevance.getLeavehospitaldistrictname());
serviceSubtask.setType(serviceTaskVO.getType());
@@ -1952,10 +1965,10 @@
serviceSubtask.setAddr(patTaskRelevance.getAddr());
serviceSubtask.setPatid(patTaskRelevance.getPatid());
serviceSubtask.setOpenid(patTaskRelevance.getOpenid());
- serviceSubtask.setDeptcode(patTaskRelevance.getDeptcode());
+ serviceSubtask.setLeaveldeptcode(patTaskRelevance.getDeptcode());
serviceSubtask.setLeavehospitaldistrictname(patTaskRelevance.getLeavehospitaldistrictname());
serviceSubtask.setLeavehospitaldistrictcode(patTaskRelevance.getLeavehospitaldistrictcode());
- serviceSubtask.setDeptname(patTaskRelevance.getDeptName());
+ serviceSubtask.setLeaveldeptname(patTaskRelevance.getDeptName());
serviceSubtask.setType(serviceTaskVO.getType());
serviceSubtask.setCreateTime(DateUtils.getNowDate());
serviceSubtask.setDrname(patTaskRelevance.getDrname());
@@ -3450,7 +3463,7 @@
collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getManagementDoctorCode()).orElse("Unknown")));
break;
case "deptcode":
- collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDeptcode()).orElse("Unknown")));
+ collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeaveldeptcode()).orElse("Unknown")));
break;
case "leavehospitaldistrictcode":
collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeavehospitaldistrictcode()).orElse("Unknown")));
@@ -3609,7 +3622,7 @@
if (serviceSubtaskCountReq.getDrcode() != null && !serviceSubtaskCountReq.getDrcode().isEmpty()) {
collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDrname()).orElse("Unknown")));
} else {
- collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDeptname()).orElse("Unknown")));
+ collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeaveldeptname()).orElse("Unknown")));
}
}
List<ServiceSubtaskCount> joySubCount = serviceSubtaskMapper.getSfStatisticsJoy(serviceSubtaskCountReq);
@@ -3630,7 +3643,7 @@
if (CollectionUtils.isNotEmpty(serviceSubtaskCountReq.getLeavehospitaldistrictcodes())) {
ss.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
} else if (CollectionUtils.isNotEmpty(serviceSubtaskCountReq.getDeptcodes())) {
- ss.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
+ ss.setLeaveldeptcode(serviceSubtaskList.get(0).getLeaveldeptcode());
}
}
@@ -3790,8 +3803,8 @@
} else {
//鏍煎紡鍖栦负涓や綅灏忔暟鐨勭櫨鍒嗘瘮
DecimalFormat percentFormat = new DecimalFormat("##.##%");
- serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getDeptname());
- serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
+ serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getLeaveldeptname());
+ serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getLeaveldeptcode());
serviceSubtaskStatistic.setLeavehospitaldistrictname(serviceSubtaskList.get(0).getLeavehospitaldistrictname());
serviceSubtaskStatistic.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
serviceSubtaskStatistic.setDrcode(serviceSubtaskList.get(0).getDrcode());
@@ -4135,7 +4148,7 @@
}
/**
- * 鍐嶆闅忚闄勫姞缁熻锛氬緟闅忚銆佸凡鍙戦�併�佷汉宸ョ數璇濊秴鏃跺強鍥為櫌澶嶈瘖澶嶆煡锛坰uggest=6锛夈��
+ * 鍐嶆闅忚闄勫姞缁熻锛氬緟闅忚銆佸凡鍙戦�併�佷汉宸ョ數璇濊秴鏃跺強鍥為櫌澶嶈瘖澶嶆煡锛坰uggest=7锛夈��
*/
private void applyAgainFollowUpExtraStatistics(ServiceSubtaskStatistic statistic, ServiceSubtask serviceSubtask) {
if (serviceSubtask.getVisitCount() == null || serviceSubtask.getVisitCount() <= 1) {
@@ -4145,9 +4158,9 @@
return;
}
Long sendstate = serviceSubtask.getSendstate();
- // 鍥為櫌澶嶈瘖澶嶆煡锛氬啀娆¢殢璁夸腑鎸夊鐞嗘剰瑙� suggest=6 缁熻
- if (StringUtils.equals("6", StringUtils.trim(serviceSubtask.getSuggest()))) {
- statistic.setSuggest6CountAgain(statistic.getSuggest6CountAgain() + 1L);
+ // 鍥為櫌澶嶈瘖澶嶆煡锛氬啀娆¢殢璁夸腑鎸夊鐞嗘剰瑙� suggest=7 缁熻
+ if (StringUtils.equals("7", StringUtils.trim(serviceSubtask.getSuggest()))) {
+ statistic.setSuggest7CountAgain(statistic.getSuggest7CountAgain() + 1L);
}
if (sendstate.equals(3L)) {
statistic.setSentAgain(statistic.getSentAgain() + 1L);
@@ -4181,8 +4194,8 @@
ServiceSubtaskStatistic serviceSubtaskStatistic = new ServiceSubtaskStatistic();
//鏍煎紡鍖栦负涓や綅灏忔暟鐨勭櫨鍒嗘瘮
DecimalFormat percentFormat = new DecimalFormat("##.##%");
- serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getDeptname());
- serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
+ serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getLeaveldeptname());
+ serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getLeaveldeptcode());
serviceSubtaskStatistic.setLeavehospitaldistrictname(serviceSubtaskList.get(0).getLeavehospitaldistrictname());
serviceSubtaskStatistic.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
serviceSubtaskStatistic.setDrcode(serviceSubtaskList.get(0).getDrcode());
@@ -4356,8 +4369,8 @@
ServiceSubtaskStatistic serviceSubtaskStatistic = new ServiceSubtaskStatistic();
//鏍煎紡鍖栦负涓や綅灏忔暟鐨勭櫨鍒嗘瘮
DecimalFormat percentFormat = new DecimalFormat("##.##%");
- serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getDeptname());
- serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
+ serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getLeaveldeptname());
+ serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getLeaveldeptcode());
serviceSubtaskStatistic.setLeavehospitaldistrictname(serviceSubtaskList.get(0).getLeavehospitaldistrictname());
serviceSubtaskStatistic.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
serviceSubtaskStatistic.setDrcode(serviceSubtaskList.get(0).getDrcode());
@@ -4524,8 +4537,8 @@
ServiceSubtaskStatistic serviceSubtaskStatistic = new ServiceSubtaskStatistic();
//鏍煎紡鍖栦负涓や綅灏忔暟鐨勭櫨鍒嗘瘮
DecimalFormat percentFormat = new DecimalFormat("##.##%");
- serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getDeptname());
- serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
+ serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getLeaveldeptname());
+ serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getLeaveldeptcode());
serviceSubtaskStatistic.setLeavehospitaldistrictname(serviceSubtaskList.get(0).getLeavehospitaldistrictname());
serviceSubtaskStatistic.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
serviceSubtaskStatistic.setDrcode(serviceSubtaskList.get(0).getDrcode());
@@ -4629,8 +4642,8 @@
ServiceSubtaskStatistic serviceSubtaskStatistic = new ServiceSubtaskStatistic();
//鏍煎紡鍖栦负涓や綅灏忔暟鐨勭櫨鍒嗘瘮
DecimalFormat percentFormat = new DecimalFormat("##.##%");
- serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getDeptname());
- serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
+ serviceSubtaskStatistic.setDeptname(serviceSubtaskList.get(0).getLeaveldeptname());
+ serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getLeaveldeptcode());
serviceSubtaskStatistic.setLeavehospitaldistrictname(serviceSubtaskList.get(0).getLeavehospitaldistrictname());
serviceSubtaskStatistic.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
serviceSubtaskStatistic.setDrcode(serviceSubtaskList.get(0).getDrcode());
@@ -4954,7 +4967,7 @@
* pendingFollowUpSentAgainInfo - visitCount > 1 && sendstate in (3,7)
* sentInfo - visitCount = 1 && sendstate = 3
* sentAgainInfo - visitCount > 1 && sendstate = 3
- * suggest6CountAgainInfo - visitCount > 1 && suggest = 6
+ * suggest7CountAgainInfo - visitCount > 1 && suggest = 7
* filterCountList - taskSituation = 6 && sendstate = 4
*
*/
@@ -5139,10 +5152,10 @@
serviceSubtaskCountReq.setVisitCount(2);
serviceSubtaskCountReq.setExcep("1");
break;
- case "suggest6CountAgainInfo":
- // 鍐嶆闅忚鍥為櫌澶嶈瘖澶嶆煡锛歷isitCount > 1 涓� suggest = 6
+ case "suggest7CountAgainInfo":
+ // 鍐嶆闅忚鍥為櫌澶嶈瘖澶嶆煡锛歷isitCount > 1 涓� suggest = 7
serviceSubtaskCountReq.setVisitCount(2);
- serviceSubtaskCountReq.setSuggest("6");
+ serviceSubtaskCountReq.setSuggest("7");
break;
case "taskSituation1Info":
serviceSubtaskCountReq.setTaskSituation(1);
@@ -5255,7 +5268,7 @@
List<ServiceSubtask> rawData = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq);
switch (groupKey) {
case "deptcode":
- collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDeptcode()).orElse("Unknown")));
+ collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeaveldeptcode()).orElse("Unknown")));
break;
case "drcode":
collect = rawData.stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDrcode()).orElse("Unknown")));
@@ -5675,7 +5688,7 @@
total.setSentAgain(0L);
total.setFollowUpSuccessAgain(0L);
total.setFollowUpFailAgain(0L);
- total.setSuggest6CountAgain(0L);
+ total.setSuggest7CountAgain(0L);
total.setManualAgain(0L);
total.setSmsAgain(0L);
total.setWeChatAgain(0L);
@@ -5720,7 +5733,7 @@
total.setSentAgain(total.getSentAgain() + (stat.getSentAgain() != null ? stat.getSentAgain() : 0L));
total.setFollowUpSuccessAgain(total.getFollowUpSuccessAgain() + (stat.getFollowUpSuccessAgain() != null ? stat.getFollowUpSuccessAgain() : 0L));
total.setFollowUpFailAgain(total.getFollowUpFailAgain() + (stat.getFollowUpFailAgain() != null ? stat.getFollowUpFailAgain() : 0L));
- total.setSuggest6CountAgain(total.getSuggest6CountAgain() + (stat.getSuggest6CountAgain() != null ? stat.getSuggest6CountAgain() : 0L));
+ total.setSuggest7CountAgain(total.getSuggest7CountAgain() + (stat.getSuggest7CountAgain() != null ? stat.getSuggest7CountAgain() : 0L));
total.setManualAgain(total.getManualAgain() + (stat.getManualAgain() != null ? stat.getManualAgain() : 0L));
total.setSmsAgain(total.getSmsAgain() + (stat.getSmsAgain() != null ? stat.getSmsAgain() : 0L));
total.setWeChatAgain(total.getWeChatAgain() + (stat.getWeChatAgain() != null ? stat.getWeChatAgain() : 0L));
@@ -5782,7 +5795,7 @@
diagname.setPhone(subtask.getPhone());
diagname.setNurseName(subtask.getNurseName());
diagname.setDrname(subtask.getDrname());
- diagname.setDeptname(subtask.getDeptname());
+ diagname.setDeptname(subtask.getLeaveldeptname());
diagname.setLeavehospitaldistrictname(subtask.getLeavehospitaldistrictname());
diagname.setTemplatename(subtask.getTemplatename());
diagname.setPreachform(subtask.getPreachform());
@@ -6955,8 +6968,8 @@
// serviceSubtask.setDrcode(patMedInhosp1.getDrcode());
// serviceSubtask.setDrname(patMedInhosp1.getDrname());
if (StringUtils.isNotEmpty(serviceTaskdept.getDeptType()) && serviceTaskdept.getDeptType().equals("1")) {
- serviceSubtask.setDeptcode(serviceTaskdept.getDeptCode());
- serviceSubtask.setDeptname(serviceTaskdept.getDeptName());
+ serviceSubtask.setLeaveldeptcode(serviceTaskdept.getDeptCode());
+ serviceSubtask.setLeaveldeptname(serviceTaskdept.getDeptName());
} else {
serviceSubtask.setLeavehospitaldistrictcode(serviceTaskdept.getDeptCode());
serviceSubtask.setLeavehospitaldistrictname(serviceTaskdept.getDeptName());
--
Gitblit v1.9.3