From 459aa78c84cf552ebea6ef056d978c2531d71ac8 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 06 三月 2026 17:14:27 +0800
Subject: [PATCH] 代码提交
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java | 114 +++++++++++++++++++++++++++++++++++----------------------
1 files changed, 70 insertions(+), 44 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 656e410..c24c121 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
@@ -22,8 +22,11 @@
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.utils.reflect.ReflectUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
+import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.service.ISysConfigService;
import com.smartor.domain.*;
+import com.smartor.domain.VO.ServiceSubtaskVO;
+import com.smartor.domain.entity.ServiceSubtaskEntity;
import com.smartor.mapper.PatMedInhospMapper;
import com.smartor.mapper.PatMedOuthospMapper;
import com.smartor.service.IServiceSubtaskRecordService;
@@ -85,19 +88,27 @@
* 鏌ヨ鎮h�呴殢璁夸俊鎭�
*/
@ApiOperation("鏌ヨ鎮h�呴殢璁夸俊鎭�")
- //@PreAuthorize("@ss.hasPermi('system:taskcall:list')")
-// @Cacheable(value = "patItem", key = "T(org.springframework.util.DigestUtils).md5DigestAsHex(#serviceSubtaskVO.toString().getBytes())", unless = "#result == null or #result.isEmpty()")
@PostMapping("/patItem")
- public TableDataInfo patItem(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
- PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
- List<ServiceSubtask> serviceSubtaskList = null;
+ public Map<String, Object> patItem(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
+// if (serviceSubtaskVO.getLeavehospitaldistrictcodes() != null && serviceSubtaskVO.getLeavehospitaldistrictcodes().size() > 10) {
+// throw new BaseException("鐥呭尯鏌ヨ鏁伴噺涓嶈兘瓒呰繃10涓�");
+// }
+// if (serviceSubtaskVO.getLeaveldeptcodes() != null && serviceSubtaskVO.getLeaveldeptcodes().size() > 10) {
+// throw new BaseException("绉戝鏌ヨ鏁伴噺涓嶈兘瓒呰繃10涓�");
+// }
+
+ serviceSubtaskVO.setPageNum(PageUtils.getOffset(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize()));
+ List<ServiceSubtaskRes> serviceSubtaskList = null;
LoginUser loginUser = getLoginUser();
SysUser user = loginUser.getUser();
serviceSubtaskVO.setOrgid(user.getOrgid());
+ ServiceSubtaskEntity serviceSubtaskEntity = null;
if (serviceSubtaskVO != null) {
- serviceSubtaskList = serviceSubtaskService.patItem(serviceSubtaskVO);
+ serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+ serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+ serviceSubtaskList = serviceSubtaskService.patItem(serviceSubtaskEntity);
}
- for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
+ for (ServiceSubtaskRes serviceSubtask : serviceSubtaskList) {
ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId());
serviceSubtaskRecord.setOrgid(serviceSubtask.getOrgid());
@@ -110,21 +121,16 @@
}
// patItemCount 璋冪敤redisCache璁板綍缁熻鏁版嵁
-// Map<String, Object> map = patItemCount(serviceSubtaskVO);
- Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskVO);
+ Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskEntity);
map.put("serviceSubtaskList", serviceSubtaskList);
List<Map<String, Object>> list = new ArrayList<>();
list.add(map);
- //鑾峰彇total
- long total = PageUtils.count(new ISelect() {
- @Override
- public void doSelect() {
- serviceSubtaskVO.setPageNum(null);
- serviceSubtaskVO.setPageSize(null);
- serviceSubtaskService.patItem(serviceSubtaskVO);
- }
- });
- return getDataTable2(total, list);
+
+ serviceSubtaskVO.setPageNum(null);
+ serviceSubtaskVO.setPageSize(null);
+ List<ServiceSubtaskRes> serviceSubtasks = serviceSubtaskService.patItem(serviceSubtaskEntity);
+
+ return getDataTable3(CollectionUtils.isNotEmpty(serviceSubtasks) ? serviceSubtasks.size() : 0L, list);
}
/**
@@ -135,6 +141,10 @@
@PostMapping("/patItemCount")
public Map<String, Object> patItemCount(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
Map<String, Object> map = new HashMap<>();
+
+ ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+ serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+
// 閫氳繃redis璁板綍缁撴灉
Map<String, Object> redisMap = new HashMap<>();
LoginUser loginUser = getLoginUser();
@@ -150,11 +160,11 @@
redisMap = redisCache.getCacheObject(userId + "patItemCount");
//璁板綍鏄惁鏈夊彲鐢ㄧ紦瀛�
Boolean redisFlag = false;
- ServiceSubtaskVO oldCondition = null;
+ ServiceSubtaskEntity oldCondition = null;
if (MapUtils.isNotEmpty(redisMap)) {
- oldCondition = (ServiceSubtaskVO) redisMap.get("searchCondition");
+ oldCondition = (ServiceSubtaskEntity) redisMap.get("searchCondition");
// 姣旇緝鏌ヨ鏉′欢鏄惁涓�鑷�
- if (ObjectUtils.isNotEmpty(oldCondition) && isSameCondition(oldCondition, serviceSubtaskVO)) {
+ if (ObjectUtils.isNotEmpty(oldCondition) && isSameCondition(oldCondition, serviceSubtaskEntity)) {
// 鏉′欢涓�鑷达紝浣跨敤缂撳瓨
redisFlag = true;
map = redisMap;
@@ -164,8 +174,8 @@
// 濡傛灉娌℃湁缂撳瓨鎴栬�呮潯浠朵笉涓�鑷达紝閲嶆柊鏌ヨ
if (!redisFlag) {
- map = serviceSubtaskService.patItemCount(serviceSubtaskVO);
- map.put("searchCondition", serviceSubtaskVO);
+ map = serviceSubtaskService.patItemCount(serviceSubtaskEntity);
+ map.put("searchCondition", serviceSubtaskEntity);
redisCache.setCacheObject(userId + "patItemCount", map, 120, TimeUnit.MINUTES);
}
}
@@ -178,7 +188,7 @@
* 姣旇緝涓や釜ServiceSubtaskVO鐨勬煡璇㈡潯浠舵槸鍚︿竴鑷�
* 浣跨敤鍙嶅皠姣旇緝鎵�鏈夊瓧娈碉紝鎺掗櫎鍒嗛〉鍙傛暟鍜屾棤鍏冲瓧娈�
*/
- private boolean isSameCondition(ServiceSubtaskVO oldCondition, ServiceSubtaskVO newCondition) {
+ private boolean isSameCondition(ServiceSubtaskEntity oldCondition, ServiceSubtaskEntity newCondition) {
// 浣跨敤ReflectUtils鐨勯�氱敤鏂规硶姣旇緝锛屾帓闄ゅ垎椤靛弬鏁扮瓑鏃犲叧瀛楁
return ReflectUtils.equalsAllFields(oldCondition, newCondition,
// 鎺掗櫎鐨勫瓧娈碉細鍒嗛〉鍙傛暟銆佸簭鍒楀寲ID銆佹椂闂存埑绛�
@@ -192,8 +202,8 @@
//@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
@Log(title = "鍗曚竴浠诲姟锛堥殢璁垮鏁欙級", businessType = BusinessType.EXPORT)
@PostMapping("/patItemExport")
- public void patItemExport(HttpServletResponse response, ServiceSubtaskVO serviceSubtaskVO) {
- List<ServiceSubtask> serviceSubtaskList = null;
+ public void patItemExport(HttpServletResponse response, ServiceSubtaskEntity serviceSubtaskVO) {
+ List<ServiceSubtaskRes> serviceSubtaskList = null;
if (serviceSubtaskVO != null) {
if (serviceSubtaskVO.getPageNum() != null && serviceSubtaskVO.getPageSize() != null)
PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
@@ -222,9 +232,12 @@
@PostMapping("/patItemByCondition")
public TableDataInfo patItemByCondition(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
List<ServiceSubtask> serviceSubtaskList = null;
- if (serviceSubtaskVO != null) {
- PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
- serviceSubtaskList = serviceSubtaskService.patItem2(serviceSubtaskVO);
+ ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+ serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+ if (serviceSubtaskEntity != null) {
+ PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize());
+
+ serviceSubtaskList = serviceSubtaskService.patItem2(serviceSubtaskEntity);
}
for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
@@ -234,7 +247,7 @@
}
// patItemCount 璋冪敤redisCache璁板綍缁熻鏁版嵁
// Map<String, Object> map = patItemCount(serviceSubtaskVO);
- Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskVO);
+ Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskEntity);
map.put("serviceSubtaskList", serviceSubtaskList);
List<Map<String, Object>> list = new ArrayList<>();
@@ -245,7 +258,7 @@
public void doSelect() {
serviceSubtaskVO.setPageNum(null);
serviceSubtaskVO.setPageSize(null);
- serviceSubtaskService.patItem2(serviceSubtaskVO);
+ serviceSubtaskService.patItem2(serviceSubtaskEntity);
}
});
return getDataTable2(total, list);
@@ -258,7 +271,7 @@
@Log(title = "鍗曚竴浠诲姟锛堥殢璁垮鏁欙級", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, ServiceSubtask serviceSubtask) {
- ServiceSubtaskVO serviceSubtaskVO = DtoConversionUtils.sourceToTarget(serviceSubtask, ServiceSubtaskVO.class);
+ ServiceSubtaskEntity serviceSubtaskVO = DtoConversionUtils.sourceToTarget(serviceSubtask, ServiceSubtaskEntity.class);
List<ServiceSubtask> list = serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO);
ExcelUtil<ServiceSubtask> util = new ExcelUtil<ServiceSubtask>(ServiceSubtask.class);
util.exportExcel(response, list, "鍗曚竴浠诲姟锛堥殢璁匡級鏁版嵁");
@@ -271,9 +284,11 @@
@AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
@PostMapping("/querySubtaskList")
public AjaxResult querySubtaskList(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
- PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
- serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO);
- return success(serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO));
+ ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+ serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+ PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize());
+ serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskEntity);
+ return success(serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskEntity));
}
@@ -284,9 +299,11 @@
@Log(title = "鍐嶆闅忚鏁版嵁鏌ヨ", businessType = BusinessType.EXPORT)
@PostMapping("/querySubtaskListAgain")
public TableDataInfo querySubtaskListAgain(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
- PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
- serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskVO);
- return getDataTable(serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskVO));
+ ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+ serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+ PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize());
+ serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskEntity);
+ return getDataTable(serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskEntity));
}
@@ -399,9 +416,10 @@
@ApiOperation("鏍规嵁鏉′欢鏌ヨ浠诲姟淇℃伅")
@AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
@PostMapping("/queryTaskByCondition")
- public AjaxResult queryTaskByCondition(@RequestBody ServiceSubtaskVO ivrTaskcallVO) {
+ public AjaxResult queryTaskByCondition(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
//鏍规嵁鍏ュ弬鏌ヨ淇℃伅
- ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(ivrTaskcallVO, ServiceSubtask.class);
+ ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtask.class);
+ serviceSubtask.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
ServiceTaskVO ivrTaskVO = serviceSubtaskService.queryTaskByCondition(serviceSubtask);
return success(ivrTaskVO);
}
@@ -444,6 +462,7 @@
public AjaxResult saveQuestionAnswerPhone(@RequestBody ServiceSubTaskDetailReq serviceSubTaskDetailReq) {
// SysUser user = getLoginUser().getUser();
// serviceSubTaskDetailReq.setOrgid(user.getOrgid());
+ log.info("鎮h�呴棶棰樼粨鏋滆褰�(鐢佃瘽):{}", serviceSubTaskDetailReq);
return toAjax(serviceSubtaskService.saveQuestionAnswerPhone(serviceSubTaskDetailReq));
}
@@ -453,6 +472,7 @@
@ApiOperation("閫氳瘽璁板綍鍥炶皟(涓婃捣)")
@PostMapping("/recordAcceptshanghai")
public AjaxResult recordAccepshanghait(@RequestBody ServiceSubTaskDetailReq serviceSubTaskDetailReq) {
+ log.info("閫氳瘽璁板綍鍥炶皟(涓婃捣):{}", serviceSubTaskDetailReq);
return toAjax(serviceSubtaskService.saveQuestionAnswerPhone(serviceSubTaskDetailReq));
}
@@ -486,6 +506,12 @@
public AjaxResult getSfStatistics(@RequestBody ServiceSubtaskCountReq serviceSubtaskCountReq) {
if (CollectionUtils.isEmpty(serviceSubtaskCountReq.getServiceType())) {
return error("鏈嶅姟绫诲瀷涓嶈兘涓虹┖");
+ }
+ String followUpCountStyle = configService.selectConfigByKey("followUpCountStyle", serviceSubtaskCountReq.getOrgid());
+ if (ObjectUtils.isNotEmpty(followUpCountStyle)) {
+ serviceSubtaskCountReq.setFollowUpCountStyle(followUpCountStyle);
+ } else {
+ serviceSubtaskCountReq.setFollowUpCountStyle("1");
}
return success(serviceSubtaskService.getSfStatistics(serviceSubtaskCountReq));
}
@@ -564,7 +590,7 @@
}
String configKey = serviceSubtaskCountReq.getConfigKey();
if (StringUtils.isNotEmpty(configKey)) {
- String configValue = configService.selectConfigByKey(configKey);
+ String configValue = configService.selectConfigByKey(configKey, serviceSubtaskCountReq.getOrgid());
serviceSubtaskCountReq.setConfigValue(configValue);
if (StringUtils.isEmpty(configValue)) {
String logInfo = "getSfStatisticsCount-鍙傛暟 " + configKey + " 鏈厤缃�, 璇烽厤缃ソ鍚庨噸璇�";
@@ -586,11 +612,10 @@
if (serviceSubtaskCountReq.getLeavehospitaldistrictcodes().size() == 0 && serviceSubtaskCountReq.getDeptcodes().size() == 0) {
return error("绉戝鎴栫梾鍖轰笉鑳戒负绌�");
}
- PageUtils.startPageByPost(serviceSubtaskCountReq.getPageNum(), serviceSubtaskCountReq.getPageSize());
//澶嶈瘖缁熻
String configKey = serviceSubtaskCountReq.getConfigKey();
if (StringUtils.isNotEmpty(configKey)) {
- String configValue = configService.selectConfigByKey(configKey);
+ String configValue = configService.selectConfigByKey(configKey, serviceSubtaskCountReq.getOrgid());
if (StringUtils.isEmpty(configValue)) {
String logInfo = "getSfStatisticsCountDetails-鍙傛暟 " + configKey + " 鏈厤缃�, 璇烽厤缃ソ鍚庨噸璇�";
log.error(logInfo);
@@ -606,6 +631,7 @@
LoginUser loginUser = getLoginUser();
String orgid = loginUser.getUser().getOrgid();
serviceSubtaskCountReq.setOrgid(orgid);
+ PageUtils.startPageByPost(serviceSubtaskCountReq.getPageNum(), serviceSubtaskCountReq.getPageSize());
return success(serviceSubtaskService.getSfStatisticsScriptDetails(serviceSubtaskCountReq));
}
--
Gitblit v1.9.3