From 4383c73ce1c6f7886fbc19e0e8dfa71da8ff9283 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 06 一月 2026 11:41:48 +0800
Subject: [PATCH] 【市一】随访满意度明细调整

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java |   38 ++++++++++++++++++++------------------
 smartor/src/main/java/com/smartor/domain/ServiceSubtaskScriptCount.java       |    6 ++++++
 smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml            |   14 --------------
 3 files changed, 26 insertions(+), 32 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskScriptCount.java b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskScriptCount.java
index 728ed32..7bc96be 100644
--- a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskScriptCount.java
+++ b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskScriptCount.java
@@ -25,6 +25,12 @@
     private Long scriptid;
 
     /**
+     * 妯℃澘ID
+     */
+    @ApiModelProperty(name = "妯℃澘ID")
+    private Long templateid;
+
+    /**
      * 闂鍐呭
      */
     @ApiModelProperty("闂鍐呭")
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 34be16f..cf53baf 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -3049,27 +3049,29 @@
             allItemCounts = serviceSubtaskMapper.getSfStatisticsScriptItemDetails(serviceSubtaskCountReq);
         }
 
-
         for(ServiceSubtaskScriptCount count : allCounts){
             Map<String, ServiceSubtaskScriptCount> itemCountMap = new HashMap<>();
-            if(ObjectUtils.isNotEmpty(count.getOptions())){
-                String[] optionsArray = count.getOptions().split(",");
-                List<String> optionsList = Arrays.stream(optionsArray).map(String::valueOf).collect(Collectors.toList());
-                if(ObjectUtils.isNotEmpty(optionsList)){
-                    //濉叆绌虹櫧淇℃伅
-                    optionsList.forEach(option ->{
-                        ServiceSubtaskScriptCount emptyCount = new ServiceSubtaskScriptCount();
-                        emptyCount.setScriptContent(count.getScriptContent());
-                        emptyCount.setScriptType(count.getScriptType());
-                        emptyCount.setCompletedQuantity(count.getCompletedQuantity());
-                        emptyCount.setAllQuantity(count.getAllQuantity());
-                        emptyCount.setChosenQuantity(0);
-                        emptyCount.setChosenPercentage("0.0");
-                        itemCountMap.put(option,emptyCount);
-                    });
+            if(ObjectUtils.isNotEmpty(count.getTemplateid())){
+                SvyTaskTemplateVO svyTaskTemplateVO = new SvyTaskTemplateVO();
+                svyTaskTemplateVO.setId(count.getTemplateid());
+                SvyTaskTemplateVO svyTaskTemplateResultVo = svyTaskTemplateService.selectInfoByCondition(svyTaskTemplateVO);
+                if(ObjectUtils.isNotEmpty(svyTaskTemplateResultVo)){
+                    List<SvyTaskTemplateScriptVO> templateScriptVOS = svyTaskTemplateResultVo.getSvyTaskTemplateScriptVOS();
+                    if(ObjectUtils.isNotEmpty(templateScriptVOS)){
+                        //濉叆绌虹櫧淇℃伅
+                        templateScriptVOS.forEach(templateScriptVO ->{
+                            ServiceSubtaskScriptCount emptyCount = new ServiceSubtaskScriptCount();
+                            emptyCount.setScriptContent(count.getScriptContent());
+                            emptyCount.setScriptType(count.getScriptType());
+                            emptyCount.setCompletedQuantity(count.getCompletedQuantity());
+                            emptyCount.setAllQuantity(count.getAllQuantity());
+                            emptyCount.setChosenQuantity(0);
+                            emptyCount.setChosenPercentage("0.0");
+                            itemCountMap.put(templateScriptVO.getScriptResult(),emptyCount);
+                        });
+                    }
                 }
             }
-            List<ServiceSubtaskScriptCount> itemCounts = new ArrayList<>();
             allItemCounts.forEach(itemCount ->{
                 if(ObjectUtils.isNotEmpty(count.getScriptid()) && ObjectUtils.isNotEmpty(itemCount.getScriptid())){
                     if(count.getScriptid().equals(itemCount.getScriptid())){
@@ -3089,7 +3091,7 @@
                     }
                 }
             });
-            itemCounts = new ArrayList<>(itemCountMap.values());
+            List<ServiceSubtaskScriptCount> itemCounts = new ArrayList<>(itemCountMap.values());
             count.setDetails(itemCounts);
             result.put(count.getScriptid().toString(),count);
         }
diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
index fb3ad76..111eee5 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -1361,12 +1361,6 @@
         a.script_content,
         b.completed_quantity,
         b.all_quantity,
-        <if test="type == 1">
-            '' as options,
-        </if>
-        <if test="type == 2">
-            c.options,
-        </if>
         ROUND(b.completed_quantity/b.all_quantity,2) as completed_percentage
         FROM
         <if test="type == 1">
@@ -1425,14 +1419,6 @@
         </if>
         group by ssd.scriptid) b
         ON a.id = b.scriptid
-        <!-- 缁熻闂嵎 -->
-        <if test="type == 2">
-            LEFT JOIN (
-            SELECT target.scriptid,GROUP_CONCAT(optioncontent) as options
-            FROM svy_task_template_targetoption target
-            group by target.scriptid
-            ) c ON a.scriptid = c.scriptid
-        </if>
     </select>
 
     <select id="getSfStatisticsScriptItemDetails" parameterType="com.smartor.domain.ServiceSubtaskCountReq"

--
Gitblit v1.9.3