From 3cc02d185227daee7cd738ca9f713aab5025ec9b Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 09 五月 2025 16:21:47 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java |   28 +++++++++++++++++++++++-----
 1 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
index 4563bcd..fcf1142 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
@@ -358,13 +358,33 @@
         log.error("selectPatQuesTionResult鐨勫叆鍙備负锛歿}", serviceSubTaskQueryReq);
         Map<String, Object> map = new HashMap<>();
 
+        //鑾峰彇鏈鐨勯棶绛旂粨鏋�
         Map<String, Object> scriptInfoByCondition = serviceTaskService.getScriptInfoByCondition(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), serviceSubTaskQueryReq.getIsFinish(), serviceSubTaskQueryReq.getPatfrom());
+        map = getMap(scriptInfoByCondition, serviceSubTaskQueryReq.getSubId(), serviceSubTaskQueryReq.getPatid());
+
+        //鑾峰彇涓婃鐨勯棶绛旂粨鏋�
+        ServiceSubtask serviceSubtask = serviceSubtaskMapper.selectServiceSubtaskById(serviceSubTaskQueryReq.getSubId());
+        if (ObjectUtils.isNotEmpty(serviceSubtask) && serviceSubtask.getUpid() != null) {
+            Map<String, Object> scriptInfoByCondition2 = serviceTaskService.getScriptInfoByCondition(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), serviceSubTaskQueryReq.getIsFinish(), serviceSubTaskQueryReq.getPatfrom());
+            Map<String, Object> map1 = getMap(scriptInfoByCondition2, Long.valueOf(serviceSubtask.getUpid()), serviceSubTaskQueryReq.getPatid());
+            if (!map1.isEmpty()) {
+                map.put("upScriptResult", map1.get("scriptResult"));
+                map.put("upTaskName", map1.get("taskName"));
+            }
+        }
+
+        return map;
+    }
+
+
+    private Map<String, Object> getMap(Map<String, Object> scriptInfoByCondition, Long subid, Long patid) {
+        Map<String, Object> map = new HashMap<>();
         if (ObjectUtils.isNotEmpty(scriptInfoByCondition) && ObjectUtils.isNotEmpty(scriptInfoByCondition.get("script"))) {
             log.error("-----------scriptInfoByCondition鐨勫�间负锛歿}", scriptInfoByCondition);
             if (scriptInfoByCondition.get("type").equals("1")) {
                 List<IvrLibaTemplateScriptVO> ivrLibaTemplateScriptVOList = (List) scriptInfoByCondition.get("script");
                 for (IvrLibaTemplateScriptVO ivrLibaTemplateScriptVO : ivrLibaTemplateScriptVOList) {
-                    Map<String, String> scriptResult = getScriptResult(serviceSubTaskQueryReq.getSubId(), serviceSubTaskQueryReq.getPatid(), ivrLibaTemplateScriptVO.getId());
+                    Map<String, String> scriptResult = getScriptResult(subid, patid, ivrLibaTemplateScriptVO.getId());
                     if (ObjectUtils.isNotEmpty(scriptResult)) {
                         ivrLibaTemplateScriptVO.setScriptResult(scriptResult.get("asrtext"));
                         ivrLibaTemplateScriptVO.setScriptResultId(scriptResult.get("asrtextId"));
@@ -372,11 +392,10 @@
                 }
                 map.put("scriptResult", ivrLibaTemplateScriptVOList);
                 map.put("taskName", scriptInfoByCondition.get("taskName"));
-                return map;
             } else if (scriptInfoByCondition.get("type").equals("2")) {
                 List<SvyLibTemplateScriptVO> svyLibTemplateScriptVOList = (List) scriptInfoByCondition.get("script");
                 for (SvyLibTemplateScriptVO svyLibTemplateScriptVO : svyLibTemplateScriptVOList) {
-                    Map<String, String> scriptResult = getScriptResult(serviceSubTaskQueryReq.getSubId(), serviceSubTaskQueryReq.getPatid(), svyLibTemplateScriptVO.getId());
+                    Map<String, String> scriptResult = getScriptResult(subid, patid, svyLibTemplateScriptVO.getId());
                     if (ObjectUtils.isNotEmpty(scriptResult)) {
                         if (StringUtils.isNotEmpty(scriptResult.get("asrtext")))
                             svyLibTemplateScriptVO.setScriptResult(StringUtils.isNotEmpty(scriptResult.get("asrtext")) ? scriptResult.get("asrtext").replaceAll("^(\"|')(.*)\\1$", "$2") : "");
@@ -385,18 +404,17 @@
                 }
                 map.put("scriptResult", svyLibTemplateScriptVOList);
                 map.put("taskName", scriptInfoByCondition.get("taskName"));
-                return map;
             } else if (scriptInfoByCondition.get("type").equals("3")) {
                 //瀹f暀涓嶉渶瑕佹煡鐪�
                 List<HeLibrary> heLibraryList = (List) scriptInfoByCondition.get("script");
                 map.put("scriptResult", heLibraryList);
                 map.put("taskName", scriptInfoByCondition.get("taskName"));
-                return map;
             }
         }
         return map;
     }
 
+
     private Map<String, String> getScriptResult(Long subid, Long pid, Long sid) {
         Map<String, String> map = new HashMap<>();
         ServiceSubtaskDetail serviceSubtaskDetail = new ServiceSubtaskDetail();

--
Gitblit v1.9.3