From f0a09ee996ab2605869844d6a3d812709e2bf0fa Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 16 十月 2026 16:07:25 +0800
Subject: [PATCH] 任务模块、电话模块
---
ruoyi-task/src/main/java/com/ruoyi/task/controller/ServiceSubtaskController.java | 160 +++++++++++++++++++++--------------------------------
1 files changed, 63 insertions(+), 97 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java b/ruoyi-task/src/main/java/com/ruoyi/task/controller/ServiceSubtaskController.java
similarity index 90%
rename from ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
rename to ruoyi-task/src/main/java/com/ruoyi/task/controller/ServiceSubtaskController.java
index df90895..ae47d97 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
+++ b/ruoyi-task/src/main/java/com/ruoyi/task/controller/ServiceSubtaskController.java
@@ -1,4 +1,4 @@
-package com.ruoyi.web.controller.smartor;
+package com.ruoyi.task.controller;
import com.alibaba.fastjson.JSON;
import com.github.pagehelper.ISelect;
@@ -19,18 +19,12 @@
import com.ruoyi.common.utils.*;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.utils.reflect.ReflectUtils;
-import com.ruoyi.quartz.service.ICollectHISService;
-import com.ruoyi.quartz.task.RyTask;
-import com.ruoyi.system.service.ISysConfigService;
-import com.ruoyi.system.service.ISysUserDeptService;
+import com.ruoyi.common.core.service.TaskOpsTriggerApi;
+import com.ruoyi.task.api.spi.TaskSysConfigPort;
+import com.ruoyi.task.api.spi.TaskSysUserDeptPort;
import com.ruoyi.satisfaction.api.SatisfactionExportBundle;
import com.ruoyi.satisfaction.api.SatisfactionFacade;
-import com.smartor.domain.*;
-import com.smartor.domain.VO.*;
-import com.smartor.domain.entity.ServiceSubtaskEntity;
-import com.smartor.service.IServiceSubtaskRecordService;
-import com.smartor.service.IServiceSubtaskService;
-import com.smartor.service.IServiceTaskService;
+import com.ruoyi.task.api.spi.TaskSubtaskRecordPort;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
@@ -51,9 +45,35 @@
import com.ruoyi.template.domain.VO.HeLibraryCountVO;
import static com.ruoyi.common.utils.SecurityUtils.getLoginUser;
+import com.ruoyi.task.domain.entity.ServiceSubtaskEntity;
+import com.ruoyi.task.domain.ServiceStatisticsRequest;
+import com.ruoyi.task.domain.ServiceStatisticsResponse;
+import com.ruoyi.task.domain.ServiceSubtask;
+import com.ruoyi.task.domain.ServiceSubtaskCountReq;
+import com.ruoyi.task.domain.ServiceSubtaskRecord;
+import com.ruoyi.task.domain.ServiceSubtaskStatistic;
+import com.ruoyi.task.domain.ServiceTask;
+import com.ruoyi.task.domain.VO.ServiceSubtaskCotinueCountVO;
+import com.ruoyi.task.service.IServiceSubtaskService;
+import com.ruoyi.task.service.IServiceTaskService;
+import com.ruoyi.task.domain.PatArchiveSrmVO;
+import com.ruoyi.task.domain.ServiceSubTaskDetailReq;
+import com.ruoyi.task.domain.ServiceSubtaskDiagname;
+import com.ruoyi.task.domain.ServiceSubtaskRes;
+import com.ruoyi.task.domain.ServiceSubtaskTemplateVO;
+import com.ruoyi.task.domain.ServiceTaskVO;
+import com.ruoyi.task.domain.VO.ServiceSubtaskVO;
+import com.ruoyi.task.domain.VO.TransferDeptVO;
+import com.ruoyi.task.domain.ServiceSubtaskExport;
/**
* 鍗曚竴浠诲姟锛堥殢璁匡級Controller
+ * <p>
+ * 鈿狅笍 鐢佃瘽鐩稿叧鐨� 6 涓鐐癸紙phoneCallBack / phoneCallBackYQ / taskPull /
+ * saveQuestionAnswerPhone / recordAcceptshanghai / recordAccept锛夊凡闅忕數璇濇ā鍧楀寲
+ * 鏁翠綋鎼繘 {@code ruoyi-phone} 鐨� {@code PhoneCallbackController}锛�<b>URL 淇濇寔涓嶅彉</b>
+ * 锛堝閮ㄧ數璇濆钩鍙扮殑鍥炶皟鍦板潃涓嶈兘鏀癸級锛屽洜姝ゆ湰 Controller 涓庣數璇濇ā鍧楀叡鐢�
+ * {@code /smartor/serviceSubtask} 杩欎竴鍓嶇紑锛屽彧瑕佸畬鏁磋矾寰勪笉閲嶅鍗冲彲姝e父娉ㄥ唽銆�
*
* @author ruoyi
* @date 2024-02-02
@@ -84,19 +104,28 @@
private IServiceTaskService serviceTaskService;
@Autowired
- private ISysUserDeptService sysUserDeptService;
+ private TaskSysUserDeptPort taskSysUserDeptPort;
@Autowired
- private IServiceSubtaskRecordService serviceSubtaskRecordService;
+ private TaskSubtaskRecordPort serviceSubtaskRecordService;
@Autowired
- private ISysConfigService configService;
+ private TaskSysConfigPort taskSysConfigPort;
+ /**
+ * 浠诲姟杩愮淮瑙﹀彂鑳藉姏銆�
+ * <p>
+ * 鍘熷厛姝ゅ鐩存帴娉ㄥ叆 {@code ruoyi-quartz} 鐨� {@code RyTask} / {@code ICollectHISService}锛�
+ * 浼氳銆岀鐐瑰綊灞炪�嶄笌銆孒IS 閲囬泦瀹炵幇銆嶇粦姝伙細杩� 6 涓鐐圭殑褰掑睘瑕佹惉杩� {@code ruoyi-task}锛�
+ * 鑰屽疄鐜帮紙{@code RyTask} 2214 琛屻�佹敞鍏ョ害 20 涓� smartor service锛変笉鑳芥惉锛�
+ * 鍚﹀垯褰㈡垚 {@code ruoyi-task -> smartor} + {@code ruoyi-quartz -> ruoyi-task} 鐨勭‖寰幆銆�
+ * <p>
+ * 鏀逛负缁� {@code ruoyi-common} 鐨勭鍙e彇鐢細鎺ュ彛鍦� ruoyi-common锛�
+ * 瀹炵幇锛坽@code TaskOpsTriggerApiImpl}锛夌暀鍦� ruoyi-quartz銆�
+ * 杩欐牱绔偣鍙互鏁翠綋鎼蛋鑰�<b>涓嶉渶瑕�</b>渚濊禆 ruoyi-quartz銆�
+ */
@Autowired
- private RyTask ryTask;
-
- @Autowired
- private ICollectHISService collectHISService;
+ private TaskOpsTriggerApi taskOpsTriggerApi;
@Value("${spring.profiles.active}")
private String active;
@@ -478,69 +507,6 @@
}
/**
- * 鐢佃瘽鍥炶皟浠诲姟(涓婃捣)
- */
- @ApiOperation("鐢佃瘽鍥炶皟浠诲姟")
- @PostMapping("/phoneCallBack")
- public AjaxResult phoneCallBack(@RequestBody PhoneCallBackVO phoneCallBackVO) {
- serviceSubtaskService.phoneCallBack(phoneCallBackVO);
- return success();
- }
-
- @ApiOperation("鐢佃瘽ASR閫氳瘽鍥炶皟(闆ㄧ划)")
- @PostMapping("/phoneCallBackYQ")
- public PhoneCallBackYQVO phoneCallBackYQ(@RequestBody PhoneCallReqYQVO phoneCallReqYQVO) {
- log.info("鐢佃瘽ASR閫氳瘽鍥炶皟(闆ㄧ划) 锛焮}", phoneCallReqYQVO);
- PhoneCallBackYQVO phoneCallBackYQVO = serviceSubtaskService.phoneCallBackYQ(phoneCallReqYQVO);
- return phoneCallBackYQVO;
- }
-
- /**
- * 鐢佃瘽浠诲姟鎷夊彇(闆ㄧ划)
- */
- @ApiOperation("鐢佃瘽浠诲姟鎷夊彇(闆ㄧ划)")
- @PostMapping("/taskPull")
- public List<PullTaskVO> taskPull() {
- log.info("鐢佃瘽浠诲姟鎷夊彇(闆ㄧ划)");
- List<PullTaskVO> pullTaskVOList = serviceSubtaskService.taskPull();
- log.info("鐢佃瘽浠诲姟鎷夊彇鏁版嵁(闆ㄧ划):{}", pullTaskVOList);
- return pullTaskVOList;
- }
-
- /**
- * 鎮h�呴棶棰樼粨鏋滆褰�
- */
- @ApiOperation("鎮h�呴棶棰樼粨鏋滆褰曪紙鐢佃瘽锛�")
- @PostMapping("/saveQuestionAnswerPhone")
- public AjaxResult saveQuestionAnswerPhone(@RequestBody ServiceSubTaskDetailReq serviceSubTaskDetailReq) {
-// SysUser user = getLoginUser().getUser();
-// serviceSubTaskDetailReq.setOrgid(user.getOrgid());
- log.info("鎮h�呴棶棰樼粨鏋滆褰�(鐢佃瘽):{}", serviceSubTaskDetailReq);
- return toAjax(serviceSubtaskService.saveQuestionAnswerPhone(serviceSubTaskDetailReq));
- }
-
- /**
- * 閫氳瘽璁板綍鍥炶皟
- */
- @ApiOperation("閫氳瘽璁板綍鍥炶皟(涓婃捣)")
- @PostMapping("/recordAcceptshanghai")
- public AjaxResult recordAccepshanghait(@RequestBody ServiceSubTaskDetailReq serviceSubTaskDetailReq) {
- log.info("閫氳瘽璁板綍鍥炶皟(涓婃捣):{}", serviceSubTaskDetailReq);
- return toAjax(serviceSubtaskService.saveQuestionAnswerPhone(serviceSubTaskDetailReq));
- }
-
- /**
- * 閫氳瘽璁板綍鍥炶皟
- */
- @ApiOperation("閫氳瘽璁板綍鍥炶皟(闆ㄧ划)")
- @PostMapping("/recordAccept")
- public AjaxResult recordAccept(@RequestBody PhoneCallRecordVO phoneCallRecordVO) {
- log.info("閫氳瘽璁板綍鍥炶皟(闆ㄧ划):{}", phoneCallRecordVO);
- serviceSubtaskService.recordAccept(phoneCallRecordVO);
- return success();
- }
-
- /**
* 鑾峰彇姣忎釜鏈堢殑闅忚銆佸璇婇噺
*/
@ApiOperation("鑾峰彇姣忎釜鏈堢殑闅忚銆佸璇婇噺")
@@ -577,7 +543,7 @@
sysUserWard.setOrgid(user.getOrgid());
sysUserWard.setCampusid(user.getCampusid());
sysUserWard.setDeptType("2");
- List<SysUserDept> wardList = sysUserDeptService.selectSysUserDeptList(sysUserWard);
+ List<SysUserDept> wardList = taskSysUserDeptPort.selectSysUserDeptList(sysUserWard);
if (CollectionUtils.isNotEmpty(wardList)) {
leavehospitaldistrictcodes = wardList.stream().map(SysUserDept::getDeptCode).collect(Collectors.toList());
}
@@ -592,7 +558,7 @@
sysUserDept.setOrgid(user.getOrgid());
sysUserDept.setCampusid(user.getCampusid());
sysUserDept.setDeptType("1");
- List<SysUserDept> deptList = sysUserDeptService.selectSysUserDeptList(sysUserDept);
+ List<SysUserDept> deptList = taskSysUserDeptPort.selectSysUserDeptList(sysUserDept);
if (CollectionUtils.isNotEmpty(deptList)) {
deptCodes = deptList.stream().map(SysUserDept::getDeptCode).collect(Collectors.toList());
}
@@ -602,7 +568,7 @@
}
}
- String followUpCountStyle = configService.selectConfigByKey("followUpCountStyle", serviceSubtaskCountReq.getOrgid());
+ String followUpCountStyle = taskSysConfigPort.selectConfigValue("followUpCountStyle", serviceSubtaskCountReq.getOrgid());
if (ObjectUtils.isNotEmpty(followUpCountStyle)) {
serviceSubtaskCountReq.setFollowUpCountStyle(followUpCountStyle);
} else {
@@ -627,7 +593,7 @@
Integer offset = PageUtils.getOffset(serviceSubtaskCountReq.getPageNum(), serviceSubtaskCountReq.getPageSize());
serviceSubtaskCountReq.setPageNum(offset);
- String followUpCountStyle = configService.selectConfigByKey("followUpCountStyle", serviceSubtaskCountReq.getOrgid());
+ String followUpCountStyle = taskSysConfigPort.selectConfigValue("followUpCountStyle", serviceSubtaskCountReq.getOrgid());
if (ObjectUtils.isNotEmpty(followUpCountStyle)) {
serviceSubtaskCountReq.setFollowUpCountStyle(followUpCountStyle);
} else {
@@ -739,7 +705,7 @@
String orgid = loginUser.getUser().getOrgid();
String configKey = serviceSubtaskCountReq.getConfigKey();
if (StringUtils.isNotEmpty(configKey)) {
- String configValue = configService.selectConfigByKey(configKey, orgid);
+ String configValue = taskSysConfigPort.selectConfigValue(configKey, orgid);
serviceSubtaskCountReq.setConfigValue(configValue);
if (StringUtils.isEmpty(configValue)) {
String logInfo = "getSfStatisticsCount-鍙傛暟 " + configKey + " 鏈厤缃�, 璇烽厤缃ソ鍚庨噸璇�";
@@ -748,7 +714,7 @@
}
}
- String followUpCountStyle = configService.selectConfigByKey("followUpCountStyle", orgid);
+ String followUpCountStyle = taskSysConfigPort.selectConfigValue("followUpCountStyle", orgid);
if (ObjectUtils.isNotEmpty(followUpCountStyle)) {
serviceSubtaskCountReq.setFollowUpCountStyle(followUpCountStyle);
} else {
@@ -788,7 +754,7 @@
}
String configKey = serviceSubtaskCountReq.getConfigKey();
if (StringUtils.isNotEmpty(configKey)) {
- String configValue = configService.selectConfigByKey(configKey, serviceSubtaskCountReq.getOrgid());
+ String configValue = taskSysConfigPort.selectConfigValue(configKey, serviceSubtaskCountReq.getOrgid());
serviceSubtaskCountReq.setConfigValue(configValue);
if (StringUtils.isEmpty(configValue)) {
String logInfo = "getSfStatisticsCount-鍙傛暟 " + configKey + " 鏈厤缃�, 璇烽厤缃ソ鍚庨噸璇�";
@@ -814,7 +780,7 @@
//澶嶈瘖缁熻
String configKey = serviceSubtaskCountReq.getConfigKey();
if (StringUtils.isNotEmpty(configKey)) {
- String configValue = configService.selectConfigByKey(configKey, serviceSubtaskCountReq.getOrgid());
+ String configValue = taskSysConfigPort.selectConfigValue(configKey, serviceSubtaskCountReq.getOrgid());
if (StringUtils.isEmpty(configValue)) {
String logInfo = "getSfStatisticsCountDetails-鍙傛暟 " + configKey + " 鏈厤缃�, 璇烽厤缃ソ鍚庨噸璇�";
log.error(logInfo);
@@ -870,13 +836,13 @@
sysUserDept.setOrgid(sysUser.getOrgid());
sysUserDept.setCampusid(sysUser.getCampusid());
sysUserDept.setDeptType("1");
- List<SysUserDept> sysUserDepts = sysUserDeptService.selectSysUserDeptList(sysUserDept);
+ List<SysUserDept> sysUserDepts = taskSysUserDeptPort.selectSysUserDeptList(sysUserDept);
SysUserDept sysUserWard = new SysUserDept();
sysUserWard.setUserId(sysUser.getUserId());
sysUserWard.setOrgid(sysUser.getOrgid());
sysUserWard.setCampusid(sysUser.getCampusid());
sysUserWard.setDeptType("2");
- List<SysUserDept> sysUserWards = sysUserDeptService.selectSysUserDeptList(sysUserWard);
+ List<SysUserDept> sysUserWards = taskSysUserDeptPort.selectSysUserDeptList(sysUserWard);
List<String> deptCodes = sysUserDepts.stream().map(SysUserDept::getDeptCode).collect(Collectors.toList());
List<String> wardCodes = sysUserWards.stream().map(SysUserDept::getDeptCode).collect(Collectors.toList());
ServiceSubtaskEntity entity = new ServiceSubtaskEntity();
@@ -953,7 +919,7 @@
public AjaxResult syncMedInhospForShiyi(@RequestParam("startTime") String startTime, @RequestParam("endTime") String endTime) {
// 绔嬪嵆杩斿洖锛屽悗鍙板紓姝ユ墽琛�
CompletableFuture.runAsync(() -> {
- collectHISService.syncMedInhosp(startTime, endTime);
+ taskOpsTriggerApi.syncMedInhosp(startTime, endTime);
});
return AjaxResult.success("鍚屾浠诲姟宸插惎鍔紝璇风◢鍚庢煡鐪嬬粨鏋�");
}
@@ -961,14 +927,14 @@
@PostMapping("/syncMedInhospForShiyiYesterday")
public AjaxResult syncMedInhospForShiyiYesterday() {
// 绔嬪嵆杩斿洖锛屽悗鍙板紓姝ユ墽琛�
- ryTask.collectHISYesterday();
+ taskOpsTriggerApi.collectHISYesterday();
return AjaxResult.success("鍚屾浠诲姟宸插惎鍔紝璇风◢鍚庢煡鐪嬬粨鏋�");
}
@PostMapping("/syncMedInhospForShiyiDaysBefore")
public AjaxResult syncMedInhospForShiyiDaysBefore(@RequestParam("day") Long day) {
// 绔嬪嵆杩斿洖锛屽悗鍙板紓姝ユ墽琛�
- ryTask.collectHISDaysBefore(day);
+ taskOpsTriggerApi.collectHISDaysBefore(day);
return AjaxResult.success("銆恈ollectHISDaysBefore銆戝悓姝ヤ换鍔″凡鍚姩锛屽ぉ鏁颁负" + day + "澶╋紝璇风◢鍚庢煡鐪嬬粨鏋�");
}
@@ -976,7 +942,7 @@
public AjaxResult syncMedOperForShiyi(@RequestParam("startTime") String startTime, @RequestParam("endTime") String endTime) {
// 绔嬪嵆杩斿洖锛屽悗鍙板紓姝ユ墽琛�
CompletableFuture.runAsync(() -> {
- collectHISService.syncOper(startTime, endTime);
+ taskOpsTriggerApi.syncOper(startTime, endTime);
});
return AjaxResult.success("鍚屾浠诲姟宸插惎鍔紝璇风◢鍚庢煡鐪嬬粨鏋�");
}
@@ -984,13 +950,13 @@
@PostMapping("/dealSubtaskDeadline")
public AjaxResult dealSubtaskDeadline(@RequestParam("orgid") String orgid, @RequestParam("day") Integer day) {
// 绔嬪嵆杩斿洖锛屽悗鍙板紓姝ユ墽琛�
- ryTask.dealSubtaskDeadline(orgid, day);
+ taskOpsTriggerApi.dealSubtaskDeadline(orgid, day);
return AjaxResult.success("銆恉ealSubtaskDeadline銆戝悓姝ヤ换鍔″凡鍚姩锛屽ぉ鏁颁负" + day + "澶╋紝璇风◢鍚庢煡鐪嬬粨鏋�");
}
@PostMapping("/sendExceptInfo")
public AjaxResult sendExceptInfo() throws Exception {
- ryTask.sendExceptInfo();
+ taskOpsTriggerApi.sendExceptInfo();
return AjaxResult.success("sendExceptInfo");
}
--
Gitblit v1.9.3