From 609bffe781d1096ee91cbf799c043d9a3d6f14d2 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 03 七月 2026 10:27:49 +0800
Subject: [PATCH] Merge branch 'master' into master-任务组

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java |   42 ++++++++++++++++++++++++++++++++++--------
 1 files changed, 34 insertions(+), 8 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 21f547c..b51a0a3 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -16,6 +16,7 @@
 import com.ruoyi.system.mapper.SysConfigMapper;
 import com.smartor.common.FtpService;
 import com.smartor.common.MtSubmitSmUtil;
+import com.smartor.common.ScheduleSubtaskBuilder;
 import com.smartor.config.PhoneUtils;
 import com.smartor.domain.DTO.ServiceSubtaskDetailDTO;
 import com.smartor.domain.*;
@@ -28,6 +29,7 @@
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.ObjectUtils;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.cache.annotation.Cacheable;
@@ -119,7 +121,7 @@
     private IServiceTaskScheduleService serviceTaskScheduleService;
 
     @Autowired
-    private com.smartor.common.ScheduleSubtaskBuilder scheduleSubtaskBuilder;
+    private ScheduleSubtaskBuilder scheduleSubtaskBuilder;
 
     @Autowired
     private FtpService ftpService;
@@ -721,16 +723,27 @@
                     ServiceTaskoper serviceTaskoper = new ServiceTaskoper();
                     serviceTaskoper.setOpcode(serviceTaskVO.getOpcode());
                     serviceTaskoper.setOpdesc(serviceTaskVO.getOpdesc());
-                    serviceTaskoper.setOplevelcode(serviceTaskVO.getOplevelcode());
+//                    serviceTaskoper.setOplevelcode(serviceTaskVO.getOplevelcode());
                     serviceTaskoper.setTaskId(serviceTask.getTaskid());
                     serviceTaskoper.setTaskName(serviceTask.getTaskName());
                     serviceTaskoper.setLongtask(Long.valueOf(serviceTask.getLongTask()));
                     serviceTaskoper.setGuid(serviceTask.getGuid());
                     serviceTaskoper.setOrgid(serviceTask.getOrgid());
                     serviceTaskoper.setCreateTime(new Date());
+                    //閰嶇疆绉戝銆佺梾鍖�
+                    serviceTaskoper.setDeptCode(serviceTaskVO.getDeptcode());
+                    serviceTaskoper.setDeptName(serviceTaskVO.getDeptname());
+                    serviceTaskoper.setWardCode(serviceTaskVO.getLeavehospitaldistrictcode());
+                    serviceTaskoper.setWardName(serviceTaskVO.getLeavehospitaldistrictname());
+                    //澶氶�夋墜鏈瓑绾�
                     if (StringUtils.isNotEmpty(serviceTaskVO.getOplevelcode())) {
-                        log.info("----serviceTaskoper鐨勫�间负锛歿}", serviceTaskoper);
-                        serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
+                        String[] opLevelcodes = serviceTaskVO.getOplevelcode().split(",");
+                        for (String opLevelcode : opLevelcodes) {
+                            //鍏堟煡璇竴涓嬫槸鍚﹀瓨鍦�
+                            log.info("----serviceTaskoper鐨勫�间负锛歿}", serviceTaskoper);
+                            serviceTaskoper.setOplevelcode(opLevelcode);
+                            serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
+                        }
                     }
 
                 } else if (serviceTaskVO.getAppltype().equals("5")) {
@@ -747,8 +760,12 @@
                     scheduleVO.setOrgid(serviceTask.getOrgid());
                     scheduleVO.setCampusid(serviceTask.getCampusid());
                     scheduleVO.setCreateBy(serviceTask.getCreateBy());
-                    scheduleVO.setDeptcodes(serviceTask.getDeptcode());
-                    scheduleVO.setLeavehospitaldistrictcode(serviceTask.getLeavehospitaldistrictcode());
+
+                    scheduleVO.setDeptCodes(serviceTaskVO.getDeptcode());
+                    scheduleVO.setWardCodes(serviceTaskVO.getLeavehospitaldistrictcode());
+                    scheduleVO.setIcd10Codes(serviceTaskVO.getIcd10code());
+                    scheduleVO.setOplevelCodes(serviceTaskVO.getOplevelcode());
+
                     log.info("----serviceTaskSchedule鐨勫�间负锛歿}", scheduleVO);
                     serviceTaskScheduleService.saveScheduleWithDetail(scheduleVO);
                 } else {
@@ -846,7 +863,7 @@
                         List<ServiceTaskScheduleDetail> detailList =
                                 serviceTaskScheduleService.selectDetailByScheduleid(schedule.getId());
                         scheduleSubtaskBuilder.buildSubtasksForPatient(
-                                serviceTask, serviceTaskVO, schedule, detailList, patTaskRelevance, serviceSubtask);
+                                serviceTask, serviceTaskVO.getPreachformList(), schedule, detailList, patTaskRelevance, serviceSubtask);
                         continue;
                     }
 
@@ -1076,6 +1093,10 @@
                     scheduleVO.setTaskid(serviceTask.getTaskid());
                     scheduleVO.setOrgid(serviceTask.getOrgid());
                     scheduleVO.setCampusid(serviceTask.getCampusid());
+                    scheduleVO.setDeptCodes(serviceTaskVO.getDeptcode());
+                    scheduleVO.setWardCodes(serviceTaskVO.getLeavehospitaldistrictcode());
+                    scheduleVO.setIcd10Codes(serviceTaskVO.getIcd10code());
+                    scheduleVO.setOplevelCodes(serviceTaskVO.getOplevelcode());
                     scheduleVO.setCreateBy(serviceTask.getUpdateBy());
                     serviceTaskScheduleService.saveScheduleWithDetail(scheduleVO);
                 }
@@ -1142,7 +1163,7 @@
                             serviceSubtask.setUpdateBy(serviceTask.getUpdateBy());
                             serviceSubtask.setCreateBy(serviceTask.getUpdateBy());
                             scheduleSubtaskBuilder.buildSubtasksForPatient(
-                                    serviceTask, serviceTaskVO, schedule, detailList, patTaskRelevance, serviceSubtask);
+                                    serviceTask, serviceTaskVO.getPreachformList(), schedule, detailList, patTaskRelevance, serviceSubtask);
                             continue;
                         }
                         if (patTaskRelevance.getIsoperation() == 2) {
@@ -4612,6 +4633,11 @@
         return resultMap;
     }
 
+    @Override
+    public List<ServiceSubtaskDetailRatioExport> statQuestionOption(List<Long> taskIds) {
+        return serviceSubtaskMapper.statQuestionOption(taskIds);
+    }
+
     private Boolean saveServiceSubtaskDetail(ServiceSubtask serviceSubtask) {
         Boolean result = true;
         //3.4 濡傛灉3.1鎴�3.2涓簍rue鐨勮瘽锛屾牴鎹畉ype鍒ゆ柇浠�涔堢被鍨�

--
Gitblit v1.9.3