From 0d10bc99eec75672b049339399e4f762fbd9746e Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 11 九月 2026 11:45:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskDetailController.java | 88 ++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 84 insertions(+), 4 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 2379e43..1141e12 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
@@ -4,12 +4,16 @@
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
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.smartor.domain.ServiceSubTaskCacheReq;
-import com.smartor.domain.ServiceSubTaskDetailReq;
-import com.smartor.domain.ServiceSubtask;
-import com.smartor.domain.ServiceSubtaskDetail;
+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.QuestionResultVO;
+import com.smartor.domain.entity.ServiceSubtaskEntity;
import com.smartor.service.IServiceSubtaskDetailService;
import com.smartor.service.IServiceSubtaskService;
import io.swagger.annotations.Api;
@@ -19,6 +23,9 @@
import org.springframework.web.bind.annotation.*;
import java.util.*;
+import java.util.stream.Collectors;
+
+import static com.ruoyi.framework.datasource.DynamicDataSourceContextHolder.log;
/**
* 璇煶浠诲姟缁撴灉鏄庣粏Controller
@@ -34,6 +41,9 @@
private IServiceSubtaskDetailService ServiceSubtaskDetailService;
@Autowired
private IServiceSubtaskService serviceSubtaskService;
+
+ @Autowired
+ private ISysConfigService configService;
/**
* 鏌ヨ鍗曚釜浜虹殑璇煶淇℃伅
@@ -154,4 +164,74 @@
return success(ServiceSubtaskDetailService.countPatByTarget(targetid));
}
+
+ /**
+ * 鑾峰彇闅忚璇︽儏-鎸囨爣璇︽儏(瓒呴摼鎺�)
+ */
+ @ApiOperation("鑾峰彇闅忚璇︽儏-鎸囨爣璇︽儏")
+ @PostMapping("/getServiceSubtaskDetails")
+ public List<Map<String, Object>> getServiceSubtaskDetails(@RequestBody ServiceSubtaskDetailVO serviceSubtaskDetailVO) {
+ List<Map<String, Object>> map = new ArrayList<>();
+ map = ServiceSubtaskDetailService.getServiceSubtaskDetails(serviceSubtaskDetailVO);
+ return map;
+ }
+
+ /**
+ * 鑾峰彇闅忚璇︽儏-鎸囨爣璇︽儏(瓒呴摼鎺�)
+ */
+ @ApiOperation("鑾峰彇闅忚璇︽儏-鎸囨爣璇︽儏(瓒呴摼鎺�)")
+ @PostMapping("/getServiceSubtaskDetailsHyperlink")
+ public List<Map<String, Object>> getServiceSubtaskDetailsHyperlink(@RequestBody ServiceSubtaskDetailVO serviceSubtaskDetailVO) {
+ LoginUser loginUser = getLoginUser();
+ String orgid = loginUser.getUser().getOrgid();
+ String configKey = serviceSubtaskDetailVO.getConfigKey();
+ if (StringUtils.isNotEmpty(configKey)) {
+ String configValue = configService.selectConfigByKey(configKey, orgid);
+ serviceSubtaskDetailVO.setConfigValue(configValue);
+ if (StringUtils.isEmpty(configValue)) {
+ String logInfo = "getSfStatisticsCount-鍙傛暟 " + configKey + " 鏈厤缃�, 璇烽厤缃ソ鍚庨噸璇�";
+ log.error(logInfo);
+ }
+ }
+ List<Map<String, Object>> map = new ArrayList<>();
+ 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);
+ }
}
--
Gitblit v1.9.3