From be4f9dc87f5b839895e3c5c0e323d680a33e4820 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期一, 14 九月 2026 11:09:59 +0800
Subject: [PATCH] 1.省立同德新增满意度接口(未开发完) 2.字段修改将isMust修改成ismandatory (是否必填  1必填   2不必填(默认))

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskDetailController.java |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskDetailController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskDetailController.java
index 86252e7..6204bdb 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskDetailController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskDetailController.java
@@ -6,10 +6,15 @@
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.DtoConversionUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.system.service.ISysConfigService;
 import com.smartor.domain.*;
+import com.smartor.domain.DTO.QuestionResultDTO;
 import com.smartor.domain.DTO.ServiceSubtaskDetailDTO;
+import com.smartor.domain.VO.QuestionCountKsOrBqVO;
+import com.smartor.domain.VO.QuestionResultVO;
+import com.smartor.domain.entity.ServiceSubtaskEntity;
 import com.smartor.service.IServiceSubtaskDetailService;
 import com.smartor.service.IServiceSubtaskService;
 import io.swagger.annotations.Api;
@@ -19,6 +24,7 @@
 import org.springframework.web.bind.annotation.*;
 
 import java.util.*;
+import java.util.stream.Collectors;
 
 import static com.ruoyi.framework.datasource.DynamicDataSourceContextHolder.log;
 
@@ -192,4 +198,46 @@
         map = ServiceSubtaskDetailService.getServiceSubtaskDetails(serviceSubtaskDetailVO);
         return map;
     }
+
+
+    /**
+     * 鏌ヨ鎮h�呴殢璁夸俊鎭�
+     */
+    @ApiOperation("鐪佺珛鍚屽痉婊℃剰搴︽暟鎹粺璁�")
+    @PostMapping("/sltaMydTotalByScore")
+    public Map<String, Object> sltaMydTotal(@RequestBody QuestionResultVO questionResultVO) {
+        List<ServiceSubtaskRes> serviceSubtaskResList = null;
+        ServiceSubtaskEntity serviceSubtaskEntity = new ServiceSubtaskEntity();
+        serviceSubtaskEntity.setServiceType(questionResultVO.getServiceType());
+        serviceSubtaskEntity.setEndOutHospTime(questionResultVO.getEndOutHospTime());
+        serviceSubtaskEntity.setStartOutHospTime(questionResultVO.getStartOutHospTime());
+        serviceSubtaskEntity.setDeptOrDistrict(questionResultVO.getDeptOrDistrict());
+        serviceSubtaskEntity.setLeavehospitaldistrictcodes(questionResultVO.getLeavehospitaldistrictcodes());
+        if (serviceSubtaskEntity != null) {
+            List<ServiceSubtask> serviceSubtasks = serviceSubtaskService.getServiceSubtasks(serviceSubtaskEntity);
+            serviceSubtaskResList = DtoConversionUtils.sourceToTarget(serviceSubtasks, ServiceSubtaskRes.class);
+        }
+        List<ServiceSubtaskDetailRatioExport> detailList = serviceSubtaskService.getDetailRatio(questionResultVO, serviceSubtaskResList);
+
+        // 鎸� questiontext 鍒嗙粍鍚庤浆鎹负 QuestionResultVO
+        List<QuestionResultDTO> result = new ArrayList<>();
+        if (!detailList.isEmpty()) {
+            Map<String, List<ServiceSubtaskDetailRatioExport>> groupedMap = detailList.stream().collect(Collectors.groupingBy(ServiceSubtaskDetailRatioExport::getQuestiontext));
+
+            groupedMap.forEach((questionText, exportList) -> {
+                QuestionResultDTO questionResultDTO = new QuestionResultDTO();
+                questionResultDTO.setQeustionText(questionText);
+                questionResultDTO.setSubtaskDetailRatioExportList(exportList);
+                result.add(questionResultDTO);
+            });
+        }
+
+        return success(result);
+    }
+
+    @ApiOperation("鐪佺珛鍚屽痉婊℃剰搴︽暟鎹粺璁¢�氳繃绉戝鎴栫梾鍖�")
+    @PostMapping("/statQuestionOptionByKsOrBq")
+    public Map<String, Object> statQuestionOptionByKsOrBq(@RequestBody QuestionCountKsOrBqVO questionResultVO) {
+        return success(serviceSubtaskService.statQuestionOptionByKsOrBq(questionResultVO));
+    }
 }

--
Gitblit v1.9.3