From 14ecea8537d5b29ca64c75aad4ff49265018415d Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期三, 02 七月 2025 08:51:22 +0800 Subject: [PATCH] zjh20250702 --- ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java | 264 +++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 185 insertions(+), 79 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java b/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java index 60d1ec7..f3fdf6d 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java @@ -1,22 +1,26 @@ package com.ltkj.web.config.timer; +import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ltkj.framework.datasource.DynamicDataSourceContextHolder; -import com.ltkj.hosp.domain.TjOrder; +import com.ltkj.hosp.domain.TjJcycxm; +import com.ltkj.hosp.domain.TjXdtgmdjg; import com.ltkj.hosp.mapper.TestMapper; -import com.ltkj.hosp.mapper.TjOrderMapper; import com.ltkj.hosp.service.*; -import com.ltkj.hosp.sqlDomain.LtkjExamJcbgd; -import com.ltkj.hosp.sqlDomain.LtkjExamJcsqd; -import com.ltkj.hosp.sqlDomain.LtkjHybgd; -import com.ltkj.hosp.sqlDomain.LtkjHysqd; +import com.ltkj.hosp.sqlDomain.*; import com.ltkj.system.service.ISysConfigService; +import com.ltkj.web.controller.system.TjXdPictureController; +import jodd.util.StringUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Profile; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; import javax.annotation.Resource; import java.text.SimpleDateFormat; +import java.time.LocalTime; +import java.time.ZonedDateTime; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -34,6 +38,7 @@ */ @Slf4j @Component +@Profile("!dev & !prod & !test & !win-xamjyytest & !win-chkwyytest") public class DefaultScheduled { @@ -53,6 +58,14 @@ private TestMapper testMapper; @Resource private TjAsyncService asyncService; + @Autowired + private TjJcycxmService jcycxmService; + @Autowired + private AwsService awsService; + @Resource + private TjXdtgmdjgService xdtgmdjgService; + @Resource + private TjXdPictureController pictureController; private final ReentrantLock reentrantLock = new ReentrantLock(); @@ -80,93 +93,186 @@ } private void exec() { - log.info("浠诲姟寮�濮嬫墽琛屾椂闂� -> {}", dateTimeFormat.format(new Date())); + String dsqkssj = configService.selectConfigByKey("dsqkssj"); + String dsqjssj = configService.selectConfigByKey("dsqjssj"); +// String yqbm = configService.selectConfigByKey("common_api_service_hospbm"); + String dqyyyqbm = configService.selectConfigByKey("dqyyyqbm"); + boolean panduandangqianshijian = panduandangqianshijian(dsqkssj, dsqjssj); + log.info("瀹氭椂鍣ㄨ嚜鍔ㄥ悓姝ユ楠屾鏌ョ粨鏋�"); + log.info("褰撳墠鏃堕棿鏄惁鍦� " + dsqkssj + " 鐐瑰埌 " + dsqjssj + " 鐐逛箣闂�: " + panduandangqianshijian); + String dsrwsjjg = configService.selectConfigByKey("dsrwsjjg"); + boolean lock = reentrantLock.tryLock(); + try { + if (!panduandangqianshijian) { + if (lock) { + log.info("浠诲姟寮�濮嬫墽琛屾椂闂� -> {}", dateTimeFormat.format(new Date())); + long start = System.currentTimeMillis(); + // 鏌ヨ浠诲姟鏁版嵁 + log.info("寮�濮嬫墽琛屽悓姝� 鎵ц鏁伴噺->{}", 0); + List<String> jy = orderService.getDingShiTongBuJianYanTjNum(); - String dsrwsjjg = configService.selectConfigByKey("dsrwsjjg"); + List<String> jc = orderService.getDingShiTongBuJianChaTjNum(); - boolean lock = reentrantLock.tryLock(); + + if (null != jy && !jy.isEmpty()) { + log.info("鍚屾妫�楠屼汉鍛� 鎵ц鏁伴噺->{}", jy.size()); + for (String s : jy) { + extractedjianyan(s,dqyyyqbm); + } + } + + + if (null != jc && !jc.isEmpty()) { + log.info("鍚屾妫�鏌ヤ汉鍛� 鎵ц鏁伴噺->{}", jc.size()); + for (String s : jc) { + extractedjiancha(s,dqyyyqbm); +// LambdaQueryWrapper<TjXdtgmdjg> wq=new LambdaQueryWrapper<>(); +// wq.eq(TjXdtgmdjg::getTjh,s); +// List<TjXdtgmdjg> list = xdtgmdjgService.list(wq); +// if(null !=list && !list.isEmpty()){ +// for (TjXdtgmdjg xdtgmdjg : list) { +// pictureController.saveTjXdtgmdjgByJcbgd(xdtgmdjg); +// } +// } + } + } + Map<String, Object> map = new HashMap<>(); + testMapper.tjplUpdateDetatilByVi(map); + Integer object = (Integer) map.get("total"); + log.info("鎵ц瀛樺偍杩囩▼鍚庡嚭鍙�->{}", object); + if (null != object && object.equals(1)) { + if (null != jc && !jc.isEmpty()) { + for (String s : jc) { + jcycxmService.deletedByTjh(s); + List<LtkjExamJcsqd> list = jcsqdService.getLtkjJcsqdByTjh(s); + if(null !=list && !list.isEmpty()){ + for (LtkjExamJcsqd jcsqd : list) { + if(StringUtil.isNotBlank(jcsqd.getJgzt())){ + String[] split = jcsqd.getJgzt().replaceAll("\n", "").split("銆倈锛泑;|,|锛�"); + for (String jg : split) { + if(StringUtil.isNotBlank(jg) && !jg.contains("鏈寮傚父") + && !jg.contains("鏈鏄庢樉寮傚父") && !jg.contains("鏈鍗犱綅") && !jg.contains("鏈") + && !jg.contains("鏈鏄庢樉")&& !jg.contains("姝e父")&& !jg.contains("鍙屼晶妞庨棿瀛旀棤鐙獎")){ + TjJcycxm jcycxm=new TjJcycxm(); + jcycxm.setTjh(s); + jcycxm.setYqid(dqyyyqbm); + String[] split1 = jcsqd.getJcxmid().split(";"); + jcycxm.setProId(split1[0]); + jcycxm.setProName(jcsqd.getJcxmmc()); + jcycxm.setCreateTime(new Date()); + jcycxm.setJcjg(jg); + jcycxmService.save(jcycxm); + } + } + } + } + } + + } + } + + long end = System.currentTimeMillis(); + log.info("鍚屾缁撴潫 鑰楁椂锛歿}绉�", (end - start) / 1000); + // 鍔ㄦ�佽幏鍙栦笅娆′换鍔$殑闂撮殧 + int minute = Integer.parseInt(dsrwsjjg); + if (minute < 5) minute = 5; + if (minute > 59) minute = 59; + scheduleNextTask(minute); + }else { + log.info("鎵ц瀛樺偍杩囩▼鍑哄弬澶辫触"); + scheduleNextTask(Long.parseLong(dsrwsjjg)); + } + } + }else { + log.info("涓嶅湪瀹氭椂鍣ㄦ墽琛屾椂闂磋寖鍥翠箣鍐�!!!"); + scheduleNextTask(Long.parseLong(dsrwsjjg)); + } + } catch (Exception e) { + scheduleNextTask(Long.parseLong(dsrwsjjg)); + log.error("瀹氭椂鍣ㄦ墽琛屾姤閿�"); + log.error(String.valueOf(e)); +// e.printStackTrace(); + } finally { + reentrantLock.unlock(); + } + + } + + private boolean panduandangqianshijian(String kssj, String jssj) { + ZonedDateTime now = ZonedDateTime.now(); + LocalTime time = now.toLocalTime(); + return time.isAfter(LocalTime.of(Integer.parseInt(kssj), 0)) && time.isBefore(LocalTime.of(Integer.parseInt(jssj), 0)); + } + + private void extractedjianyan(String s,String dqyyyqbm) { try { - if (lock) { - long start = System.currentTimeMillis(); - // 鏌ヨ浠诲姟鏁版嵁 - log.info("寮�濮嬫墽琛屽悓姝� 鎵ц鏁伴噺->{}", 0); - List<String> jy= orderService.getDingShiTongBuJianYanTjNum(); - - List<String> jc = orderService.getDingShiTongBuJianChaTjNum(); - - if(null !=jy && !jy.isEmpty()){ - for (String s : jy) { - TjOrder order = orderService.getOrderByTjNum(s); - extractedjianyan(s,order); + List<Aws> awsList = testMapper.getWsxmLtkjHysqdByLisViBySLAVEWS(s); + if(null !=awsList && !awsList.isEmpty()){ + log.info(awsList.toString()); + testMapper.delWsxmjg(s); + log.info("鍒犻櫎澶栭�侀」鐩垚鍔�"); + awsService.saveBatch(awsList); + log.info("淇濆瓨澶栭�侀」鐩垚鍔�"); + } + List<LtkjHysqd> wssq = testMapper.getWsxmLtkjHysqdByLisVi(s); + if(null !=wssq && !wssq.isEmpty()){ + for (LtkjHysqd hysqd : wssq) { + LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); + if (null != jybgid) { + ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); + ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(hysqd.getTmh()); + } + if (ltkjHysqdService.save(hysqd)) { + List<LtkjHybgd> wsbg = testMapper.getWsxmLtkjHybgdByLisVi(s); + ltkjHybgdService.saveBatch(wsbg); } } + } - if(null !=jc && !jc.isEmpty()){ - for (String s : jc) { - TjOrder order = orderService.getOrderByTjNum(s); - extractedjiancha(s,order); + List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(s,dqyyyqbm); + if (null != hysqdList && !hysqdList.isEmpty()) { + for (LtkjHysqd hysqd : hysqdList) { + LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); + if (null != jybgid) { + ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); + ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(hysqd.getTmh()); + } + if (ltkjHysqdService.save(hysqd)) { + List<LtkjHybgd> hybgdList = testMapper.getCcXZxYyLtkjHybgdByLisVi(hysqd.getTmh()); +// List<LtkjHybgd> wsbg = testMapper.getWsxmLtkjHybgdByLisVi(s); +// if(null !=wsbg && !wsbg.isEmpty())hybgdList.addAll(wsbg); + ltkjHybgdService.saveBatch(hybgdList); } } - - long end = System.currentTimeMillis(); - log.info("鍚屾缁撴潫 鑰楁椂锛歿}绉�", (end - start) / 1000); - // 鍔ㄦ�佽幏鍙栦笅娆′换鍔$殑闂撮殧 - int minute = Integer.parseInt(dsrwsjjg); - if (minute < 5) minute = 5; - if (minute > 59) minute = 59; - scheduleNextTask(minute); + DynamicDataSourceContextHolder.clearDataSourceType(); } } catch (Exception e) { - e.printStackTrace(); - } finally { - reentrantLock.unlock(); + log.info("鍚屾妫�楠屾暟鎹け璐�"); +// throw new RuntimeException(e); + log.error(String.valueOf(e)); } + } - private void extractedjianyan(String s,TjOrder order) { - List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(order.getTjNumber()); - if(null != hysqdList && !hysqdList.isEmpty()){ - for (LtkjHysqd hysqd : hysqdList) { - LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(),hysqd.getTmh()); - if (null != jybgid) { - ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(hysqd.getTjh(),hysqd.getTmh()); - ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(hysqd.getTmh()); - } - if (ltkjHysqdService.save(hysqd)) { - List<LtkjHybgd> hybgdList = testMapper.getCcXZxYyLtkjHybgdByLisVi(hysqd.getTmh()); - ltkjHybgdService.saveBatch(hybgdList); - } + + private void extractedjiancha(String s,String dqyyyqbm) { + + try { + List<LtkjExamJcsqd> jcsqdList = testMapper.getCcXZxYyPacsLtkjExamJcsqd(s,dqyyyqbm); + if (null != jcsqdList && !jcsqdList.isEmpty()) { + DynamicDataSourceContextHolder.clearDataSourceType(); + jcsqdService.deletedLtkjJcsqdByTjhAndTmh(s); + jcbgdService.deletedLtkjJcbgdByTjhAndTmh(s); + jcsqdService.saveBatch(jcsqdList); + List<LtkjExamJcbgd> jcbgdList = testMapper.getCcXZxYyPacsLtkjExamJcbgd(s); + DynamicDataSourceContextHolder.clearDataSourceType(); + if (null != jcbgdList && !jcbgdList.isEmpty()) jcbgdService.saveBatch(jcbgdList); + DynamicDataSourceContextHolder.clearDataSourceType(); } - DynamicDataSourceContextHolder.clearDataSourceType(); + } catch (Exception e) { + log.info("鍚屾妫�鏌ユ暟鎹け璐�"); +// throw new RuntimeException(e); + log.error(String.valueOf(e)); } -// String tjNumber1 = order.getTjNumber(); -// log.info("鏌ヨ鍑烘潵鐨勪綋妫�鍙锋槸: " + tjNumber1); -// log.info("浼犺繃鏉ョ殑鐨勪綋妫�鍙锋槸: "+ s); - Map<String,Object> map=new HashMap<>(); - map.put("tjnum", s); - testMapper.tjUpdateDetatilByVi(map); -// asyncService.tjUpdateDetatilByVi(s); - log.info("瀹氭椂浠诲姟瀛樺偍杩囩▼宸叉墽琛�!!!"); - } - - - private void extractedjiancha(String s,TjOrder order) { - - List<LtkjExamJcsqd> jcsqdList = testMapper.getCcXZxYyPacsLtkjExamJcsqd(order.getTjNumber()); - if(null !=jcsqdList && !jcsqdList.isEmpty()){ - jcsqdService.deletedLtkjJcsqdByTjhAndTmh(order.getCardId()); - jcbgdService.deletedLtkjJcbgdByTjhAndTmh(order.getCardId()); - jcsqdService.saveBatch(jcsqdList); - List<LtkjExamJcbgd> jcbgdList = testMapper.getCcXZxYyPacsLtkjExamJcbgd(order.getCardId()); - if(null != jcbgdList && !jcbgdList.isEmpty())jcbgdService.saveBatch(jcbgdList); - DynamicDataSourceContextHolder.clearDataSourceType(); - } -// String tjNumber1 = order.getTjNumber(); -// log.info("鏌ヨ鍑烘潵鐨勪綋妫�鍙锋槸: " + tjNumber1); -// log.info("浼犺繃鏉ョ殑鐨勪綋妫�鍙锋槸: "+ s); - Map<String,Object> map=new HashMap<>(); - map.put("tjnum", s); - testMapper.tjUpdateDetatilByVi(map); - log.info("瀹氭椂浠诲姟瀛樺偍杩囩▼宸叉墽琛�!!!"); } } -- Gitblit v1.8.0