From 1e1814178edf84090b28492bbad340ab13e5c169 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期二, 22 七月 2025 18:16:34 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java | 94 ++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 76 insertions(+), 18 deletions(-) diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java index 73fdfa3..1aba511 100644 --- a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java @@ -10,6 +10,7 @@ import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DtoConversionUtils; import com.ruoyi.common.utils.http.HttpUtils; +import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import com.smartor.domain.*; import com.smartor.mapper.*; @@ -37,7 +38,7 @@ private ServiceSubtaskMapper serviceSubtaskMapper; @Autowired - private IvrTaskTemplateMapper ivrTaskTemplateMapper; + private ServiceTaskdeptMapper serviceTaskdeptMapper; @Autowired private PatArchiveImportMapper patArchiveImportMapper; @@ -154,16 +155,67 @@ @Transactional(rollbackFor = Exception.class) @Override public Boolean deleteServiceTaskByTaskid(Long taskid) { - ServiceSubtask ServiceTaskcall = new ServiceSubtask(); - ServiceTaskcall.setTaskid(taskid); - ServiceTaskcall.setDelFlag("1"); - Boolean aBoolean = serviceSubtaskMapper.updateServiceSubtask(ServiceTaskcall); + ServiceSubtask serviceSubtask = new ServiceSubtask(); + serviceSubtask.setTaskid(taskid); + + //鏌ヨ瀛愪换鍔� + ServiceSubtaskVO serviceSubtaskVO = DtoConversionUtils.sourceToTarget(serviceSubtask, ServiceSubtaskVO.class); + List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); + for (ServiceSubtask ss : serviceSubtaskList) { + log.error("sfSend闇�瑕佺Щ闄ょ殑subId涓猴細{}", ss.getId().toString()); + redisCache.removeElementFromList("cache-exist", ss.getId().toString()); + redisCache.removeElementFromList("cache-0", ss.getId().toString()); + redisCache.removeElementFromList("cache-1", ss.getId().toString()); + redisCache.removeElementFromList("cache-2", ss.getId().toString()); + redisCache.removeElementFromList("cache-3", ss.getId().toString()); + redisCache.removeElementFromList("cache-4", ss.getId().toString()); + } + + serviceSubtask.setDelFlag("1"); + Boolean aBoolean = serviceSubtaskMapper.updateServiceSubtaskByPatId(serviceSubtask); + + //鍏宠仈琛ㄥ垹闄� + ServiceTaskdept serviceTaskdept = new ServiceTaskdept(); + serviceTaskdept.setTaskId(taskid); + int i = serviceTaskdeptMapper.deleteServiceTaskdeptByTaskId(serviceTaskdept); + Boolean isSuccess = false; - if (!aBoolean) { + if (!aBoolean || i <= 0) { new BaseException("浠诲姟鍒犻櫎澶辫触"); } isSuccess = serviceTaskMapper.deleteServiceTaskByTaskid(taskid); return isSuccess; + } + + + /** + * 鑾峰彇闅忚鍙婃椂鐜� + * + * @param serviceSubtask + * @return + */ + public Map<String, Object> selectTimelyRate(ServiceSubtask serviceSubtask) { + if (serviceSubtask.getEndtime() != null && new Date().before(serviceSubtask.getEndtime())) { + serviceSubtask.setEndtime(new Date()); + } + Double dob = serviceSubtaskMapper.selectTimelyRate(serviceSubtask); + // 1. 鏌ヨ鍏ㄩ儴鏁版嵁锛圫QL涓嶅垎椤碉級 + List<ServiceSubtask> allList = serviceSubtaskMapper.selectTimelyRateDetail(serviceSubtask); + // 2. Java浠g爜鍒嗛〉 + int pageNum = serviceSubtask.getPn() != null ? serviceSubtask.getPn() : 1; + int pageSize = serviceSubtask.getPs() != null ? serviceSubtask.getPs() : 10; + int fromIndex = (pageNum - 1) * pageSize; + int toIndex = Math.min(fromIndex + pageSize, allList.size()); + List<ServiceSubtask> pageList = new ArrayList<>(); + if (fromIndex < allList.size()) { + pageList = allList.subList(fromIndex, toIndex); + } + log.info("浠g爜鍒嗛〉鍙傛暟: pageNum={}, pageSize={}, fromIndex={}, toIndex={}, total={}", pageNum, pageSize, fromIndex, toIndex, allList.size()); + Map<String, Object> map = new HashMap<>(); + map.put("rate", dob); + map.put("detail", pageList); + map.put("total", allList.size()); // 鍙�夛細杩斿洖鎬绘暟 + return map; } @Override @@ -200,10 +252,13 @@ ServiceSubtask ss = new ServiceSubtask(); ss.setTaskid(taskid); ss.setPatid(patid); - ss.setSendstate(1L); - ss.setResult("success"); - ss.setFinishtime(new Date()); - serviceSubtaskMapper.updateServiceSubtaskByCondition(ss); + Integer integer = serviceSubtaskMapper.selectSendstateByCondition(ss); + if (integer != null && integer != 6) { + ss.setSendstate(1L); +// ss.setResult("success"); +// ss.setFinishtime(new Date()); + serviceSubtaskMapper.updateServiceSubtaskByCondition(ss); + } } } @@ -214,7 +269,6 @@ map.put("type", serviceTask.getType()); map.put("taskName", serviceTask.getTaskName()); map.put("submit", "0"); - return map; } @@ -280,7 +334,7 @@ ivrLibaTemplateScriptVO.setIvrLibaScriptTargetoptionList(ivrLibaTemplateTargetoptions); } } - Collections.sort(ivrLibaTemplateScriptVOS, Comparator.comparingInt(IvrLibaTemplateScriptVO::getSort)); + Collections.sort(ivrLibaTemplateScriptVOS, Comparator.comparingLong(IvrLibaTemplateScriptVO::getSort)); return ivrLibaTemplateScriptVOS; } @@ -300,9 +354,9 @@ serviceSubtaskVO.setPatid(patid); List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); if (CollectionUtils.isNotEmpty(serviceSubtaskList) && serviceSubtaskList.size() == 1) { - if (serviceSubtaskList.get(0).getSendstate() != 6 && isFinish == true) { + if (serviceSubtaskList.get(0).getSendstate() == 3 && isFinish == true) { ServiceSubtask serviceSubtask = new ServiceSubtask(); - serviceSubtask.setSendstate(7L); + serviceSubtask.setSendstate(1L); serviceSubtask.setPatid(patid); serviceSubtask.setTaskid(serviceTask.getTaskid()); serviceSubtaskMapper.updateServiceSubtaskByPatId(serviceSubtask); @@ -353,7 +407,7 @@ } //鏇挎崲鎮h�呬釜浜轰俊鎭暟鎹� log.error("闂id锛歿}, 闂鍐呭锛歿}", svyLibTemplateScriptVO.getId(), svyLibTemplateScriptVO.getScriptContent()); - if (StringUtils.isNotEmpty(svyLibTemplateScriptVO.getScriptContent())) { + if (StringUtils.isNotEmpty(svyLibTemplateScriptVO.getScriptContent()) && ObjectUtils.isNotEmpty(patArchive)) { svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${name}", StringUtils.isNotEmpty(patArchive.getName()) ? patArchive.getName() : "")); svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${dzz}", StringUtils.isNotEmpty(patArchive.getPlaceOfResidence()) ? patArchive.getPlaceOfResidence() : "")); svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${dhh}", StringUtils.isNotEmpty(patArchive.getTelcode()) ? patArchive.getTelcode() : "")); @@ -374,9 +428,13 @@ ServiceSubtask serviceSubtask = new ServiceSubtask(); serviceSubtask.setTaskid(taskid); serviceSubtask.setPatid(patid); - serviceSubtask.setResult("瀹屾垚"); - serviceSubtask.setFinishtime(new Date()); - serviceSubtaskMapper.updateServiceSubtaskByCondition(serviceSubtask); + Integer integer = serviceSubtaskMapper.selectSendstateByCondition(serviceSubtask); + if (integer == 3) { + serviceSubtask.setResult("瀹屾垚"); + serviceSubtask.setFinishtime(new Date()); + serviceSubtask.setSendstate(6L); + serviceSubtaskMapper.updateServiceSubtaskByCondition(serviceSubtask); + } } HeLibrary heLibrary = heLibraryMapper.selectHeLibraryById(Long.valueOf(templateId)); List list = new ArrayList(); -- Gitblit v1.9.3