From 4274addd786ff7b0e6faffb59e90029911b90232 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 16 八月 2024 14:17:55 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java |  172 ++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 126 insertions(+), 46 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 13ed330..0f41336 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,9 +1,13 @@
 package com.ruoyi.quartz.task;
 
+import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.utils.bean.DtoConversionUtils;
 import com.ruoyi.project.domain.*;
 import com.ruoyi.project.domain.vo.DingTalkReqVo;
 import com.ruoyi.project.service.*;
+import com.ruoyi.system.mapper.SysUserMapper;
+import com.ruoyi.system.service.ISysUserService;
+import com.taobao.api.ApiException;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -13,6 +17,9 @@
 
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.time.format.DateTimeParseException;
 import java.util.*;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.locks.ReentrantLock;
@@ -42,16 +49,22 @@
 
     @Autowired
     private IServiceFundflowruleService iServiceFundflowruleService;
-    @Autowired
 
+    @Autowired
     private IServiceFundService serviceFundService;
+
+    @Autowired
+    private ISysUserService sysUserService;
+
+    @Autowired
+    private IServiceSystemmessageService iServiceSystemmessageService;
 
 
     @Autowired
     private IServiceFundflowService fundflowService;
 
     public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) {
-        System.out.println(StringUtils.format("鎵ц澶氬弬鏂规硶锛� 瀛楃涓茬被鍨媨}锛屽竷灏旂被鍨媨}锛岄暱鏁村瀷{}锛屾诞鐐瑰瀷{}锛屾暣褰}", s, b, l, d, i));
+        System.out.println(StringUtils.format("鎵ц澶氬弬鏂规硶锛� 瀛楃涓茬被鍨媨}锛屽竷灏旂被鍨媨}锛岄暱鏁村瀷{}锛屾诞鐐瑰瀷{}锛屾暣褰}" , s, b, l, d, i));
     }
 
     public void ryParams(String params) {
@@ -62,7 +75,7 @@
         System.out.println("鎵ц鏃犲弬鏂规硶");
     }
 
-    public void checkReportInfo() {
+    public void checkReportInfo() throws ApiException {
         //鏌ュ嚭鎵�鏈夎鍖婚櫌閫�鍥炵殑Fund鏁版嵁
         List<ServiceFundShared> serviceFundShareds = serviceFundSharedService.queryFundShareList();
         for (ServiceFundShared serviceFundShared : serviceFundShareds) {
@@ -74,8 +87,9 @@
                 }
                 String phone = serviceFundShared.getPhone();
                 //灏嗗垎浜噷鐨勮鏁版嵁鍒犻櫎
-                serviceFundSharedService.delfundsharedInfoById(serviceFundShared.getId());
-
+                log.info("checkReportInfo涓叆鍙侷D涓猴細{}" , serviceFundShared.getId());
+                Boolean aBoolean = serviceFundSharedService.delfundsharedInfoById(serviceFundShared.getId(), null);
+                log.info("fund鍒嗕韩琛ㄩ噷鐨勬暟鎹槸鍚﹀垹闄ゆ垚鍔燂細{}" , aBoolean);
                 ServiceFund serviceFund = new ServiceFund();
                 serviceFund.setId(serviceFundShared.getSerfunid());
                 List<ServiceFund> serviceFunds = serviceFundService.queryInfoById(serviceFund);
@@ -85,7 +99,23 @@
                 serviceFund1.setRecordstatus(-1);
                 serviceFund1.setBackflowlevel(199);
                 serviceFundService.updateById(serviceFund1);
-                sendMeg(split, phone, serviceFundShared.getApplytype(), 2, serviceFundShared.getSerfunid());
+
+                SysUser sysUser = sysUserService.selectUserByUserName(serviceFund1.getUserno());
+                sendMeg(split, sysUser.getPhonenumber(), serviceFundShared.getApplytype(), 2, serviceFundShared.getSerfunid());
+                //鍙戦�佷俊鎭繚瀛�
+                ServiceSystemmessage serviceSystemmessage = new ServiceSystemmessage();
+                serviceSystemmessage.setFundtype(1);
+                serviceSystemmessage.setSenduserno(sysUser.getUserName());
+                serviceSystemmessage.setSendusername(sysUser.getNickName());
+                serviceSystemmessage.setReceiveuserno(serviceFund.getUserno());
+                serviceSystemmessage.setReceiveusername(serviceFund.getUsername());
+                serviceSystemmessage.setUpdateTime(new Date());
+                serviceSystemmessage.setUpdateBy(sysUser.getNickName());
+                serviceSystemmessage.setIsread(0);
+                serviceSystemmessage.setMessagetype(1);
+                serviceSystemmessage.setMessagetitle("璐㈠姟绯荤粺椹冲洖淇℃伅");
+                serviceSystemmessage.setMessagecontent(serviceFundShared.getCxrjyj());
+                iServiceSystemmessageService.save(serviceSystemmessage);
             } else {
                 //涓嶆槸閫�鍥炵殑鎿嶄綔
                 if (StringUtils.isNotBlank(serviceFundShared.getZffs()) && serviceFundShared.getSpjg() == 0) {
@@ -115,7 +145,7 @@
                     }
                     serviceFund.setRiqi(serviceFundShared.getRiqi());
                     boolean b = serviceFundService.updateById(serviceFund);
-                    log.info("鏇存柊serviceFund閲岀殑zffs琛ㄦ槸鍚︽垚鍔�: {}", b);
+                    log.info("鏇存柊serviceFund閲岀殑zffs琛ㄦ槸鍚︽垚鍔�: {}" , b);
                     ServiceFundflow serviceFundflow = new ServiceFundflow();
                     serviceFundflow.setCreateBy("admin");
                     serviceFundflow.setCreateTime(new Date());
@@ -293,14 +323,14 @@
             if (StringUtils.isNotBlank(serviceReimbursementShared.getOabdzt()) && serviceReimbursementShared.getOabdzt().equals("宸叉挙閿�")) {
                 String phone = serviceReimbursementShared.getPhone();
                 String[] split = null;
-                log.info("serviceReimbursementShared.getCxrjyj(): {}", serviceReimbursementShared.getCxrjyj());
+                log.info("serviceReimbursementShared.getCxrjyj(): {}" , serviceReimbursementShared.getCxrjyj());
                 if (StringUtils.isNotBlank(serviceReimbursementShared.getCxrjyj())) {
                     split = serviceReimbursementShared.getCxrjyj().split("&");
                 }
 
                 //灏嗗垎浜噷鐨勮鏁版嵁鍒犻櫎
-                serviceReimbursementSharedService.delResharedInfoById(serviceReimbursementShared.getId());
-
+                Boolean aBoolean = serviceReimbursementSharedService.delResharedInfoById(serviceReimbursementShared.getId());
+                log.info("灏嗗垎浜噷鐨勮鏁版嵁鍒犻櫎: {}" , aBoolean);
                 //灏咶lowlevel 璁剧疆涓�0;
                 ServiceReimbursement serviceReimbursement = new ServiceReimbursement();
                 serviceReimbursement.setId(serviceReimbursementShared.getReimid());
@@ -312,7 +342,23 @@
                 serviceReimbursement1.setBackflowlevel(199L);
                 serviceReimbursement1.setRecordstatus(-1);
                 serviceReimbursementService.updateById(serviceReimbursement1);
-                sendMeg(split, phone, "0", 1, serviceReimbursementShared.getReimid());
+
+                SysUser sysUser = sysUserService.selectUserByUserName(serviceReimbursement1.getUserno());
+                //鍙戦�佷俊鎭繚瀛�
+                sendMeg(split, sysUser.getPhonenumber(), "0" , 1, serviceReimbursementShared.getReimid());
+                ServiceSystemmessage serviceSystemmessage = new ServiceSystemmessage();
+                serviceSystemmessage.setFundtype(1);
+                serviceSystemmessage.setSenduserno(sysUser.getUserName());
+                serviceSystemmessage.setSendusername(sysUser.getNickName());
+                serviceSystemmessage.setReceiveuserno(serviceReimbursement1.getUserno());
+                serviceSystemmessage.setReceiveusername(serviceReimbursement1.getUsername());
+                serviceSystemmessage.setUpdateTime(new Date());
+                serviceSystemmessage.setUpdateBy(sysUser.getNickName());
+                serviceSystemmessage.setIsread(0);
+                serviceSystemmessage.setMessagetype(1);
+                serviceSystemmessage.setMessagetitle("璐㈠姟绯荤粺椹冲洖淇℃伅");
+                serviceSystemmessage.setMessagecontent(serviceReimbursementShared.getCxrjyj());
+                iServiceSystemmessageService.save(serviceSystemmessage);
             } else {
                 //涓嶆槸閫�鍥炵殑鎿嶄綔
 
@@ -343,7 +389,7 @@
                         serviceReimbursement.setFinancechecher(serviceReimbursementShared.getFinancechecher());
                     }
                     boolean b = serviceReimbursementService.updateById(serviceReimbursement);
-                    log.info("鏇存柊serviceReimbursement閲岀殑zffs琛ㄦ槸鍚︽垚鍔�: {}", b);
+                    log.info("鏇存柊serviceReimbursement閲岀殑zffs琛ㄦ槸鍚︽垚鍔�: {}" , b);
                     ServiceFundflow serviceFundflow = new ServiceFundflow();
                     serviceFundflow.setCreateBy("admin");
                     serviceFundflow.setCreateTime(new Date());
@@ -508,7 +554,6 @@
 
                             serviceFundflow.setCheckTime(parse);
                             fundflowService.save(serviceFundflow);
-
                         }
                         //濡傛灉宸茬粡鏇存柊鍒欎笉鍦ㄥ鐞�
                     }
@@ -518,15 +563,30 @@
     }
 
 
-    public void sendMeg(String[] split, String phone, String applyType, Integer fundType, Long fundId) {
+    public void sendMeg(String[] split, String phone, String applyType, Integer fundType, Long fundId) throws ApiException {
+        String content = null;
+        String time = null;
+        String people = null;
+
+        if (split.length >= 1) {
+            people = split[0];
+        }
+        if (split.length >= 2) {
+            time = split[1];
+        }
+        if (split.length >= 3) {
+            content = split[2];
+        }
+
         //璁板綍鎿嶄綔璁板綍
         ServiceFundflow serviceFundflow = new ServiceFundflow();
-        serviceFundflow.setCreateBy("admin");
+
+        serviceFundflow.setCreateBy(people);
+        serviceFundflow.setUpdateBy(people);
+        serviceFundflow.setCheckusername(people);
         serviceFundflow.setCreateTime(new Date());
-        serviceFundflow.setUpdateBy("admin");
         serviceFundflow.setUpdateTime(new Date());
-        serviceFundflow.setCheckusername(split[0]);
-        serviceFundflow.setFlowcontent(split[2]);
+        serviceFundflow.setFlowcontent(content);
         serviceFundflow.setFlowconclusion(2);
         serviceFundflow.setFundtype(fundType);
         serviceFundflow.setFlowlevel(100);
@@ -534,17 +594,34 @@
         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, Object>> contentList = new ArrayList<>();
+        ConcurrentHashMap map = new ConcurrentHashMap();
+        map.put("瀹℃壒浜猴細" , people);
+        try {
+            boolean validDateTime = isValidDateTime(time);
+            if (validDateTime) map.put("瀹℃壒鏃堕棿锛�" , new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(time));
+            else map.put("瀹℃壒鏃堕棿锛�" , new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(time + ":00"));
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        map.put("鎰忚锛�" , content);
+        contentList.add(map);
+        DingTalkReqVo dingTalkReqVo = new DingTalkReqVo();
+        dingTalkReqVo.setTitle("璐㈠姟绯荤粺椹冲洖淇℃伅");
+        dingTalkReqVo.setNumber(phone);
+        dingTalkReqVo.setContents(contentList);
+        log.info("閽夐拤鍙戦�佹秷鎭�:{}" , dingTalkReqVo);
+        dingTalkService.sendNotification(dingTalkReqVo);
+    }
+
+    public boolean isValidDateTime(String dateTime) {
+        try {
+            DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+            LocalDateTime.parse(dateTime, formatter);
+            return true;
+        } catch (DateTimeParseException e) {
+            return false;
+        }
     }
 
     private ReentrantLock lock = new ReentrantLock();
@@ -583,7 +660,7 @@
                 }
             }
         } catch (Exception e) {
-            log.error("鑾峰彇缂栧彿澶辫触浜唟}", e.getStackTrace());
+            log.error("鑾峰彇缂栧彿澶辫触浜唟}" , e.getStackTrace());
         } finally {
             lock.unlock();
         }
@@ -599,7 +676,7 @@
         //澶勭悊宸梾鎶ラ攢
         serviceFundflowrule.setApplytype("0");
         List<ServiceFundflowrule> serviceFundflowrules = iServiceFundflowruleService.queryList(serviceFundflowrule);
-        log.info("宸梾鐨勬渶楂樼瓑绾�:{}", serviceFundflowrules.get(0).getTotallevel());
+        log.info("宸梾鐨勬渶楂樼瓑绾�:{}" , serviceFundflowrules.get(0).getTotallevel());
         ServiceReimbursement serviceReimbursement = new ServiceReimbursement();
         serviceReimbursement.setFlowlevel(serviceFundflowrules.get(0).getTotallevel().longValue());
         serviceReimbursement.setUploadStates(1);
@@ -607,14 +684,14 @@
         List<ServiceReimbursement> serviceReimbursementList = serviceReimbursementService.queryList(serviceReimbursement);
         for (ServiceReimbursement serviceReimbursement1 : serviceReimbursementList) {
             try {
-                log.info("鎻掑叆鍒嗕韩琛ㄧ殑ID涓猴細{}", serviceReimbursement1.getId());
+                log.info("鎻掑叆鍒嗕韩琛ㄧ殑ID涓猴細{}" , serviceReimbursement1.getId());
                 Boolean aBoolean = serviceReimbursementService.addSharedData(serviceReimbursement1.getId());
                 if (aBoolean) {
                     ServiceReimbursement serviceReimbursement3 = new ServiceReimbursement();
                     serviceReimbursement3.setId(serviceReimbursement1.getId());
                     serviceReimbursement3.setUploadStates(2);
                     boolean b = serviceReimbursementService.updateById(serviceReimbursement3);
-                    log.info("serviceReimbursement鏄惁鎻掑叆鎴愬姛{},{}", aBoolean, b);
+                    log.info("serviceReimbursement鏄惁鎻掑叆鎴愬姛{},{}" , aBoolean, b);
                 }
             } catch (Exception e) {
                 ServiceReimbursement serviceReimbursement2 = new ServiceReimbursement();
@@ -627,36 +704,36 @@
         //涓撳鍔冲姟璐圭敵璇�
         serviceFundflowrule.setApplytype("1");
         List<ServiceFundflowrule> serviceFundflowrules2 = iServiceFundflowruleService.queryList(serviceFundflowrule);
-        log.info("涓撳鍔冲姟鐨勬渶楂樼瓑绾�:{}", serviceFundflowrules2.get(0).getTotallevel());
-        addFunfShared(serviceFundflowrules2.get(0).getTotallevel().longValue(), "1");
+        log.info("涓撳鍔冲姟鐨勬渶楂樼瓑绾�:{}" , serviceFundflowrules2.get(0).getTotallevel());
+        addFundShared(serviceFundflowrules2.get(0).getTotallevel().longValue(), "1");
 
         //浼︾悊涓撳鍔冲姟璐圭敵璇�
         serviceFundflowrule.setApplytype("2");
         List<ServiceFundflowrule> serviceFundflowrules3 = iServiceFundflowruleService.queryList(serviceFundflowrule);
-        log.info("浼︾悊涓撳鍔冲姟璐圭敵璇�:{}", serviceFundflowrules3.get(0).getTotallevel());
-        addFunfShared(serviceFundflowrules3.get(0).getTotallevel().longValue(), "2");
+        log.info("浼︾悊涓撳鍔冲姟璐圭敵璇�:{}" , serviceFundflowrules3.get(0).getTotallevel());
+        addFundShared(serviceFundflowrules3.get(0).getTotallevel().longValue(), "2");
 
         //鍖诲鎴愭湰鎶ラ攢
         serviceFundflowrule.setApplytype("3");
         List<ServiceFundflowrule> serviceFundflowrules4 = iServiceFundflowruleService.queryList(serviceFundflowrule);
-        log.info("鍖诲鎴愭湰鎶ラ攢:{}", serviceFundflowrules4.get(0).getTotallevel());
-        addFunfShared(serviceFundflowrules4.get(0).getTotallevel().longValue(), "3");
+        log.info("鍖诲鎴愭湰鎶ラ攢:{}" , serviceFundflowrules4.get(0).getTotallevel());
+        addFundShared(serviceFundflowrules4.get(0).getTotallevel().longValue(), "3");
 
         //鍔炲叕璐圭敤鎶ラ攢
         serviceFundflowrule.setApplytype("4");
         List<ServiceFundflowrule> serviceFundflowrules5 = iServiceFundflowruleService.queryList(serviceFundflowrule);
-        log.info("鍔炲叕璐圭敤鎶ラ攢:{}", serviceFundflowrules5.get(0).getTotallevel());
-        addFunfShared(serviceFundflowrules5.get(0).getTotallevel().longValue(), "4");
+        log.info("鍔炲叕璐圭敤鎶ラ攢:{}" , serviceFundflowrules5.get(0).getTotallevel());
+        addFundShared(serviceFundflowrules5.get(0).getTotallevel().longValue(), "4");
 
         //缁╂晥瀹℃壒鎶ラ攢
         serviceFundflowrule.setApplytype("5");
         List<ServiceFundflowrule> serviceFundflowrules6 = iServiceFundflowruleService.queryList(serviceFundflowrule);
-        log.info("鍔炲叕璐圭敤鎶ラ攢:{}", serviceFundflowrules6.get(0).getTotallevel());
-        addFunfShared(serviceFundflowrules6.get(0).getTotallevel().longValue(), "5");
+        log.info("鍔炲叕璐圭敤鎶ラ攢:{}" , serviceFundflowrules6.get(0).getTotallevel());
+        addFundShared(serviceFundflowrules6.get(0).getTotallevel().longValue(), "5");
 
     }
 
-    private void addFunfShared(Long totallevel, String applyType) {
+    private void addFundShared(Long totallevel, String applyType) {
         ServiceFund serviceFund = new ServiceFund();
         serviceFund.setFlowlevel(totallevel);
         serviceFund.setUploadStates(1);
@@ -665,18 +742,21 @@
         List<ServiceFund> serviceFundList = serviceFundService.queryList(serviceFund);
         for (ServiceFund serviceFund1 : serviceFundList) {
             try {
-                log.info("鎻掑叆鍒嗕韩琛ㄧ殑FundID涓猴細{}", serviceFund1.getId());
+                log.info("鎻掑叆鍒嗕韩琛ㄧ殑FundID涓猴細{}" , serviceFund1.getId());
                 Boolean aBoolean = serviceFundService.addFundSharedInfo(serviceFund1.getId());
                 if (aBoolean) {
                     ServiceFund serviceFund2 = new ServiceFund();
                     serviceFund2.setId(serviceFund1.getId());
                     serviceFund2.setUploadStates(2);
+                    serviceFund2.setUpdateTime(new Date());
                     boolean b = serviceFundService.updateById(serviceFund2);
-                    log.info("serviceReimbursement鏄惁鎻掑叆鎴愬姛{},{}", aBoolean, b);
+                    log.info("serviceReimbursement鏄惁鎻掑叆鎴愬姛{},{}" , aBoolean, b);
                 }
             } catch (Exception e) {
+                e.printStackTrace();
                 ServiceFund serviceFund2 = new ServiceFund();
                 serviceFund2.setId(serviceFund1.getId());
+                serviceFund2.setUploadStates(1);
                 serviceFund2.setNotes("鎻掑叆fund鍒嗕韩琛ㄥけ璐�");
                 serviceFundService.updateById(serviceFund2);
             }

--
Gitblit v1.9.3