From 508e7f069352e2d9f4d8acfaa45df5b613144327 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 20 十月 2026 14:55:41 +0800
Subject: [PATCH] 【丽水】处理超时随访任务
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 55 ++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 46 insertions(+), 9 deletions(-)
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
index 6ca2935..fae5ffb 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -324,7 +324,7 @@
log.info("銆恠endExceptInfo銆戝彂閫佷汉宸ュ彿锛歿}", dutyDeptPersonCode);
SysUser sysUser = new SysUser();
SysUser sysUserVo = new SysUser();
- sysUserVo.setUserCode(dutyDeptPersonCode);
+ sysUserVo.setUserName(dutyDeptPersonCode);
sysUserVo.setOrgid(serviceSubtaskDetailTrace.getOrgid());
List<SysUser> users = userService.getUserList(sysUserVo);
String phoneNumber = "";
@@ -923,6 +923,13 @@
serviceSubtaskList.addAll(compensateServiceSubtaskList);
}
for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
+ //currentPreachform涓虹┖锛岃鏄庤瀛愪换鍔¤繕娌℃湁鎵ц杩囦换浣曚竴绉嶅彂閫佹柟寮�(sendstate=1锛屽睘浜庨娆¤ˉ鍋�)锛�
+ //杩欓噷鐩存帴浜ょ粰sfHandlle澶勭悊锛屽畠浼氭寜sort=1鐨勭涓�绉嶅彂閫佹柟寮忓彂閫侊紝涓巊etSendPreachform涓殑澶勭悊淇濇寔涓�鑷�
+ if (StringUtils.isEmpty(serviceSubtask.getCurrentPreachform())) {
+ log.warn("銆恈ompensateTask銆憇ubid锛歿}锛宑urrentPreachform涓虹┖锛屾寜绗竴绉嶅彂閫佹柟寮忚ˉ鍋垮鐞�", serviceSubtask.getId());
+ sfHandlle(serviceSubtask);
+ continue;
+ }
//鏍规嵁褰撳墠鐨勬墽琛屾柟寮忥紝鑾峰彇涓嬩竴绉嶆墽琛屾柟寮�
ServiceSubtaskPreachform serviceSubtaskPreachform = new ServiceSubtaskPreachform();
serviceSubtaskPreachform.setTaskid(serviceSubtask.getTaskid());
@@ -1131,7 +1138,7 @@
} else {
sysConfig = sysConfigMapper.checkConfigKeyUnique("wj.sms.template");
}
- if (!Objects.isNull(sysConfig)) {
+ if (!Objects.isNull(sysConfig) && StringUtils.isNotEmpty(sysConfig.getConfigValue())) {
String smsContemt = sysConfig.getConfigValue();
// sendMagParam.setContent("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "濉啓銆傛劅璋㈡偍閰嶅悎锛�");
sendMagParam.setContent(smsContemt.replace("${wjurl}", sendMagParam.getUrl()));
@@ -1145,7 +1152,7 @@
sendMagParam.setUrl(url);
SysConfig sysConfig = sysConfigMapper.checkConfigKeyUnique("xj.sms.template");
- if (!Objects.isNull(sysConfig)) {
+ if (!Objects.isNull(sysConfig) && StringUtils.isNotEmpty(sysConfig.getConfigValue())) {
String smsContemt = sysConfig.getConfigValue();
// sendMagParam.setContent("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�");
sendMagParam.setContent(smsContemt.replace("${xjurl}", sendMagParam.getUrl()));
@@ -1159,6 +1166,13 @@
sendMagParam.setContent(content);
}
+ }
+
+ //鍐呭涓虹┖璇存槑鐭俊妯℃澘鏈厤缃垨瀹f暀/閫氱煡鍐呭涓虹┖锛岀洿鎺ユ寜鍙戦�佸け璐ュ鐞嗭紝閬垮厤鍚庣画鍙戦�佹椂鍑虹幇绌烘寚閽�
+ if (StringUtils.isEmpty(sendMagParam.getContent())) {
+ log.error("銆恠fHandlle銆戦暱鏈熶换鍔$煭淇″唴瀹逛负绌猴紝鏃犳硶鍙戦�侊紝subid锛歿}锛宼askid锛歿}锛宼ype锛歿}锛屾満鏋処D锛歿}", serviceSubtask.getId(), serviceSubtask.getTaskid(), serviceSubtask.getType(), serviceSubtask.getOrgid());
+ setSuccessPreachForm(serviceSubtask, sendPreachform, "闀挎湡浠诲姟鐭俊鍙戦�佸け璐�:鐭俊鍐呭涓虹┖(鐭俊妯℃澘鏈厤缃垨鍐呭涓虹┖), 鏃堕棿: " + now, "5");
+ return;
}
serviceOutPath.setRadix(format);
@@ -1748,14 +1762,15 @@
* @return
*/
private String getObject(ServiceSubtask serviceSubtask, String scriptContent) {
+ //鍐呭涓虹┖鏃剁洿鎺ヨ繑鍥烇紝閬垮厤涓嬮潰鐨剅eplace鍑虹幇绌烘寚閽�
+ if (StringUtils.isEmpty(scriptContent)) {
+ return scriptContent;
+ }
Map<String, Map<String, String>> param = getParam(serviceSubtask.getTaskid());
for (Map<String, String> map : param.values()) {
for (String key : map.keySet()) {
scriptContent = scriptContent.replace(key, StringUtils.isNotEmpty(map.get(key)) ? map.get(key) : "");
}
- }
- if (StringUtils.isEmpty(scriptContent)) {
- return scriptContent;
}
scriptContent = scriptContent.replace("${name}", StringUtils.isNotEmpty(serviceSubtask.getSendname()) ? serviceSubtask.getSendname() : "");
scriptContent = scriptContent.replace("${dzz}", StringUtils.isNotEmpty(serviceSubtask.getAddr()) ? serviceSubtask.getAddr() : "");
@@ -1869,6 +1884,22 @@
st.setNexttaskflag("1");
st.setOrgid(orgid);
List<ServiceTask> serviceTasks = serviceTaskMapper.selectServiceTaskList(st);
+
+ // 闅忚涓績绉戝
+ String centerDept = configService.selectConfigByKey("sys.smartor.center.dept", orgid);
+ SysDept sysDeptVo = new SysDept();
+ SysDept centerSysDept = null;
+ if(StringUtils.isNotEmpty(centerDept)){
+ sysDeptVo.setDeptType("1");
+ sysDeptVo.setOrgid(orgid);
+ sysDeptVo.setDeptCode(centerDept);
+ List<SysDept> sysDepts = sysDeptService.selectDeptList(sysDeptVo);
+ if (CollectionUtils.isNotEmpty(sysDepts)) {
+ centerSysDept = sysDepts.get(0);
+ }
+ }
+
+ String config = configService.selectConfigByKey("visit.early.day");
for (ServiceTask serviceTask : serviceTasks) {
deadlineDay = -deadlineDay;
Date deadline = DateUtils.addDays(new Date(), deadlineDay);
@@ -1880,6 +1911,7 @@
serviceSubtaskVO.setVisitCount(1);
serviceSubtaskVO.setTaskid(serviceTask.getTaskid());
serviceSubtaskVO.setEndOutHospTime(deadline);
+
List<ServiceSubtask> serviceSubtaskList
= serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
log.info("銆恉ealSubtaskDeadline銆戣幏鍙栧埌{}涓秴鏃朵换鍔�, taskid={}", serviceSubtaskList.size(), serviceTask.getTaskid());
@@ -1887,6 +1919,7 @@
PatMedInhosp patMedInhospVo = new PatMedInhosp();
patMedInhospVo.setOrgid(serviceSubtask.getOrgid());
patMedInhospVo.setInhospid(serviceSubtask.getInhospid());
+ patMedInhospVo.setCry(1);
List<PatMedInhosp> patMedInhospList = iPatMedInhospService.selectPatMedInhospList(patMedInhospVo);
PatMedInhosp patMedInhosp = new PatMedInhosp();
if (!patMedInhospList.isEmpty()) {
@@ -1899,7 +1932,6 @@
}
ServiceTask nextServiceTask = serviceTaskMapper.selectServiceTaskByTaskid(serviceTask.getNexttaskid());
PatArchive patArchive = patArchiveService.selectPatArchiveByPatid(serviceSubtask.getPatid());
- String config = configService.selectConfigByKey("visit.early.day");
Integer type = 1;
//鏂板鍐嶆闅忚浠诲姟
@@ -1912,8 +1944,13 @@
serviceSubtaskAgain.setCreateTime(new Date());
serviceSubtaskAgain.setUpdateTime(new Date());
serviceSubtaskAgain.setVisitType(serviceSubtask.getVisitType());
- serviceSubtaskAgain.setVisitDeptCode(serviceSubtask.getVisitDeptCode());
- serviceSubtaskAgain.setVisitDeptName(serviceSubtask.getVisitDeptName());
+ if(ObjectUtils.isNotEmpty(centerSysDept)){
+ serviceSubtaskAgain.setVisitDeptCode(centerSysDept.getDeptCode());
+ serviceSubtaskAgain.setVisitDeptName(centerSysDept.getDeptName());
+ }else {
+ serviceSubtaskAgain.setVisitDeptCode(serviceSubtask.getVisitDeptCode());
+ serviceSubtaskAgain.setVisitDeptName(serviceSubtask.getVisitDeptName());
+ }
int i = serviceSubtaskMapper.insertServiceSubtask(serviceSubtaskAgain);
if (i == 1) {
//鍐嶆闅忚浠诲姟鍒涘缓鎴愬姛鍚庯紝鍘熶换鍔℃敼涓哄け璐ョ姸鎬�
--
Gitblit v1.9.3