From ba69dcfe19d7718449f45b3aba8e9fc75ed93025 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 15 四月 2025 15:56:14 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java |  146 +++++++++++++++++++++---------------------------
 1 files changed, 65 insertions(+), 81 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java
index 4fba862..c3b371c 100644
--- a/smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java
@@ -1,15 +1,14 @@
 package com.smartor.service.impl;
 
-import cn.hutool.json.JSONUtil;
-import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson2.JSON;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.gson.Gson;
+import com.ruoyi.common.core.redis.RedisCache;
+import com.ruoyi.common.enums.HospTypeEnum;
+import com.ruoyi.common.enums.ServiceTaskTypeEnum;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.*;
-import com.ruoyi.common.utils.http.HttpEntity;
-import com.ruoyi.common.utils.http.HttpUtils;
 import com.smartor.common.LyraTokenUtil;
 import com.smartor.domain.*;
 import com.smartor.mapper.BaseOrganizationMapper;
@@ -17,9 +16,6 @@
 import com.smartor.service.IServiceTaskService;
 import com.smartor.service.ISvyTaskSingleService;
 import lombok.extern.slf4j.Slf4j;
-import okhttp3.OkHttpClient;
-import okhttp3.Request;
-import okhttp3.Response;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -47,6 +43,9 @@
 
     @Autowired
     private BaseOrganizationMapper baseOrganizationMapper;
+
+    @Autowired
+    private RedisCache redisCache;
 
 
     @Override
@@ -93,9 +92,35 @@
                 serviceTask.setSendTimeSlot(JSON.toJSONString(serviceTaskVO.getSendTimeslot()));
             //淇敼鎿嶄綔锛岄渶瑕佸皢stopState鐘舵��+1
             ServiceTask serviceTask2 = iServiceTaskService.selectServiceTaskByTaskid(serviceTaskVO.getTaskid());
-            serviceTask2.setStopState(serviceTask.getStopState() + 1);
+//            serviceTask2.setStopState(serviceTask.getStopState() + 1);
             serviceTask2.setTemplateid(Long.valueOf(serviceTaskVO.getLibtemplateid()));
             iServiceTaskService.updateServiceTask(serviceTask2);
+
+            //鑾峰彇鍒拌浠诲姟鎵�鏈夌殑鏈嶅姟锛屽苟浠庨槦鍒楅噷鍒犻櫎
+            ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
+            serviceSubtaskVO.setTaskid(serviceTask2.getTaskid());
+            serviceSubtaskVO.setSendstate(2L);
+            List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+            serviceSubtaskVO.setSendstate(1L);
+            List<ServiceSubtask> serviceSubtaskList1 = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+            if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
+                if (CollectionUtils.isNotEmpty(serviceSubtaskList1)) serviceSubtaskList.addAll(serviceSubtaskList1);
+            } else {
+                if (CollectionUtils.isNotEmpty(serviceSubtaskList1)) serviceSubtaskList = serviceSubtaskList1;
+            }
+            if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
+                for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
+                    log.error("insertOrUpdateSvyTask闇�瑕佺Щ闄ょ殑subId涓猴細{}", serviceSubtask.getId().toString());
+                    serviceSubtaskMapper.deleteServiceSubtaskById(serviceSubtask.getId());
+                    redisCache.removeElementFromList("cache-exist", serviceSubtask.getId().toString());
+                    redisCache.removeElementFromList("cache-0", serviceSubtask.getId().toString());
+                    redisCache.removeElementFromList("cache-1", serviceSubtask.getId().toString());
+                    redisCache.removeElementFromList("cache-2", serviceSubtask.getId().toString());
+                    redisCache.removeElementFromList("cache-3", serviceSubtask.getId().toString());
+                    redisCache.removeElementFromList("cache-4", serviceSubtask.getId().toString());
+                }
+            }
+
 
             if (CollectionUtils.isNotEmpty(serviceTaskVO.getPatTaskRelevances())) {
                 for (PatTaskRelevance patTaskRelevance : serviceTaskVO.getPatTaskRelevances()) {
@@ -168,7 +193,7 @@
                 patTaskRelevance.setSfzh(serviceSubtask1.getSfzh());
                 patTaskRelevance.setPhone(serviceSubtask1.getPhone());
                 patTaskRelevance.setAddr(serviceSubtask1.getAddr());
-                patTaskRelevance.setDiagname(serviceSubtask1.getDiagname());
+                patTaskRelevance.setDiagname(serviceSubtask1.getLeavediagname());
                 patTaskRelevance.setPatid(serviceSubtask1.getPatid());
                 patTaskRelevance.setSendStatus(serviceSubtask1.getSendstate());
                 patTaskRelevances.add(patTaskRelevance);
@@ -182,7 +207,7 @@
                 patTaskRelevance.setAddr(serviceSubtask1.getAddr());
                 patTaskRelevance.setDeptName(serviceSubtask1.getDeptname());
                 patTaskRelevance.setBedNo(serviceSubtask1.getBedNo());
-                patTaskRelevance.setDiagname(serviceSubtask1.getDiagname());
+                patTaskRelevance.setDiagname(serviceSubtask1.getLeavediagname());
                 patTaskRelevance.setPatid(serviceSubtask1.getPatid());
                 patTaskRelevance.setSendStatus(serviceSubtask1.getSendstate());
                 patTaskRelevances.add(patTaskRelevance);
@@ -201,69 +226,26 @@
         else if (isoperation == 3) serviceSubtaskMapper.deleteServiceSubtaskByCondition(taskId, patid);
     }
 
-
     @Override
     public int insertTaskInfo(ServiceTaskInfo serviceTaskVO) {
         if (ObjectUtils.isEmpty(serviceTaskVO)) {
             log.info("鏂板浠诲姟鍏ュ弬涓虹┖锛岃妫�鏌ュ叆鍙�");
             throw new BaseException("鏂板浠诲姟鍏ュ弬涓虹┖锛岃妫�鏌ュ叆鍙�");
         }
-        Integer integer = 1;
-        //ServiceSubtask serviceTask = DtoConversionUtils.sourceToTarget(serviceTaskVO, ServiceSubtask.class);
-        //serviceTask.setTextParam(JSON.toJSONString(serviceTaskVO.getTextParam()));
         //灏嗕换鍔′俊鎭斁鍒版湇鍔¤〃涓�
-        ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceTaskVO, ServiceSubtask.class);
-        serviceSubtask.setTaskid(serviceTaskVO.getTaskguid());
+        ServiceSubtask serviceSubtask = new ServiceSubtask();
+        serviceSubtask.setTaskGuid(serviceTaskVO.getTaskguid());
         String type = "0";
-        if (serviceTaskVO.getServicetype().equals("鐩戞祴璇勪及")) {
-            type = "1";
-        } else if (serviceTaskVO.getServicetype().equals("鍑洪櫌闅忚")) {
-            type = "2";
-        } else if (serviceTaskVO.getServicetype().equals("闂ㄨ瘖闅忚")) {
-            type = "3";
-        } else if (serviceTaskVO.getServicetype().equals("瀹f暀鍏虫��")) {
-            type = "4";
-        } else if (serviceTaskVO.getServicetype().equals("澶嶈瘖閫氱煡")) {
-            type = "5";
-        } else if (serviceTaskVO.getServicetype().equals("婊℃剰搴﹁皟鏌�")) {
-            type = "6";
-        } else if (serviceTaskVO.getServicetype().equals("鎮h�呮姤鍛�")) {
-            type = "7";
-        } else if (serviceTaskVO.getServicetype().equals("鍏朵粬閫氱煡")) {
-            type = "8";
-        }
-        if (type.equals("0")) {
-            type = serviceTaskVO.getServicetype();
-        }
+        if (StringUtils.isNotEmpty(serviceTaskVO.getServicetype()))
+            type = ServiceTaskTypeEnum.getDescByCode(serviceTaskVO.getServicetype());
         serviceSubtask.setServiceType(type);
-        //0銆�1瀹f暀銆�2闂ㄨ瘖銆�3鍑洪櫌銆�4澶嶈瘖銆�5浣撴銆�6闂嵎銆�7鍖绘妧
-        String tasktype = "-1";
-        if (serviceTaskVO.getTasktype().equals("閫氱煡")) {
-            tasktype = "0";
-        } else if (serviceTaskVO.getTasktype().equals("瀹f暀")) {
-            tasktype = "1";
-        } else if (serviceTaskVO.getTasktype().equals("闂ㄨ瘖")) {
-            tasktype = "2";
-        } else if (serviceTaskVO.getTasktype().equals("鍑洪櫌")) {
-            tasktype = "3";
-        } else if (serviceTaskVO.getTasktype().equals("澶嶈瘖")) {
-            tasktype = "4";
-        } else if (serviceTaskVO.getTasktype().equals("浣撴")) {
-            tasktype = "5";
-        } else if (serviceTaskVO.getTasktype().equals("闂嵎")) {
-            tasktype = "6";
-        } else if (serviceTaskVO.getTasktype().equals("鍖绘妧")) {
-            tasktype = "7";
-        }
-        if (tasktype.equals("-1")) {
-            tasktype = serviceTaskVO.getTasktype();
-        }
-        serviceSubtask.setType(tasktype);
+        //绗笁鏂逛紶杩囨潵鐨勶紝鐩存帴缁熶竴瀹氫负闂嵎
+        serviceSubtask.setType("2");
         serviceSubtask.setLabelstatus(serviceTaskVO.getTaskstate());
         serviceSubtask.setTaskName(serviceTaskVO.getTaskname());
         serviceSubtask.setTaskDesc(serviceTaskVO.getTaskdesc());
-        serviceSubtask.setPreachform(serviceTaskVO.getExemode());
-        //serviceSubtask.setUploadTime(serviceTaskVO.setUploadTime());
+        //绗笁鏂逛紶杩囨潵鐨勶紝鐩存帴缁熶竴瀹氫负"浜哄伐"
+        serviceSubtask.setPreachform("1");
         serviceSubtask.setCreateBy(serviceTaskVO.getCreateBy());
         serviceSubtask.setCreateTime(serviceTaskVO.getCreateTime());
         serviceSubtask.setOperatorNo(serviceTaskVO.getOperatorno());
@@ -272,8 +254,9 @@
         serviceSubtask.setEndtime(serviceTaskVO.getFinishtime());
         serviceSubtask.setResult(serviceTaskVO.getResult());
         serviceSubtask.setSuggest(serviceTaskVO.getSuggest());
+        serviceSubtask.setDelFlag(serviceTaskVO.getDelflag());
         serviceSubtask.setOrgid(serviceTaskVO.getOrgguid());
-        serviceSubtask.setPatid(serviceTaskVO.getPatguid());
+        serviceSubtask.setPatguid(serviceTaskVO.getPatguid());
         serviceSubtask.setSendname(serviceTaskVO.getPatname());
         if (StringUtils.isNotEmpty(serviceTaskVO.getPatsex()) && serviceTaskVO.getPatsex().equals("鐢�"))
             serviceSubtask.setSex(1L);
@@ -286,31 +269,29 @@
         serviceSubtask.setWechat(serviceTaskVO.getPatopenid());
         serviceSubtask.setInhospno(serviceTaskVO.getInhosno());
         String hosptype = "-1";
-        if (serviceTaskVO.getVisittype().equals("闂ㄨ瘖")) {
-            hosptype = "1";
-        } else if (serviceTaskVO.getVisittype().equals("鍑洪櫌")) {
-            hosptype = "2";
-        } else if (serviceTaskVO.getVisittype().equals("涓撶梾")) {
-            hosptype = "3";
-        } else if (serviceTaskVO.getVisittype().equals("澶栭儴瀵煎叆")) {
-            hosptype = "4";
-        }
-        if (hosptype.equals("-1")) {
-            hosptype = serviceTaskVO.getVisittype();
-        }
+        hosptype = HospTypeEnum.getDescByCode(serviceTaskVO.getVisittype());
         serviceSubtask.setHospType(hosptype);
         serviceSubtask.setHospno(serviceTaskVO.getVisitno());
         serviceSubtask.setAdmindate(serviceTaskVO.getVisittime());
         serviceSubtask.setRoomno(serviceTaskVO.getRoomno());
         serviceSubtask.setBedNo(serviceTaskVO.getBedno());
         serviceSubtask.setDeptname(serviceTaskVO.getDeptname());
-        //serviceSubtask.setSendname(serviceTaskVO.gets());
-        //serviceSubtask.setPatid(serviceTaskVO.getPid());
+        serviceSubtask.setDeptcode(serviceTaskVO.getDeptcode());
         serviceSubtask.setSendstate(1L);
-        //serviceSubtask.setHospType(serviceTask.getHospType());
         serviceSubtask.setCreateTime(new Date());
-        serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
-        integer = serviceSubtask.getId().intValue();
+        serviceSubtask.setLeavehospitaldistrictcode(serviceTaskVO.getDistrictcode());
+        //鍏堟煡璇竴閬嶏紝璇askGuid鏄惁瀛樺湪
+        ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
+        serviceSubtaskVO.setTaskGuid(serviceTaskVO.getTaskguid());
+        List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+        if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
+            serviceSubtask.setId(serviceSubtaskList.get(0).getId());
+            serviceSubtask.setUpdateTime(new Date());
+            serviceSubtaskMapper.updateServiceSubtaskByTaskGuid(serviceSubtask);
+        } else {
+            serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
+        }
+        Integer integer = serviceSubtask.getId().intValue();
         log.error("鎻掑叆鐨処D鏄細{}", integer);
         return integer;
     }
@@ -339,7 +320,6 @@
         List<BaseOrganization> baseOrganizations = baseOrganizationMapper.selectBaseOrganizationList(baseOrganization);
         if (CollectionUtils.isNotEmpty(baseOrganizations)) {
             YongHuXX yongHuXX = serviceQueryInfo.getYeWuXX().getYongHuXX();
-            yongHuXX.setYongHuID(baseOrganizations.get(0).getOrgid());
             yongHuXX.setZuZhiJGID(baseOrganizations.get(0).getGuid());
             yongHuXX.setZuZhiJGMC(baseOrganizations.get(0).getOrganizationName());
             serviceQueryInfo.getYeWuXX().setYongHuXX(yongHuXX);
@@ -357,11 +337,15 @@
         try {
             String jsonString = objectMapper.writeValueAsString(serviceQueryInfo);
             log.error("token鐨勫�间负锛歿}", token);
-            result = OkHttpExample.sendPostRequest("https://9.0.124.84:13021/mediinfo-grus-fuwuzxwg/api/esb/lyraSyncRun", jsonString, token);
+            result = OkHttpExample.sendPostRequest("https://9.0.124.104:13021/mediinfo-grus-fuwuzxwg/api/esb/lyraSyncRun", jsonString, token);
             map = objectMapper.readValue(result, Map.class);
         } catch (Exception e) {
             e.printStackTrace();
         }
+        Integer code = (Integer) map.get("code");
+        if (code != null && code == 0) {
+            map.put("code", 200);
+        }
 
         return map;
     }

--
Gitblit v1.9.3