From 9e113cdae73c69831254d028816ad6d6c492b5a4 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 23 六月 2026 14:26:07 +0800
Subject: [PATCH] 【市一】生成外链-机构名称
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 144 ++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 122 insertions(+), 22 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 e899668..94a5665 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
@@ -19,10 +19,12 @@
import com.ruoyi.quartz.service.ICollectHISService;
import com.ruoyi.quartz.util.CreateDataTable;
import com.ruoyi.system.domain.SysConfig;
+import com.ruoyi.system.mapper.SysConfigMapper;
import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.system.service.ISysDeptService;
import com.smartor.common.LSHospTokenUtil;
import com.smartor.common.MtSubmitSmUtil;
+import com.smartor.common.QwenLLMUtil;
import com.smartor.domain.*;
import com.smartor.domain.entity.ServiceSubtaskEntity;
import com.smartor.mapper.*;
@@ -33,6 +35,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.RequestParam;
import java.io.IOException;
import java.net.URLEncoder;
@@ -173,6 +176,8 @@
@Value("${spring.profiles.active}")
private String active;
+ @Autowired
+ private SysConfigMapper sysConfigMapper;
public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) {
System.out.println(StringUtils.format("鎵ц澶氬弬鏂规硶锛� 瀛楃涓茬被鍨媨}锛屽竷灏旂被鍨媨}锛岄暱鏁村瀷{}锛屾诞鐐瑰瀷{}锛屾暣褰}", s, b, l, d, i));
@@ -412,7 +417,7 @@
}
LocalDateTime yesterdayZero = todayZero.minusDays(1);
- if (active.trim().equals("sltd") || active.trim().equals("nhfy")) {
+ if (active.trim().equals("sltd") || active.trim().equals("nhfy")) {
//鐪佺珛鍚屽痉涓庡崕鍗楅檮涓�鐢ㄥ悓涓�濂楅噰闆嗘柟娉曪紙閮芥槸鏉ユ湭鏉ユ彁渚涳級
try {
//鑾峰彇鐪佺珛鍚屽痉瑕侀噰闆嗙殑闄㈠尯
@@ -444,12 +449,12 @@
log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濆紑濮嬪垎椤甸噰闆嗘暟鎹紝闄㈠尯锛歿}", cid);
serviceSLTDInhospReqVO.setStartHeadTime(null);
serviceSLTDInhospReqVO.setStartTailTime(null);
- serviceSLTDInhospReqVO.setEncounterTimeStart(nowTime);
- serviceSLTDInhospReqVO.setEncounterTimeEnd(nowTime);
- if (active.trim().equals("nhfy")) {
- serviceSLTDInhospReqVO.setEncounterTimeStart(yesterdayZero.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
- serviceSLTDInhospReqVO.setEncounterTimeEnd(todayZero.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
- }
+// serviceSLTDInhospReqVO.setEncounterTimeStart(nowTime);
+// serviceSLTDInhospReqVO.setEncounterTimeEnd(nowTime);
+// if (yesterdayZero != null) {
+ serviceSLTDInhospReqVO.setEncounterTimeStart(yesterdayZero.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
+ serviceSLTDInhospReqVO.setEncounterTimeEnd(todayZero.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
+// }
serviceSLTDInhospReqVO.setStatusList(null);
List<String> list1 = new ArrayList<>();
list1.add("FH0108.01");
@@ -682,6 +687,86 @@
}
/**
+ * 闀挎湡浠诲姟鍙戦��
+ */
+ public void longTaskSendTest(Long subId) {
+ //鑾峰彇浠诲姟淇℃伅
+ ServiceTask st = new ServiceTask();
+ st.setDelFlag("0");
+ st.setLongTask(1);
+ List<ServiceTask> serviceTasks = serviceTaskMapper.selectServiceTaskList(st);
+ log.info("銆恖ongTaskSend銆戣幏鍙栧埌{}涓暱鏈熶换鍔�", serviceTasks.size());
+ for (ServiceTask serviceTask : serviceTasks) {
+ CommonTaskcallMQ commonTaskcallMQ = new CommonTaskcallMQ();
+ commonTaskcallMQ.setTaskid(serviceTask.getTaskid());
+ commonTaskcallMQ.setPreachform(serviceTask.getPreachform());
+ commonTaskcallMQ.setSendType("2");
+
+ //閫氳繃浠诲姟ID鎷垮埌鎮h�呬俊鎭�,骞朵笖闅忚鏃堕棿寰楁槸浠婂ぉ涔嬪墠鐨�
+ ServiceSubtaskEntity serviceSubtaskVO = new ServiceSubtaskEntity();
+ serviceSubtaskVO.setTaskid(commonTaskcallMQ.getTaskid());
+ serviceSubtaskVO.setSendstate(2L);
+ serviceSubtaskVO.setIsVisitAgain(1);
+ serviceSubtaskVO.setSubId(subId);
+ serviceSubtaskVO.setVisitTime(new Date());
+ List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.queryServiceSubtaskList(serviceSubtaskVO);
+ for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) {
+ sfHandlle(serviceSubtask);
+ }
+ }
+ }
+
+ /**
+ * 澶勭悊琛ュ伩浠诲姟
+ */
+ public void compensateTaskTest(Long subId) {
+ //鑾峰彇鍒皊endstate=3 骞朵笖 visit_time涓哄皬浜庣瓑浜庝粖澶╃殑subtask
+ ServiceSubtaskEntity serviceSubtaskVO = new ServiceSubtaskEntity();
+ serviceSubtaskVO.setSendstate(3L);
+ serviceSubtaskVO.setSubId(subId);
+ serviceSubtaskVO.setVisitTime(new Date());
+ List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.getCompensateServiceSubtaskList(serviceSubtaskVO);
+ for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
+ //鏍规嵁褰撳墠鐨勬墽琛屾柟寮忥紝鑾峰彇涓嬩竴绉嶆墽琛屾柟寮�
+ ServiceSubtaskPreachform serviceSubtaskPreachform = new ServiceSubtaskPreachform();
+ serviceSubtaskPreachform.setTaskid(serviceSubtask.getTaskid());
+ serviceSubtaskPreachform.setSubid(serviceSubtask.getId());
+ serviceSubtaskPreachform.setOrgid(serviceSubtask.getOrgid());
+ List<ServiceSubtaskPreachform> serviceSubtaskPreachforms = serviceSubtaskPreachformMapper.selectServiceSubtaskPreachformList(serviceSubtaskPreachform);
+ //鑾峰彇褰撳墠鎵ц鏂瑰紡鐨勫簭鍙�
+ Optional<Long> currentSort = serviceSubtaskPreachforms.stream().filter(item -> serviceSubtask.getCurrentPreachform().equals(item.getPreachform())).map(ServiceSubtaskPreachform::getSort).findFirst();
+ Optional<Long> id = serviceSubtaskPreachforms.stream().filter(item -> serviceSubtask.getCurrentPreachform().equals(item.getPreachform())).map(ServiceSubtaskPreachform::getId).findFirst();
+ if (currentSort.isPresent()) {
+ //1鍏堟鏌ヤ竴涓嬶紝鏄笉鏄湁鎵ц鐘舵�佹槸瀹屾垚鐨勶紙鎬曚箣鍓嶅凡缁忔湁瀹岀殑浜嗭紝娌℃湁灏唖ervuce_subtask鐨勭姸鎬佹敼鎴愬姛锛岃繖閲屽啀妫�鏌ヤ竴涓嬶級
+ boolean finishState = serviceSubtaskPreachforms.stream().allMatch(item -> item.getSendstate().equals("9"));
+ if (finishState) {
+ serviceSubtask.setSendstate(6L);
+ serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
+ continue;
+ }
+
+ //2鍒ゆ柇涓�涓嬶紝褰撳墠鐨剆ort鏄笉鏄瓑浜庨渶瑕佹墽琛岀殑鎬讳釜鏁帮紝濡傛灉绛変簬鐨勮瘽锛岃鏄庢槸鏈�鍚庝竴涓紝鐩存帴灏唖ervuce_subtask鐨勭姸鎬佹敼鎴�5锛屾墽琛屽け璐ュ氨琛屼簡
+ Long cs = currentSort.get();
+ if (cs.equals(serviceSubtaskPreachforms.size())) {
+ serviceSubtask.setSendstate(7L);
+ serviceSubtask.setRemark("澶勭悊琛ュ伩浠诲姟,褰撳墠澶勭悊鏈�鍚庤ˉ鍋匡紝鍏ㄩ儴鎵ц澶辫触锛堣秴鏃讹級");
+
+ serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
+ //淇敼鍙戦�佹柟寮忕殑鐘舵�佷负澶辫触
+ serviceSubtaskPreachform.setSendstate("5");
+ serviceSubtaskPreachform.setId(id.get());
+
+ serviceSubtaskPreachformMapper.updateServiceSubtaskPreachform(serviceSubtaskPreachform);
+ continue;
+ }
+
+ //3.涓嶆槸鏈�鍚庝竴涓紝鑾峰彇鍒颁笅涓�涓墽琛屾柟寮�(鍥犱负閮芥槸鍦ㄤ粖澶╂墽琛岋紝閭e氨鐩存帴鍙戝嚭鍘诲氨瀹屼簡)
+ sfHandlle(serviceSubtask);
+ }
+ }
+ }
+
+ /**
* 璁剧疆澶辫触浠诲姟榛樿鍊�,骞跺皢澶辫触浠诲姟閲嶆柊缃负鎴愬姛
* <p>
* *@param failDay (澶辫触澶╂暟锛氳窛绂诲綋鍓嶆棩鏈熷け璐ュぉ鏁�)
@@ -838,19 +923,33 @@
//濡傛灉type鏄闊抽殢璁跨殑璇濓紙璇存槑琛ュ伩鍙戦�佹柟寮忎腑鏈夌數璇濋殢璁跨殑鏂瑰紡锛岃繖閲岀殑澶栭摼灏卞湴鍧�鍙兘鐢�/sf锛�
if (serviceSubtask.getType().equals("1"))
sendMagParam.setUrl(StringUtils.isNotEmpty(req_path) ? localIP + ":" + req_path + "/sf?p=" + format : localIP + "/sf?p=" + format);
- sendMagParam.setContent("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "濉啓銆傛劅璋㈡偍閰嶅悎锛�");
- if (active.equals("xh")) {
- sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "濉啓銆傛劅璋㈡偍閰嶅悎锛�");
+
+// SysConfig sysConfig = sysConfigMapper.checkConfigKeyUnique("wj.sms.template");
+ SysConfig sysConfig = new SysConfig();
+ if (StringUtils.isNotEmpty(serviceSubtask.getServiceType()) && serviceSubtask.getServiceType().equals("6")) {
+ sysConfig = sysConfigMapper.checkConfigKeyUnique("zymyd.sms.template");
+ }else if (StringUtils.isNotEmpty(serviceSubtask.getServiceType()) && serviceSubtask.getServiceType().equals("14")) {
+ sysConfig = sysConfigMapper.checkConfigKeyUnique("mzmyd.sms.template");
+ }else {
+ sysConfig = sysConfigMapper.checkConfigKeyUnique("wj.sms.template");
+ }
+ if (!Objects.isNull(sysConfig)) {
+ String smsContemt = sysConfig.getConfigValue();
+// sendMagParam.setContent("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "濉啓銆傛劅璋㈡偍閰嶅悎锛�");
+ sendMagParam.setContent(smsContemt.replace("${wjurl}", sendMagParam.getUrl()));
}
} else {
HeLibrary heLibrary = heLibraryMapper.selectHeLibraryById(serviceSubtask.getLibtemplateid());
if (heLibrary.getHetype().equals("1")) {
sendMagParam.setPhone(serviceSubtask.getPhone());
sendMagParam.setUrl(StringUtils.isNotEmpty(req_path) ? localIP + ":" + req_path + "/xj?p=" + format : localIP + "/xj?p=" + format);
- if (active.equals("ls") || active.equals("sltd") || active.equals("nhfy")) {
- sendMagParam.setContent("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�");
- } else if (active.equals("xh")) {
- sendMagParam.setContent("銆愭柊鍗庡尰闄€�戞偍濂斤紝閭�璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�");
+
+ SysConfig sysConfig = sysConfigMapper.checkConfigKeyUnique("xj.sms.template");
+ if (!Objects.isNull(sysConfig)) {
+ String smsContemt = sysConfig.getConfigValue();
+// sendMagParam.setContent("鎮ㄥソ锛岄個璇锋偍濉啓鍑洪櫌瀹f暀璋冩煡琛紝璇风偣鍑�" + sendMagParam.getUrl() + "鏌ョ湅銆傛劅璋㈡偍閰嶅悎锛�");
+ sendMagParam.setContent(smsContemt.replace("${xjurl}", sendMagParam.getUrl()));
+
}
} else if (heLibrary.getHetype().equals("2")) {
//閫氱煡
@@ -923,12 +1022,12 @@
SysDept sysDeptVo = new SysDept();
List<SysDept> sysDepts = new ArrayList<>();
- if (ObjectUtils.isNotEmpty(serviceSubtask.getDeptcode())){
+ if (ObjectUtils.isNotEmpty(serviceSubtask.getDeptcode())) {
sysDeptVo.setDeptType("1");
sysDeptVo.setOrgid(serviceSubtask.getOrgid());
sysDeptVo.setDeptCode(serviceSubtask.getDeptcode());
sysDeptService.selectDeptList(sysDeptVo);
- }else if(ObjectUtils.isNotEmpty(serviceSubtask.getLeavehospitaldistrictcode())){
+ } else if (ObjectUtils.isNotEmpty(serviceSubtask.getLeavehospitaldistrictcode())) {
sysDeptVo.setDeptType("2");
sysDeptVo.setOrgid(serviceSubtask.getOrgid());
sysDeptVo.setDeptCode(serviceSubtask.getLeavehospitaldistrictcode());
@@ -937,13 +1036,13 @@
SysDept sysDept = CollectionUtils.isNotEmpty(sysDepts) ? sysDepts.get(0) : new SysDept();
String campusid = ObjectUtils.isNotEmpty(sysDept) ? sysDept.getCampusid() : "2";
//婀栨花鍗曠嫭鍙戦�佹柟寮�
- if("1".equals(campusid)){
+ if ("1".equals(campusid)) {
String result = smsUtils.sendSms1(xhsmsPath, xhsmsAccount, xhsmsPwd, sendMagParam.getPhone(), content);
//杩欓噷闇�瑕佹牴鎹畆esult杩斿洖鐨勫�煎幓鍒ゆ柇锛屾槸鍚︽垚鍔燂紝鐒跺悗灏嗗�艰祴鍊肩粰isSuccess
if (StringUtils.isNotEmpty(result) && result.contains("澶勭悊鎴愬姛")) {
isSuccess = "true";
}
- }else {
+ } else {
String result = smsUtils.sendSms(xhsmsPath, xhsmsAccount, xhsmsPwd, sendMagParam.getPhone(), content);
//杩欓噷闇�瑕佹牴鎹畆esult杩斿洖鐨勫�煎幓鍒ゆ柇锛屾槸鍚︽垚鍔燂紝鐒跺悗灏嗗�艰祴鍊肩粰isSuccess
if (StringUtils.isNotEmpty(result) && result.contains("澶勭悊鎴愬姛")) {
@@ -954,6 +1053,7 @@
//浠诲姟鍙戦�佽褰�
ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString());
+ serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId());
serviceSubtaskRecord.setUuid(UUID.randomUUID().toString());
serviceSubtaskRecord.setTasktype(serviceSubtask.getType());
serviceSubtaskRecord.setPreachform("4");
@@ -1011,8 +1111,6 @@
if (active.equals("hzszlyy")) {
//澶勭悊涓枃涔辩爜闂
wxCode = smsUtils.sendChat(url, patArchive.getTelcode(), serviceSubtask.getSfzh());
- log.info(wxCode);
-
} else {
wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskDesc(), patArchive.getTelcode(), serviceSubtask.getSendname(), patArchive.getPatidHis(), wxqqxx);
}
@@ -1329,9 +1427,7 @@
//serviceSubtask.setRemark("setSuccessPreachForm鏂规硶锛屽綋鍓嶇殑preachform宸茬粡鏄渶鍚庝竴涓簡锛屽叏閮ㄦ墽琛屽け璐�");
serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
return true;
-
}
-
}
} else {
log.error("銆愬畾鏃朵换鍔′腑璇ユ偅鑰呮病鏈夋煡璇㈠埌灞炰簬浠栫殑鍙戦�佹柟寮忥紝subid锛歿},prechform:{},orgid:{}銆�", serviceSubtask.getId(), preachform, serviceSubtask.getOrgid());
@@ -1396,4 +1492,8 @@
return serviceTaskMap;
}
+ public int qwenLLMTest(String questionText, String voiceText,String value,String regexText) {
+ int result = QwenLLMUtil.matchRegex(questionText, voiceText, value, regexText);
+ return result;
+ }
}
--
Gitblit v1.9.3