From b73334e984e391cb2ea6b2651e77bf008e127459 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 05 六月 2026 00:49:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 84 ++++++++++++++++++++++++++++++++++--------
1 files changed, 68 insertions(+), 16 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 c6f675e..498598d 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -329,18 +329,41 @@
}
//鑾峰彇璇ユ偅鑰呮墍鏈夌殑鎵ц鐘舵��
- List<ServiceSubtaskPreachform> serviceSubtaskPreachformList = serviceSubtaskPreachformLists.stream().filter((item -> item.getSubid().equals(serviceSubtask1.getId()) && item.getTaskid().equals(serviceTask.getTaskid()))).collect(Collectors.toList());
- List<Map<String, Object>> resultList = serviceSubtaskPreachformList.stream().map(item -> {
- Map<String, Object> map = new HashMap<>();
- map.put("sort", item.getSort());
- map.put("preachform", item.getPreachform());
- map.put("compensateTime", item.getCompensateTime());
- return map;
- }).collect(Collectors.toList());
- serviceTaskVO.setPreachformList(resultList);
+// List<ServiceSubtaskPreachform> serviceSubtaskPreachformList = serviceSubtaskPreachformLists.stream().filter((item -> item.getSubid().equals(serviceSubtask1.getId()) && item.getTaskid().equals(serviceTask.getTaskid()))).collect(Collectors.toList());
+// List<Map<String, Object>> resultList = serviceSubtaskPreachformList.stream().map(item -> {
+// Map<String, Object> map = new HashMap<>();
+// map.put("sort", item.getSort());
+// map.put("preachform", item.getPreachform());
+// map.put("compensateTime", item.getCompensateTime());
+// return map;
+// }).collect(Collectors.toList());
+// serviceTaskVO.setPreachformList(resultList);
// String result = resultList.stream().map(mapList1 -> mapList1.get("preachform")).map(String::valueOf).collect(Collectors.joining(","));
// serviceTaskVO.setPreachform(result);
+ }
+
+ if(StringUtils.isNotEmpty(serviceTaskVO.getPreachformDesc())){
+ //鐩存帴閫氳繃PreachformDesc鐢熸垚List杩斿洖
+ try {
+ List<Map<String, Object>> mapList = objectMapper.readValue(serviceTaskVO.getPreachformDesc(), List.class);
+ serviceTaskVO.setPreachformList(mapList);
+ }catch (Exception e) {
+ }
+ }else {
+ if(CollectionUtils.isNotEmpty(list)){
+ //鑾峰彇璇ユ偅鑰呮墍鏈夌殑鎵ц鐘舵��
+ List<ServiceSubtaskPreachform> serviceSubtaskPreachformList = serviceSubtaskPreachformLists.stream()
+ .filter((item -> item.getSubid().equals(list.get(0).getId()) && item.getTaskid().equals(serviceTask.getTaskid()))).collect(Collectors.toList());
+ List<Map<String, Object>> resultList = serviceSubtaskPreachformList.stream().map(item -> {
+ Map<String, Object> map = new HashMap<>();
+ map.put("sort", item.getSort());
+ map.put("preachform", item.getPreachform());
+ map.put("compensateTime", item.getCompensateTime());
+ return map;
+ }).collect(Collectors.toList());
+ serviceTaskVO.setPreachformList(resultList);
+ }
}
serviceTaskVO.setPatTaskRelevances(patTaskRelevances);
return serviceTaskVO;
@@ -493,6 +516,7 @@
if (patMedInhospList.size() > 0) {
serviceSubtask1.setIsVisitAgain(2);
serviceSubtask1.setRemark(StringUtils.isNotEmpty(serviceSubtask.getRemark()) ? serviceSubtask.getRemark() + ";鎮h�呭啀鍏ラ櫌浜�" : "鎮h�呭啀鍏ラ櫌浜�");
+ serviceSubtask1.setSendstate(4L);
serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1);
return "鏃犻渶鍐嶆闅忚锛屾偅鑰呭啀鍏ラ櫌浜�";
} else if (serviceSubtask1.getSendstate() == 4L) {
@@ -754,8 +778,8 @@
serviceSubtask.setInhospid(patTaskRelevance.getHospid());
//鏂板缓瀹屾垚灏辨槸寰呭彂閫佺姸鎬�
serviceSubtask.setSendstate(2L);
- serviceSubtask.setDeptcode(patTaskRelevance.getDeptcode());
- serviceSubtask.setDeptname(patTaskRelevance.getDeptName());
+ serviceSubtask.setDeptcode(StringUtils.isNotEmpty(patTaskRelevance.getDeptcode())?patTaskRelevance.getDeptcode():serviceTaskVO.getDeptcode());
+ serviceSubtask.setDeptname(StringUtils.isNotEmpty(patTaskRelevance.getDeptName())?patTaskRelevance.getDeptName():serviceTaskVO.getDeptname());
serviceSubtask.setLeavehospitaldistrictcode(patTaskRelevance.getLeavehospitaldistrictcode());
serviceSubtask.setLeavehospitaldistrictname(patTaskRelevance.getLeavehospitaldistrictname());
serviceSubtask.setType(serviceTaskVO.getType());
@@ -776,9 +800,13 @@
serviceSubtask.setContinueTimeNow(patTaskRelevance.getContinueTimeNow());
serviceSubtask.setCreateBy(serviceTask.getCreateBy());
serviceSubtask.setUpdateBy(serviceTask.getCreateBy());
- serviceSubtask.setVisitTime(patTaskRelevance.getVisittime());
- if (serviceTaskVO.getLongTask() != null && serviceTaskVO.getLongTask() == 1)
+ serviceSubtask.setVisitTime(DateUtils.parseDate(serviceTaskVO.getShowTimeMorn()));
+ //濡傛灉绔嬪嵆鎵ц锛屾椂闂村氨鏄綋鍓嶆椂闂�
+ if(serviceTaskVO.getSendType()!=null&&serviceTaskVO.getSendType()==2) serviceSubtask.setVisitTime(new Date());
+ if (serviceTaskVO.getLongTask() != null && serviceTaskVO.getLongTask() == 1) {
serviceSubtask.setLongSendTime(patTaskRelevance.getLongSendTime());
+ serviceSubtask.setVisitTime(patTaskRelevance.getVisittime());
+ }
serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
serviceSubtask.getId().intValue();
@@ -929,8 +957,10 @@
if (StringUtils.isNotEmpty(serviceTaskVO.getIcd10code())) {
String[] icd10codes = serviceTaskVO.getIcd10code().split(",");
String[] icd10names = serviceTaskVO.getIcd10name().split(",");
- if (icd10codes.length != icd10names.length) {
- throw new BaseException("鐤剧梾缂栫爜鍜岀柧鐥呭悕绉版暟閲忎笉涓�鑷�");
+ if(!active.equals("nhfy")&&!active.equals("druid")){
+ if (icd10codes.length != icd10names.length) {
+ throw new BaseException("鐤剧梾缂栫爜鍜岀柧鐥呭悕绉版暟閲忎笉涓�鑷�");
+ }
}
for (int i = 0; i < icd10codes.length; i++) {
//鍏堟煡璇竴涓嬫槸鍚﹀瓨鍦�
@@ -2521,6 +2551,29 @@
}
/**
+ * 鑾峰彇涓撶梾闅忚缁熻姣斾緥
+ *
+ * @param serviceSubtaskCountReq
+ * @return
+ */
+ @Override
+ @Cacheable(value = "specialSfStatistics", key = "T(org.springframework.util.DigestUtils).md5DigestAsHex(#serviceSubtaskCountReq.toString().getBytes())", unless = "#result == null or #result.isEmpty()")
+ public List<ServiceSubtaskStatistic> getSpecialSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq) {
+ log.info("getSpecialSfStatistics鐨勫叆鍙備负锛歿}", serviceSubtaskCountReq);
+ String groupKey = "drcode";
+ if (serviceSubtaskCountReq.getDrcode() != null && !serviceSubtaskCountReq.getDrcode().isEmpty()) {
+ groupKey = "drcode";
+ } else {
+ groupKey = "task_name";
+ }
+ List<ServiceSubtaskStatistic> serviceSubtaskStatistics = new ArrayList<>();
+ serviceSubtaskCountReq.setGroupKey(groupKey);
+ serviceSubtaskStatistics = serviceSubtaskMapper.getSpecialSfStatistics(serviceSubtaskCountReq);
+
+ return serviceSubtaskStatistics;
+ }
+
+ /**
* 闅忚缁熻-鍙婃椂鐜囩粺璁�
*
* @param serviceSubtaskCountReq
@@ -2996,7 +3049,6 @@
}
return serviceSubtaskStatistic;
}
-
/**
* 棣栨闅忚缁熻
*
--
Gitblit v1.9.3