From 847a7773ef1a8ad418c6934d35b5f205a97c04d0 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期六, 06 十二月 2025 17:03:24 +0800
Subject: [PATCH] fix:在任务状态更新时,需要更新日志到旧系统

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java |   56 +++++++++++++++++++++++++++-----------------------------
 1 files changed, 27 insertions(+), 29 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java
index fed2d84..7bdf7ab 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/LegacyTransferSyncServiceImpl.java
@@ -170,22 +170,24 @@
                 log.error("鏈嶅姟鍗旾D涓嶈兘涓虹┖");
                 return false;
             }
-            
+            // 鐩存帴鏌ヨ鎸囧畾鐨勮浆杩愬崟淇℃伅
+            List<Map<String, Object>> transferOrders = legacyTransferSyncMapper.selectTransferOrdersByIDs(serviceOrdID, dispatchOrdID);
+
+            Map<String, Object> order = transferOrders.get(0);
+
             // 妫�鏌ユ槸鍚﹀凡鍚屾
             if (isTransferOrderSynced(serviceOrdID, dispatchOrdID)) {
                 log.info("杞繍鍗曞凡鍚屾锛岃烦杩�: ServiceOrdID={}, DispatchOrdID={}", serviceOrdID, dispatchOrdID);
+                updateTransferOrder(serviceOrdID, dispatchOrdID, order);
                 return true;
             }
             
-            // 鐩存帴鏌ヨ鎸囧畾鐨勮浆杩愬崟淇℃伅
-            List<Map<String, Object>> transferOrders = legacyTransferSyncMapper.selectTransferOrdersByIDs(serviceOrdID, dispatchOrdID);
-            
+
             if (transferOrders == null || transferOrders.isEmpty()) {
                 log.error("鏈煡璇㈠埌瀵瑰簲鐨勮浆杩愬崟淇℃伅: ServiceOrdID={}, DispatchOrdID={}", serviceOrdID, dispatchOrdID);
                 return false;
             }
-            
-            Map<String, Object> order = transferOrders.get(0);
+
             
             // 鍚屾鍗曚釜杞繍鍗�
             return syncSingleTransferOrder(serviceOrdID, dispatchOrdID, order);
@@ -294,7 +296,10 @@
             String serviceOrdClass = getStringValue(order,"ServiceOrdClass");
             String serviceOrdNo = getStringValue(order,"ServiceOrdNo");
 
-            Integer oauserId=getIntegerValue(order,"ServiceOrd_NS_ID");
+            /**
+             * 鍒涘缓浜篒D
+             */
+            Integer oauserId=getIntegerValue(order,"ServiceOrd_CC_ID");
             SysUser sysUser=sysUserService.selectUserByOaUserId(oauserId);
             Long taskCreatorId=sysUser==null?null:sysUser.getUserId();
             String createUserName=sysUser==null?"system":sysUser.getUserName();
@@ -424,18 +429,10 @@
             
             // 璁剧疆鍖哄煙绫诲瀷
             String serviceOrdAreaType = getStringValue(order, "ServiceOrdAreaType");
-            if (StringUtils.isNotEmpty(serviceOrdAreaType)) {
-                // 鍙互鏍规嵁闇�瑕佸皢鍖哄煙绫诲瀷鏄犲皠鍒癟askCreateVO鐨勫叾浠栧瓧娈�
-                log.debug("鍖哄煙绫诲瀷: {}", serviceOrdAreaType);
-            }
-            
+
             // 璁剧疆鐢ㄦ埛ID
             Long serviceOrdUserID = getLongValue(order, "ServiceOrdUserID");
-            if (serviceOrdUserID != null) {
-                // 鍙互鏍规嵁闇�瑕佸皢鐢ㄦ埛ID鏄犲皠鍒癟askCreateVO鐨勫叾浠栧瓧娈�
-                log.debug("鐢ㄦ埛ID: {}", serviceOrdUserID);
-            }
-            
+
             // 璁剧疆鎮h�呬俊鎭�
             TaskCreateVO.PatientInfo patientInfo = new TaskCreateVO.PatientInfo();
             patientInfo.setName(getStringValue(order, "ServiceOrdPtName"));
@@ -503,9 +500,9 @@
                     hospitalInInfo.setName(hospitalInName);
                 }
             }
-            String DispatchOrdTraEnd = getStringValue(order, "DispatchOrdTraEnd");
-            if(DispatchOrdTraEnd!= null){
-                hospitalInInfo.setAddress(DispatchOrdTraEnd);
+            String serviceOrdTraEnd = getStringValue(order, "ServiceOrdTraEnd");
+            if(serviceOrdTraEnd!= null){
+                hospitalInInfo.setAddress(serviceOrdTraEnd);
             }
             //杞叆搴婁綅
             String serviceOrdPtInServices =getStringValue(order, "ServiceOrdPtInServices");
@@ -525,20 +522,21 @@
             createTaskVo.setHospitalIn(hospitalInInfo);
             
             // 璁剧疆鍦板潃淇℃伅
-            createTaskVo.setDepartureAddress(getStringValue(order, "ServiceOrdTraVia"));
+            createTaskVo.setDepartureAddress(getStringValue(order, "ServiceOrdTraStreet"));
             createTaskVo.setDestinationAddress(getStringValue(order, "ServiceOrdTraEnd"));
             
             // 璁剧疆浠锋牸鍜岃窛绂讳俊鎭�
             createTaskVo.setPrice(getBigDecimalValue(order, "ServiceOrdTraTxnPrice"));
             // 璺濈淇℃伅闇�瑕佷粠鍏朵粬瀛楁璁$畻鎴栬幏鍙�
-            
-            // 璁剧疆鎵ц浜轰俊鎭�
-            List<TaskCreateVO.AssigneeInfo> assignees = queryAssignees(dispatchOrdID);
-            createTaskVo.setAssignees(assignees);
-            if(!assignees.isEmpty()){
-                createTaskVo.setAssigneeId(assignees.get(0).getUserId());
+
+            if(dispatchOrdID!=null) {
+                // 璁剧疆鎵ц浜轰俊鎭�
+                List<TaskCreateVO.AssigneeInfo> assignees = queryAssignees(dispatchOrdID);
+                createTaskVo.setAssignees(assignees);
+                if (!assignees.isEmpty()) {
+                    createTaskVo.setAssigneeId(assignees.get(0).getUserId());
+                }
             }
-            
             // 璁剧疆杞﹁締淇℃伅
             // 杞﹁締ID闇�瑕佹牴鎹瓺ispatchOrdCarID鏌ヨ鑾峰彇
             String carID = getStringValue(order, "DispatchOrdCarID");
@@ -680,7 +678,7 @@
                             if (sysUser != null) {
                                 TaskCreateVO.AssigneeInfo assigneeInfo = new TaskCreateVO.AssigneeInfo();
                                 assigneeInfo.setUserId(sysUser.getUserId()); // 浣跨敤绯荤粺鐢ㄦ埛ID
-                                assigneeInfo.setUserName(sysUser.getUserName());
+                                assigneeInfo.setUserName(sysUser.getNickName());
                                 // 鏍规嵁EntourageState纭畾瑙掕壊绫诲瀷
                                 // 1,2 鍙告満锛�3,5 鍖荤敓锛�4,6 鎶ゅ+
                                 if ("1".equals(entourageState) || "2".equals(entourageState)) {

--
Gitblit v1.9.1