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 |   81 +++++++++++++++++++++++++---------------
 1 files changed, 50 insertions(+), 31 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 3dd094c..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
@@ -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);
             }
 
             //灏嗕换鍔′俊鎭斁鍒版湇鍔¤〃涓�

--
Gitblit v1.9.3