From afc82da726f341f6ce7855e5beb4846f9e1c2b65 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 11 六月 2026 15:00:20 +0800
Subject: [PATCH] 新增满意度功能
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 129 +++++++++++++++++++++++++++++-------------
1 files changed, 89 insertions(+), 40 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 63a7c46..e899668 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
@@ -361,50 +361,11 @@
serviceSLTDInhospReqVO.setStartTailTime(todayZero.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
}
List<String> listStr = new ArrayList<>();
- listStr.add("FH0109.26");
+ listStr.add("FH0109.24");
serviceSLTDInhospReqVO.setStatusList(listStr);
log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滃叆闄⑩�濋噰闆嗘暟鎹叆鍙傦細{}", serviceSLTDInhospReqVO);
serviceSLTDHealthcareRecordService.queryHealthcareRecordList(serviceSLTDInhospReqVO);
log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滃叆闄⑩�濈祼鏉熼噰闆嗘暟鎹紝闄㈠尯锛歿}", cid);
-
- // 闂ㄦ�ヨ瘖鍒嗛〉閲囬泦锛氭瘡椤�1000鏉★紝鐩村埌鏃犳暟鎹负姝�(鍗楀崕闄勪竴鐨勫厛涓嶉噰闂ㄦ�ヨ瘖鏁版嵁)
-// if (active.trim().equals("sltd")) {
-// 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.setStatusList(null);
-// List<String> list1 = new ArrayList<>();
-// list1.add("FH0108.01");
-// list1.add("FH0108.03");
-// serviceSLTDInhospReqVO.setHealthcareRecordTypeList(list1);
-// long outpPage = 1L;
-// final long OUTP_PAGE_SIZE = 1000L;
-// while (true) {
-// serviceSLTDInhospReqVO.setCurrent(outpPage);
-// serviceSLTDInhospReqVO.setSize(OUTP_PAGE_SIZE);
-// log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濋噰闆嗙{}椤垫暟鎹紝闄㈠尯锛歿}", outpPage, cid);
-// List<ServiceSLTDInhospResDTO> outpResult = serviceSLTDHealthcareRecordService.queryHealthcareRecordList(serviceSLTDInhospReqVO);
-// if (CollectionUtils.isEmpty(outpResult)) {
-// log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濈{}椤垫棤鏁版嵁锛岄噰闆嗙粨鏉燂紝闄㈠尯锛歿}", outpPage, cid);
-// break;
-// }
-// log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濈{}椤甸噰闆唟}鏉★紝闄㈠尯锛歿}", outpPage, outpResult.size(), cid);
-// if (outpResult.size() < OUTP_PAGE_SIZE) {
-// break;
-// }
-// outpPage++;
-// }
-// // 娓呴櫎鍒嗛〉鍙傛暟锛岄伩鍏嶅奖鍝嶅悗缁嚭鍏ラ櫌鏌ヨ
-// serviceSLTDInhospReqVO.setCurrent(null);
-// serviceSLTDInhospReqVO.setSize(null);
-// log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濆垎椤甸噰闆嗗畬鎴愶紝闄㈠尯锛歿}", cid);
-// }
log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滃嚭闄⑩�濆紑濮嬮噰闆嗘暟鎹紝闄㈠尯锛歿}", cid);
serviceSLTDInhospReqVO.setStartHeadTime(null);
@@ -432,6 +393,93 @@
} catch (Exception e) {
log.error("銆恉ealHisData銆戠渷绔嬪悓寰锋暟鎹噰闆嗗紓甯�", e);
+ }
+ }
+ }
+
+ /**
+ * HIS鐪佺珛鍚屽痉闂ㄦ�ヨ瘖鏁版嵁閲囬泦锛堣繖涓彧鑳戒竴澶╂墽琛屼竴娆★紝涓嶈兘鍗婁釜灏忔椂鎵ц涓�涓紝鏁版嵁閲忓お澶э紝褰卞搷鎬ц兘锛�
+ * 瀹氭椂浠诲姟锛氶棬璇婃暟鎹�
+ * todayZeroStr 褰撳墠鐨勬椂闂� 渚嬪锛�2026-05-06 00:00:00
+ */
+ public void dealHisDataMZ(String todayZeroStr) {
+ log.info("銆恉ealHisData銆戦棬鎬ヨ瘖鏁版嵁寮�濮嬫墽琛孒IS鏁版嵁閲囬泦浠诲姟");
+ // 鑾峰彇鏄ㄥぉ0鐐瑰埌浠婂ぉ0鐐圭殑鏃堕棿鑼冨洿
+ LocalDateTime todayZero = LocalDateTime.now().with(LocalTime.MIN);
+ if (StringUtils.isNotBlank(todayZeroStr)) {
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+ todayZero = LocalDateTime.parse(todayZeroStr, formatter);
+ }
+ LocalDateTime yesterdayZero = todayZero.minusDays(1);
+
+ if (active.trim().equals("sltd") || active.trim().equals("nhfy")) {
+ //鐪佺珛鍚屽痉涓庡崕鍗楅檮涓�鐢ㄥ悓涓�濂楅噰闆嗘柟娉曪紙閮芥槸鏉ユ湭鏉ユ彁渚涳級
+ try {
+ //鑾峰彇鐪佺珛鍚屽痉瑕侀噰闆嗙殑闄㈠尯
+ SysConfig cf = new SysConfig();
+ cf.setConfigKey("sltd.gather.campusid");
+ cf.setOrgid("20001001");
+ List<SysConfig> sysConfigcampusids = configService.selectConfigList(cf);
+
+ List<Long> campusidList = new ArrayList<>();
+ if (CollectionUtils.isNotEmpty(sysConfigcampusids)) {
+ String[] split = sysConfigcampusids.get(0).getConfigValue().split(",");
+ campusidList = Arrays.stream(split).map(Long::valueOf).collect(Collectors.toList());
+ } else {
+ log.error("SysConfig涓殑闄㈠尯ID涓虹┖锛�");
+ return;
+ }
+
+ // 鐪佺珛鍚屽痉鏁版嵁閲囬泦
+ for (Long cid : campusidList) {
+ String nowTime = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
+ ServiceSLTDInhospReqVO serviceSLTDInhospReqVO = new ServiceSLTDInhospReqVO();
+ serviceSLTDInhospReqVO.setOrgId("20001001");
+ serviceSLTDInhospReqVO.setCampusId(cid);
+ serviceSLTDInhospReqVO.setEncounterTimeStart(nowTime);
+ serviceSLTDInhospReqVO.setEncounterTimeEnd(nowTime);
+
+ // 闂ㄦ�ヨ瘖鍒嗛〉閲囬泦锛氭瘡椤�1000鏉★紝鐩村埌鏃犳暟鎹负姝�(鍗楀崕闄勪竴鐨勫厛涓嶉噰闂ㄦ�ヨ瘖鏁版嵁)
+ if (active.trim().equals("sltd")) {
+ 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.setStatusList(null);
+ List<String> list1 = new ArrayList<>();
+ list1.add("FH0108.01");
+ list1.add("FH0108.03");
+ serviceSLTDInhospReqVO.setHealthcareRecordTypeList(list1);
+ long outpPage = 1L;
+ final long OUTP_PAGE_SIZE = 1000L;
+ while (true) {
+ serviceSLTDInhospReqVO.setCurrent(outpPage);
+ serviceSLTDInhospReqVO.setSize(OUTP_PAGE_SIZE);
+ log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濋噰闆嗙{}椤垫暟鎹紝闄㈠尯锛歿}", outpPage, cid);
+ List<ServiceSLTDInhospResDTO> outpResult = serviceSLTDHealthcareRecordService.queryHealthcareRecordList(serviceSLTDInhospReqVO);
+ if (CollectionUtils.isEmpty(outpResult)) {
+ log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濈{}椤垫棤鏁版嵁锛岄噰闆嗙粨鏉燂紝闄㈠尯锛歿}", outpPage, cid);
+ break;
+ }
+ log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濈{}椤甸噰闆唟}鏉★紝闄㈠尯锛歿}", outpPage, outpResult.size(), cid);
+ if (outpResult.size() < OUTP_PAGE_SIZE) {
+ break;
+ }
+ outpPage++;
+ }
+ // 娓呴櫎鍒嗛〉鍙傛暟锛岄伩鍏嶅奖鍝嶅悗缁嚭鍏ラ櫌鏌ヨ
+ serviceSLTDInhospReqVO.setCurrent(null);
+ serviceSLTDInhospReqVO.setSize(null);
+ log.info("銆恉ealHisData銆戠渷绔嬪悓寰封�滈棬鎬ヨ瘖鈥濆垎椤甸噰闆嗗畬鎴愶紝闄㈠尯锛歿}", cid);
+ }
+ }
+ } catch (Exception e) {
+ log.error("銆恉ealHisData銆戠渷绔嬪悓寰锋暟鎹棬鎬ヨ瘖閲囬泦寮傚父", e);
}
}
}
@@ -1079,6 +1127,7 @@
if (allSendStateNot1AndNot9) {
//璇存槑鍏ㄥ彂閫佸け璐ヤ簡
serviceSubtask.setSendstate(7L);
+ serviceSubtask.setFinishtime(null);
log.error("getSendPreachform鏂规硶 妫�鏌ユ槸鍚︽墍鏈塻endstate涓嶇瓑浜�9, 鍏ㄥけ璐ヤ簡");
serviceSubtask.setRemark(StringUtils.isNotEmpty(serviceSubtask.getRemark()) ? serviceSubtask.getRemark() + "," + "鎵�鏈夊彂閫佹柟寮忓潎鏈幏鍙栫粨鏋滐紝浠诲姟澶辫触锛堣秴鏃讹級" : "鎵�鏈夊彂閫佹柟寮忓潎鏈幏鍙栫粨鏋滐紝浠诲姟澶辫触锛堣秴鏃讹級");
serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
--
Gitblit v1.9.3