From 82d418688f2ce455e8fb756f6d419b07a57e8d4f Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 30 十月 2026 17:32:44 +0800
Subject: [PATCH] 【丽水】ServiceSubtaskMapper.xml currentPreachform 为空字符串查不到数据的问题

---
 smartor/src/main/java/com/smartor/common/ScheduleSubtaskBuilder.java |   18 +++++++++++++-----
 1 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/common/ScheduleSubtaskBuilder.java b/smartor/src/main/java/com/smartor/common/ScheduleSubtaskBuilder.java
index 9c89fc5..e082012 100644
--- a/smartor/src/main/java/com/smartor/common/ScheduleSubtaskBuilder.java
+++ b/smartor/src/main/java/com/smartor/common/ScheduleSubtaskBuilder.java
@@ -74,7 +74,16 @@
 
             // 妯℃澘锛歞etail 浼樺厛浜� task
             if (detail.getTemplateid() != null) {
-                subtask.setTemplateid(detail.getTemplateid());
+                // 鍏煎鍘嗗彶鏁版嵁锛氭槑缁� templateid 鍙兘鏄ā鏉垮簱ID锛屼笉鑳界洿鎺ヤ綔涓轰换鍔℃ā鏉縄D浣跨敤銆�
+                if ("2".equals(serviceTask.getType())
+                        && String.valueOf(detail.getTemplateid()).equals(serviceTask.getLibtemplateid())
+                        && serviceTask.getTemplateid() != null) {
+                    log.warn("璁″垝鏄庣粏 templateid [{}] 鏄ā鏉垮簱ID锛屽凡鍥為��涓轰换鍔℃ā鏉縄D [{}], taskid={}, detailId={}",
+                            detail.getTemplateid(), serviceTask.getTemplateid(), serviceTask.getTaskid(), detail.getId());
+                    subtask.setTemplateid(serviceTask.getTemplateid());
+                } else {
+                    subtask.setTemplateid(detail.getTemplateid());
+                }
                 subtask.setTemplatename(detail.getTemplatename());
             }
             if (detail.getLibtemplateid() != null) {
@@ -107,9 +116,9 @@
      * 鎶� patTaskRelevance 鐨勫熀鍑嗘棩瀛楁鍥炲~鍒� baseSubtask 鍚庯紝濮旀墭缁欒В鑰﹀叆鍙c��
      */
     public void buildSubtasksForPatient(ServiceTask serviceTask,
-                                        ServiceTaskVO serviceTaskVO,
+                                        List<Map<String, Object>> preachformList,
                                         ServiceTaskSchedule schedule,
-                                        List<ServiceTaskScheduleDetail> detailList,
+                                        List<ServiceTaskScheduleDetail> scheduleDetailList,
                                         PatTaskRelevance patTaskRelevance,
                                         ServiceSubtask baseSubtask) {
         // 鍥炲~鍩哄噯鏃ュ瓧娈碉紙鎵嬪姩璺緞鐨� baseSubtask 鐢� VO 鎷艰锛屽熀鍑嗘棩瀛楁鍙兘鏈~鍏級
@@ -123,8 +132,7 @@
         if (baseSubtask.getAdmindate() == null) {
             baseSubtask.setAdmindate(patTaskRelevance.getVisittime());
         }
-        buildSubtasksForPatient(serviceTask, schedule, detailList, baseSubtask,
-                serviceTaskVO.getPreachformList());
+        buildSubtasksForPatient(serviceTask, schedule, scheduleDetailList, baseSubtask, preachformList);
     }
 
     /**

--
Gitblit v1.9.3