From 4f1618f0df5c8ac19970f3bf0efa218b770cfb61 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 05 六月 2026 10:14:05 +0800
Subject: [PATCH] 【丽水】随访统计全部-修改
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java | 93 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 92 insertions(+), 1 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
index 48ab2da..5d702d7 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -1,6 +1,8 @@
package com.ruoyi.web.controller.smartor;
import com.github.pagehelper.ISelect;
+import com.google.gson.Gson;
+import com.google.gson.reflect.TypeToken;
import com.ruoyi.common.annotation.AddOrgId;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.constant.HttpStatus;
@@ -13,6 +15,7 @@
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.enums.PreachFormEnum;
+import com.ruoyi.common.enums.SendStateEnum;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
@@ -230,6 +233,10 @@
for (ServiceSubtaskExport serviceSubtaskExport : serviceSubtaskExports) {
String pf = PreachFormEnum.getDescByCode(serviceSubtaskExport.getPreachform());
serviceSubtaskExport.setPreachform(pf);
+ if(serviceSubtaskExport.getSendstate() != null) {
+ String stName = SendStateEnum.getDescByCode("" + serviceSubtaskExport.getSendstate());
+ serviceSubtaskExport.setStName(stName);
+ }
//璁$畻鍑洪櫌澶╂暟
if (!Objects.isNull(serviceSubtaskExport.getEndtime())) {
@@ -541,6 +548,33 @@
Integer offset = PageUtils.getOffset(serviceSubtaskCountReq.getPageNum(), serviceSubtaskCountReq.getPageSize());
serviceSubtaskCountReq.setPageNum(offset);
+ Integer statisticaltype = serviceSubtaskCountReq.getStatisticaltype();
+
+ if(ObjectUtils.isNotEmpty(statisticaltype)){
+ SysUser user = getLoginUser().getUser();
+ if(statisticaltype==1){
+ if(CollectionUtils.isEmpty(serviceSubtaskCountReq.getLeavehospitaldistrictcodes())){
+ //鍏ㄩ儴鐥呭尯
+ String hospInfo = user.getHospInfo();
+ Gson gson = new Gson();
+ // 3. 瀹氫箟 List 绫诲瀷锛堟牳蹇冿級
+ TypeToken<List<String>> typeToken = new TypeToken<List<String>>() {};
+ List<String> leavehospitaldistrictcodes = gson.fromJson(hospInfo, typeToken.getType());
+ serviceSubtaskCountReq.setLeavehospitaldistrictcodes(leavehospitaldistrictcodes);
+ }
+ }else if(statisticaltype==2){
+ if(CollectionUtils.isEmpty(serviceSubtaskCountReq.getDeptcodes())){
+ //鍏ㄩ儴绉戝
+ String deptInfo = user.getDeptInfo();
+ Gson gson = new Gson();
+ // 3. 瀹氫箟 List 绫诲瀷锛堟牳蹇冿級
+ TypeToken<List<String>> typeToken = new TypeToken<List<String>>() {};
+ List<String> deptCodes = gson.fromJson(deptInfo, typeToken.getType());
+ serviceSubtaskCountReq.setDeptcodes(deptCodes);
+ }
+ }
+ }
+
String followUpCountStyle = configService.selectConfigByKey("followUpCountStyle", serviceSubtaskCountReq.getOrgid());
if (ObjectUtils.isNotEmpty(followUpCountStyle)) {
serviceSubtaskCountReq.setFollowUpCountStyle(followUpCountStyle);
@@ -551,6 +585,31 @@
serviceSubtaskCountReq.setPageSize(null);
List<ServiceSubtaskStatistic> sfStatistics = serviceSubtaskService.getSfStatistics(serviceSubtaskCountReq);
return getDataTable4(CollectionUtils.isEmpty(sfStatistics) ? sfStatistics.size() : 0, serviceSubtaskService.getSfStatistics(serviceSubtaskCountReq));
+ }
+
+ /**
+ * 鑾峰彇涓撶梾闅忚缁熻姣斾緥
+ */
+ @ApiOperation("鑾峰彇涓撶梾闅忚缁熻姣斾緥")
+ @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
+ @PostMapping("/getSpecialSfStatistics")
+ public Map<String, Object> getSpecialSfStatistics(@RequestBody ServiceSubtaskCountReq serviceSubtaskCountReq) {
+ if (CollectionUtils.isEmpty(serviceSubtaskCountReq.getServiceType())) {
+ return error("鏈嶅姟绫诲瀷涓嶈兘涓虹┖");
+ }
+ Integer offset = PageUtils.getOffset(serviceSubtaskCountReq.getPageNum(), serviceSubtaskCountReq.getPageSize());
+ serviceSubtaskCountReq.setPageNum(offset);
+
+ String followUpCountStyle = configService.selectConfigByKey("followUpCountStyle", serviceSubtaskCountReq.getOrgid());
+ if (ObjectUtils.isNotEmpty(followUpCountStyle)) {
+ serviceSubtaskCountReq.setFollowUpCountStyle(followUpCountStyle);
+ } else {
+ serviceSubtaskCountReq.setFollowUpCountStyle("1");
+ }
+ serviceSubtaskCountReq.setPageNum(null);
+ serviceSubtaskCountReq.setPageSize(null);
+ List<ServiceSubtaskStatistic> sfStatistics = serviceSubtaskService.getSpecialSfStatistics(serviceSubtaskCountReq);
+ return getDataTable4(CollectionUtils.isEmpty(sfStatistics) ? sfStatistics.size() : 0, serviceSubtaskService.getSpecialSfStatistics(serviceSubtaskCountReq));
}
/**
@@ -635,12 +694,39 @@
* voiceAgainInfo - visitCount > 1 && currentPreachForm = "3"
* smsAgainInfo - visitCount > 1 && currentPreachForm = "4"
* wechatAgainInfo - visitCount > 1 && currentPreachForm = "5"
- * abnormalAgainInfo- visitCount = 1 && excep = "1"
+ * abnormalAgainInfo- visitCount > 1 && excep = "1"
+ * taskSituation1Info - taskSituation = 1
+ * taskSituation2Info - taskSituation = 2
+ * taskSituation3Info - taskSituation = 3
+ * taskSituation4Info - taskSituation = 4
+ * taskSituation5Info - taskSituation = 5
+ * taskSituation6Info - taskSituation = 7
+ * filterCountList - taskSituation = 6 && sendstate = 4
+ *
*/
@ApiOperation("鑾峰彇闅忚缁熻瓒呴摼鎺�")
@AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
@PostMapping("/getSfStatisticsHyperlink")
public AjaxResult getSfStatisticsHyperlink(@RequestBody ServiceSubtaskCountReq serviceSubtaskCountReq) {
+ LoginUser loginUser = getLoginUser();
+ String orgid = loginUser.getUser().getOrgid();
+ String configKey = serviceSubtaskCountReq.getConfigKey();
+ if (StringUtils.isNotEmpty(configKey)) {
+ String configValue = configService.selectConfigByKey(configKey, orgid);
+ serviceSubtaskCountReq.setConfigValue(configValue);
+ if (StringUtils.isEmpty(configValue)) {
+ String logInfo = "getSfStatisticsCount-鍙傛暟 " + configKey + " 鏈厤缃�, 璇烽厤缃ソ鍚庨噸璇�";
+ log.error(logInfo);
+ return error(logInfo);
+ }
+ }
+
+ String followUpCountStyle = configService.selectConfigByKey("followUpCountStyle", orgid);
+ if (ObjectUtils.isNotEmpty(followUpCountStyle)) {
+ serviceSubtaskCountReq.setFollowUpCountStyle(followUpCountStyle);
+ } else {
+ serviceSubtaskCountReq.setFollowUpCountStyle("1");
+ }
return success(serviceSubtaskService.getSfStatisticsHyperlink(serviceSubtaskCountReq));
}
@@ -797,4 +883,9 @@
public void syncMedInhospForShiyi(@RequestParam("startTime") String startTime, @RequestParam("endTime") String endTime) {
collectHISService.syncMedInhosp(startTime, endTime);
}
+
+ @PostMapping("/syncMedOperForShiyi")
+ public void syncMedOperForShiyi(@RequestParam("startTime") String startTime, @RequestParam("endTime") String endTime) {
+ collectHISService.syncOper(startTime, endTime);
+ }
}
--
Gitblit v1.9.3