From d51450c60f95c7e6fb7034451e9c1f7497b2b116 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 31 八月 2023 17:38:07 +0800 Subject: [PATCH] 代码提交 --- ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 135 +++++++++++++++++++++++++++++++------------- 1 files changed, 94 insertions(+), 41 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 7225a41..be4cbbc 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 @@ -1,21 +1,17 @@ package com.ruoyi.quartz.task; import com.ruoyi.project.domain.*; -import com.ruoyi.project.domain.vo.DingTalkReqVo; import com.ruoyi.project.service.*; -import com.ruoyi.project.service.impl.DingTalkServiceImpl; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import com.ruoyi.common.utils.StringUtils; import org.springframework.util.CollectionUtils; -import java.lang.reflect.Array; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; -import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.locks.ReentrantLock; /** * 瀹氭椂浠诲姟璋冨害娴嬭瘯 @@ -29,10 +25,16 @@ private DingTalkService dingTalkService; @Autowired + private IServiceTasknumService ServiceTasknumService; + + @Autowired private IServiceReimbursementSharedService serviceReimbursementSharedService; @Autowired private IServiceFundSharedService serviceFundSharedService; + + @Autowired + private IServiceFunddetailSharedService serviceFunddetailSharedService; @Autowired @@ -80,8 +82,10 @@ } else { //涓嶆槸閫�鍥炵殑鎿嶄綔 if (StringUtils.isNotBlank(serviceFundShared.getZffs()) && serviceFundShared.getSpjg() == 0) { + String bh = myMethod(); //閽卞凡缁忓埌甯�,骞朵笖瀹℃壒缁撴灉涓�0锛岃鏄庡鎵圭粨鏉燂紝浣嗘暟鎹繕娌℃湁鍚屾鍒癴und琛ㄥ拰fundflow琛�;瀵筬und琛ㄥ拰fundflow琛ㄨ繘琛屾洿鏂帮紝骞跺皢0鏀规垚1 ServiceFund serviceFund = new ServiceFund(); + serviceFund.setBh(bh); serviceFund.setId(serviceFundShared.getSerfunid()); serviceFund.setZffs(serviceFundShared.getZffs()); if (StringUtils.isNotBlank(serviceFundShared.getPresident())) { @@ -112,18 +116,18 @@ serviceFundflow.setUpdateTime(new Date()); //鐢ㄤ笁涓鎵逛汉锛屽鏋滈兘涓虹┖锛屽氨涓虹┖ String spname = ""; - if (StringUtils.isNotBlank(serviceFundShared.getOpochecker())) { - serviceFundflow.setCheckusername(serviceFundShared.getOpochecker().substring(0, serviceFundShared.getOpochecker().indexOf(" "))); + if (StringUtils.isNotBlank(serviceFundShared.getPresident())) { + serviceFundflow.setCheckusername(serviceFundShared.getPresident().substring(0, serviceFundShared.getPresident().indexOf(" "))); //鏇存柊鏍¢獙鏃堕棿 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); Date parse = new Date(); try { - parse = simpleDateFormat.parse(serviceFundShared.getOpochecker().substring(serviceFundShared.getOpochecker().indexOf(" ") + 1, serviceFundShared.getOpochecker().length())); + parse = simpleDateFormat.parse(serviceFundShared.getPresident().substring(serviceFundShared.getPresident().indexOf(" ") + 1, serviceFundShared.getPresident().length())); } catch (ParseException e) { e.printStackTrace(); } serviceFundflow.setCheckTime(parse); - spname = spname + serviceFundShared.getOpochecker() + " "; + spname = spname + serviceFundShared.getPresident() + " "; } if (StringUtils.isNotBlank(serviceFundShared.getFinvicepresident())) { serviceFundflow.setCheckusername(serviceFundShared.getFinvicepresident().substring(0, serviceFundShared.getFinvicepresident().indexOf(" "))); @@ -180,15 +184,15 @@ Date parse = new Date(); - if (StringUtils.isNotBlank(serviceFundShared.getOpochecker())) { - //鍏堟煡璇竴涓媐und鏄惁宸茬粡鏇存柊Opochecker锛屽鏋滄病鏈夋洿鏂帮紝鍒欒繘琛屾洿鏂帮紝骞跺線fundflow琛ㄩ噷鎻掍竴鏉℃暟鎹� - if (StringUtils.isEmpty(serviceFunds.get(0).getOpochecker())) { + if (StringUtils.isNotBlank(serviceFundShared.getPresident())) { + //鍏堟煡璇竴涓媐und鏄惁宸茬粡鏇存柊President锛屽鏋滄病鏈夋洿鏂帮紝鍒欒繘琛屾洿鏂帮紝骞跺線fundflow琛ㄩ噷鎻掍竴鏉℃暟鎹� + if (StringUtils.isEmpty(serviceFunds.get(0).getPresident())) { try { - parse = simpleDateFormat.parse(serviceFundShared.getOpochecker().substring(serviceFundShared.getOpochecker().indexOf(" ") + 1, serviceFundShared.getOpochecker().length())); + parse = simpleDateFormat.parse(serviceFundShared.getPresident().substring(serviceFundShared.getPresident().indexOf(" ") + 1, serviceFundShared.getPresident().length())); } catch (ParseException e) { e.printStackTrace(); } - serviceFund.setOpochecker(serviceFundShared.getOpochecker()); + serviceFund.setPresident(serviceFundShared.getPresident()); serviceFundService.updateById(serviceFund); //灏嗘搷浣滀繚瀛樺埌fundflow琛ㄤ腑 @@ -197,8 +201,8 @@ serviceFundflow.setCreateTime(new Date()); serviceFundflow.setUpdateBy("admin"); serviceFundflow.setUpdateTime(new Date()); - serviceFundflow.setCheckusername(serviceFundShared.getOpochecker().substring(0, serviceFundShared.getOpochecker().indexOf(" "))); - serviceFundflow.setFlowcontent(serviceFundShared.getOpochecker().substring(0, serviceFundShared.getOpochecker().indexOf(" ")) + "瀹℃壒閫氳繃"); + serviceFundflow.setCheckusername(serviceFundShared.getPresident().substring(0, serviceFundShared.getPresident().indexOf(" "))); + serviceFundflow.setFlowcontent(serviceFundShared.getPresident().substring(0, serviceFundShared.getPresident().indexOf(" ")) + "瀹℃壒閫氳繃"); serviceFundflow.setFlowconclusion(1); serviceFundflow.setFundtype(1); serviceFundflow.setFlowlevel(999); @@ -281,7 +285,11 @@ for (ServiceReimbursementShared serviceReimbursementShared : serviceReimbursementShareds) { if (StringUtils.isNotBlank(serviceReimbursementShared.getOabdzt()) && serviceReimbursementShared.getOabdzt().equals("宸叉挙閿�")) { String phone = serviceReimbursementShared.getPhone(); - String[] split = serviceReimbursementShared.getCxrjyj().split("&"); + String[] split = null; + log.info("serviceReimbursementShared.getCxrjyj(): {}", serviceReimbursementShared.getCxrjyj()); + if (StringUtils.isNotBlank(serviceReimbursementShared.getCxrjyj())) { + split = serviceReimbursementShared.getCxrjyj().split("&"); + } //灏嗗垎浜噷鐨勮鏁版嵁鍒犻櫎 serviceReimbursementSharedService.delResharedInfoById(serviceReimbursementShared.getId()); @@ -301,12 +309,13 @@ //涓嶆槸閫�鍥炵殑鎿嶄綔 if (StringUtils.isNotBlank(serviceReimbursementShared.getZffs()) && serviceReimbursementShared.getSpjg() == 0) { - //閽卞凡缁忓埌甯�,骞朵笖瀹℃壒缁撴灉涓�0锛岃鏄庡鎵圭粨鏉燂紝浣嗘暟鎹繕娌℃湁鍚屾鍒癴und琛ㄥ拰fundflow琛�;瀵筬und琛ㄥ拰fundflow琛ㄨ繘琛屾洿鏂帮紝骞跺皢0鏀规垚1 + String bh = myMethod(); + //閽卞凡缁忓埌甯�,骞朵笖瀹℃壒缁撴灉涓�0(0涓哄鎵逛腑)锛岃鏄庡鎵圭粨鏉燂紝浣嗘暟鎹繕娌℃湁鍚屾鍒癴und琛ㄥ拰fundflow琛�;瀵筬und琛ㄥ拰fundflow琛ㄨ繘琛屾洿鏂帮紝骞跺皢0鏀规垚1锛�1瀹℃壒缁撴潫锛� ServiceReimbursement serviceReimbursement = new ServiceReimbursement(); serviceReimbursement.setId(serviceReimbursementShared.getReimid()); serviceReimbursement.setZffs(serviceReimbursementShared.getZffs()); serviceReimbursement.setRiqi(serviceReimbursementShared.getRiqi()); - + serviceReimbursement.setBh(bh); if (StringUtils.isNotBlank(serviceReimbursementShared.getPresident())) { serviceReimbursement.setPresident(serviceReimbursementShared.getPresident()); } @@ -335,18 +344,18 @@ //鐢ㄤ笁涓鎵逛汉锛屽鏋滈兘涓虹┖锛屽氨涓虹┖ String spName = ""; - if (StringUtils.isNotBlank(serviceReimbursementShared.getOpochecker())) { - serviceFundflow.setCheckusername(serviceReimbursementShared.getOpochecker().substring(0, serviceReimbursementShared.getOpochecker().indexOf(" "))); + if (StringUtils.isNotBlank(serviceReimbursementShared.getPresident())) { + serviceFundflow.setCheckusername(serviceReimbursementShared.getPresident().substring(0, serviceReimbursementShared.getPresident().indexOf(" "))); //鏇存柊鏍¢獙鏃堕棿 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); Date parse = new Date(); try { - parse = simpleDateFormat.parse(serviceReimbursementShared.getOpochecker().substring(serviceReimbursementShared.getOpochecker().indexOf(" ") + 1, serviceReimbursementShared.getOpochecker().length())); + parse = simpleDateFormat.parse(serviceReimbursementShared.getPresident().substring(serviceReimbursementShared.getPresident().indexOf(" ") + 1, serviceReimbursementShared.getPresident().length())); } catch (ParseException e) { e.printStackTrace(); } serviceFundflow.setCheckTime(parse); - spName = spName + serviceReimbursementShared.getOpochecker() + " "; + spName = spName + serviceReimbursementShared.getPresident() + " "; } if (StringUtils.isNotBlank(serviceReimbursementShared.getFinvicepresident())) { serviceFundflow.setCheckusername(serviceReimbursementShared.getFinvicepresident().substring(0, serviceReimbursementShared.getFinvicepresident().indexOf(" "))); @@ -401,15 +410,15 @@ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); Date parse = new Date(); - if (StringUtils.isNotBlank(serviceReimbursementShared.getOpochecker())) { + if (StringUtils.isNotBlank(serviceReimbursementShared.getPresident())) { try { - parse = simpleDateFormat.parse(serviceReimbursementShared.getOpochecker().substring(serviceReimbursementShared.getOpochecker().indexOf(" ") + 1, serviceReimbursementShared.getOpochecker().length())); + parse = simpleDateFormat.parse(serviceReimbursementShared.getPresident().substring(serviceReimbursementShared.getPresident().indexOf(" ") + 1, serviceReimbursementShared.getPresident().length())); } catch (ParseException e) { e.printStackTrace(); } - //鍏堟煡璇竴涓媐und鏄惁宸茬粡鏇存柊Opochecker锛屽鏋滄病鏈夋洿鏂帮紝鍒欒繘琛屾洿鏂帮紝骞跺線fundflow琛ㄩ噷鎻掍竴鏉℃暟鎹� - if (StringUtils.isEmpty(serviceReimbursementList.get(0).getOpochecker())) { - reimbursement.setOpochecker(serviceReimbursementShared.getOpochecker()); + //鍏堟煡璇竴涓媐und鏄惁宸茬粡鏇存柊President锛屽鏋滄病鏈夋洿鏂帮紝鍒欒繘琛屾洿鏂帮紝骞跺線fundflow琛ㄩ噷鎻掍竴鏉℃暟鎹� + if (StringUtils.isEmpty(serviceReimbursementList.get(0).getPresident())) { + reimbursement.setPresident(serviceReimbursementShared.getPresident()); serviceReimbursementService.updateById(reimbursement); @@ -419,8 +428,8 @@ serviceFundflow.setCreateTime(new Date()); serviceFundflow.setUpdateBy("admin"); serviceFundflow.setUpdateTime(new Date()); - serviceFundflow.setCheckusername(serviceReimbursementShared.getOpochecker().substring(0, serviceReimbursementShared.getOpochecker().indexOf(" "))); - serviceFundflow.setFlowcontent(serviceReimbursementShared.getOpochecker().substring(0, serviceReimbursementShared.getOpochecker().indexOf(" ")) + "瀹℃壒閫氳繃"); + serviceFundflow.setCheckusername(serviceReimbursementShared.getPresident().substring(0, serviceReimbursementShared.getPresident().indexOf(" "))); + serviceFundflow.setFlowcontent(serviceReimbursementShared.getPresident().substring(0, serviceReimbursementShared.getPresident().indexOf(" ")) + "瀹℃壒閫氳繃"); serviceFundflow.setFlowconclusion(1); serviceFundflow.setFundtype(1); serviceFundflow.setFlowlevel(999); @@ -517,17 +526,61 @@ serviceFundflow.setFundid(fundId); fundflowService.save(serviceFundflow); - ArrayList<ConcurrentHashMap<String, String>> contentList = new ArrayList<>(); - ConcurrentHashMap map = new ConcurrentHashMap(); - map.put("瀹℃壒浜�", split[0]); - map.put("瀹℃壒鏃堕棿", split[1]); - map.put("鎰忚", split[2]); - contentList.add(map); - DingTalkReqVo dingTalkReqVo = new DingTalkReqVo(); - dingTalkReqVo.setTitle("璐㈠姟绯荤粺椹冲洖淇℃伅"); - dingTalkReqVo.setNumber(phone); - dingTalkReqVo.setContents(contentList); - dingTalkService.sendNotification(dingTalkReqVo); +// ArrayList<ConcurrentHashMap<String, String>> contentList = new ArrayList<>(); +// ConcurrentHashMap map = new ConcurrentHashMap(); +// map.put("瀹℃壒浜�", split[0]); +// map.put("瀹℃壒鏃堕棿", split[1]); +// map.put("鎰忚", split[2]); +// contentList.add(map); +// DingTalkReqVo dingTalkReqVo = new DingTalkReqVo(); +// dingTalkReqVo.setTitle("璐㈠姟绯荤粺椹冲洖淇℃伅"); +// dingTalkReqVo.setNumber(phone); +// dingTalkReqVo.setContents(contentList); +// dingTalkService.sendNotification(dingTalkReqVo); } + private ReentrantLock lock = new ReentrantLock(); + + public String myMethod() { + lock.lock(); + String bh = null; + try { + // 浠g爜鍧� + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMM"); + String format = simpleDateFormat.format(new Date()); + ServiceTasknum serviceTasknum = new ServiceTasknum(); + serviceTasknum.setYearmonth(format); + //CW 璐㈠姟 + serviceTasknum.setApptype("CW"); + List<ServiceTasknum> serviceTasknums = ServiceTasknumService.queryList(serviceTasknum); + long nums = 1; + if (CollectionUtils.isEmpty(serviceTasknums)) { + //杩涜鎻掑叆鎿嶄綔 + serviceTasknum.setSerialnumber(nums); + ServiceTasknumService.save(serviceTasknum); + bh = serviceTasknum.getYearmonth() + "0" + nums; + } else { + //鑾峰彇鍞竴鍊肩殑鏈�澶у�� + nums = serviceTasknums.stream().mapToLong(ServiceTasknum::getSerialnumber).max().getAsLong() + 1; + + ServiceTasknum serviceTasknum1 = serviceTasknums.get(0); + serviceTasknum1.setSerialnumber(nums); + //瀵硅鏉℃暟鎹殑鍞竴鍊煎姞1 + ServiceTasknumService.updateById(serviceTasknum1); + //灏嗙敓鎴愮殑缂栧彿杩斿洖 + if (nums < 10) { + bh = serviceTasknums.get(0).getYearmonth() + "0" + nums; + } else { + bh = serviceTasknums.get(0).getYearmonth() + nums; + } + } + } catch (Exception e) { + log.error("鑾峰彇缂栧彿澶辫触浜唟}", e.getStackTrace()); + } finally { + lock.unlock(); + } + return bh; + } + + } -- Gitblit v1.9.3