From d5c2c0762ccbb2bb33635f99480d404f1fb10d5a Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 22 二月 2024 18:26:29 +0800
Subject: [PATCH] 修改流程代码提交

---
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java |  194 ++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 170 insertions(+), 24 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 b7f39b1..2f6df59 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,21 @@
 package com.ruoyi.quartz.task;
 
+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.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 org.springframework.util.ObjectUtils;
 
-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,20 +29,23 @@
     private DingTalkService dingTalkService;
 
     @Autowired
+    private IServiceReimbursementService serviceReimbursementService;
+
+    @Autowired
+    private IServiceTasknumService ServiceTasknumService;
+
+    @Autowired
     private IServiceReimbursementSharedService serviceReimbursementSharedService;
 
     @Autowired
     private IServiceFundSharedService serviceFundSharedService;
 
     @Autowired
-    private IServiceFunddetailSharedService serviceFunddetailSharedService;
-
-
+    private IServiceFundflowruleService iServiceFundflowruleService;
     @Autowired
+
     private IServiceFundService serviceFundService;
 
-    @Autowired
-    private IServiceReimbursementService serviceReimbursementService;
 
     @Autowired
     private IServiceFundflowService fundflowService;
@@ -65,7 +68,10 @@
         for (ServiceFundShared serviceFundShared : serviceFundShareds) {
             if (StringUtils.isNotBlank(serviceFundShared.getOabdzt()) && serviceFundShared.getOabdzt().equals("宸叉挙閿�")) {
                 //濡傛灉鏈夎储鍔¢┏鍥炰俊鎭鏄庢槸閫�鍥炵殑
-                String[] split = serviceFundShared.getCxrjyj().split("&");
+                String[] split = null;
+                if (StringUtils.isNotEmpty(serviceFundShared.getCxrjyj())) {
+                    split = serviceFundShared.getCxrjyj().split("&");
+                }
                 String phone = serviceFundShared.getPhone();
                 //灏嗗垎浜噷鐨勮鏁版嵁鍒犻櫎
                 serviceFundSharedService.delfundsharedInfoById(serviceFundShared.getId());
@@ -74,7 +80,7 @@
                 serviceFund.setId(serviceFundShared.getSerfunid());
                 List<ServiceFund> serviceFunds = serviceFundService.queryList(serviceFund);
                 ServiceFund serviceFund1 = serviceFunds.get(0);
-                serviceFund1.setFlowlevel(100);
+                serviceFund1.setFlowlevel(100L);
                 serviceFund1.setDel_flag(0);
                 serviceFund1.setRecordstatus(-1);
                 serviceFund1.setBackflowlevel(199);
@@ -83,8 +89,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(serviceFundShared.getBh());
                     serviceFund.setId(serviceFundShared.getSerfunid());
                     serviceFund.setZffs(serviceFundShared.getZffs());
                     if (StringUtils.isNotBlank(serviceFundShared.getPresident())) {
@@ -156,10 +164,10 @@
                     }
                     serviceFundflow.setFlowcontent(spname + "瀹℃壒閫氳繃");
                     serviceFundflow.setFlowconclusion(1);
-                    serviceFundflow.setFundtype(1);
+                    serviceFundflow.setFundtype(2);
                     // 999 閫氳繃
                     serviceFundflow.setFlowlevel(999);
-                    serviceFundflow.setApplytype(null);
+                    serviceFundflow.setApplytype(serviceFundShared.getApplytype());
                     serviceFundflow.setFundid(serviceFundShared.getSerfunid());
                     serviceFundShared.setSpjg(1);
                     fundflowService.save(serviceFundflow);
@@ -203,9 +211,9 @@
                             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.setFundtype(2);
                             serviceFundflow.setFlowlevel(999);
-                            serviceFundflow.setApplytype(null);
+                            serviceFundflow.setApplytype(serviceFundShared.getApplytype());
                             serviceFundflow.setFundid(serviceFundShared.getSerfunid());
                             serviceFundflow.setCheckTime(parse);
                             fundflowService.save(serviceFundflow);
@@ -234,9 +242,9 @@
                             serviceFundflow.setCheckusername(serviceFundShared.getFinvicepresident().substring(0, serviceFundShared.getFinvicepresident().indexOf(" ")));
                             serviceFundflow.setFlowcontent(serviceFundShared.getFinvicepresident().substring(0, serviceFundShared.getFinvicepresident().indexOf(" ")) + "瀹℃壒閫氳繃");
                             serviceFundflow.setFlowconclusion(1);
-                            serviceFundflow.setFundtype(1);
+                            serviceFundflow.setFundtype(2);
                             serviceFundflow.setFlowlevel(999);
-                            serviceFundflow.setApplytype(null);
+                            serviceFundflow.setApplytype(serviceFundShared.getApplytype());
                             serviceFundflow.setFundid(serviceFundShared.getSerfunid());
                             serviceFundflow.setCheckTime(parse);
                             fundflowService.save(serviceFundflow);
@@ -264,9 +272,9 @@
                             serviceFundflow.setCheckusername(serviceFundShared.getBusvicepresident().substring(0, serviceFundShared.getBusvicepresident().indexOf(" ")));
                             serviceFundflow.setFlowcontent(serviceFundShared.getBusvicepresident().substring(0, serviceFundShared.getBusvicepresident().indexOf(" ")) + "閫氳繃");
                             serviceFundflow.setFlowconclusion(1);
-                            serviceFundflow.setFundtype(1);
+                            serviceFundflow.setFundtype(2);
                             serviceFundflow.setFlowlevel(999);
-                            serviceFundflow.setApplytype(null);
+                            serviceFundflow.setApplytype(serviceFundShared.getApplytype());
                             serviceFundflow.setFundid(serviceFundShared.getSerfunid());
                             serviceFundflow.setCheckTime(parse);
                             fundflowService.save(serviceFundflow);
@@ -300,6 +308,7 @@
                 ServiceReimbursement serviceReimbursement1 = serviceReimbursementList.get(0);
                 serviceReimbursement1.setFlowlevel(100L);
                 serviceReimbursement1.setDelFlag(0);
+                serviceReimbursement1.setUploadStates(0);
                 serviceReimbursement1.setBackflowlevel(199L);
                 serviceReimbursement1.setRecordstatus(-1);
                 serviceReimbursementService.updateById(serviceReimbursement1);
@@ -308,12 +317,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(serviceReimbursementShared.getBh());
                     if (StringUtils.isNotBlank(serviceReimbursementShared.getPresident())) {
                         serviceReimbursement.setPresident(serviceReimbursementShared.getPresident());
                     }
@@ -386,7 +396,7 @@
                     serviceFundflow.setFundtype(1);
                     // 999 閫氳繃
                     serviceFundflow.setFlowlevel(999);
-                    serviceFundflow.setApplytype(null);
+                    serviceFundflow.setApplytype("0");
                     serviceFundflow.setFundid(serviceReimbursementShared.getReimid());
 
                     serviceReimbursementShared.setSpjg(1);
@@ -431,7 +441,7 @@
                             serviceFundflow.setFlowconclusion(1);
                             serviceFundflow.setFundtype(1);
                             serviceFundflow.setFlowlevel(999);
-                            serviceFundflow.setApplytype(null);
+                            serviceFundflow.setApplytype("0");
                             serviceFundflow.setFundid(serviceReimbursementShared.getReimid());
                             serviceFundflow.setCheckTime(parse);
                             fundflowService.save(serviceFundflow);
@@ -462,7 +472,7 @@
                             serviceFundflow.setFlowconclusion(1);
                             serviceFundflow.setFundtype(1);
                             serviceFundflow.setFlowlevel(999);
-                            serviceFundflow.setApplytype(null);
+                            serviceFundflow.setApplytype("0");
                             serviceFundflow.setCheckTime(parse);
                             serviceFundflow.setFundid(serviceReimbursementShared.getReimid());
                             fundflowService.save(serviceFundflow);
@@ -492,7 +502,7 @@
                             serviceFundflow.setFlowconclusion(1);
                             serviceFundflow.setFundtype(1);
                             serviceFundflow.setFlowlevel(999);
-                            serviceFundflow.setApplytype(null);
+                            serviceFundflow.setApplytype("0");
                             serviceFundflow.setCheckTime(parse);
                             serviceFundflow.setFundid(serviceReimbursementShared.getReimid());
 
@@ -537,4 +547,140 @@
 //        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;
+    }
+
+
+    /**
+     * 灏嗘暟鎹瓨鍒板垎浜〃涓�
+     */
+    public void addDataShared() {
+        ServiceFundflowrule serviceFundflowrule = new ServiceFundflowrule();
+        //澶勭悊宸梾鎶ラ攢
+        serviceFundflowrule.setApplytype("0");
+        List<ServiceFundflowrule> serviceFundflowrules = iServiceFundflowruleService.queryList(serviceFundflowrule);
+        log.info("宸梾鐨勬渶楂樼瓑绾�:{}", serviceFundflowrules.get(0).getTotallevel());
+        ServiceReimbursement serviceReimbursement = new ServiceReimbursement();
+        serviceReimbursement.setFlowlevel(serviceFundflowrules.get(0).getTotallevel().longValue());
+        serviceReimbursement.setUploadStates(0);
+        serviceReimbursement.setDelFlag(0);
+        List<ServiceReimbursement> serviceReimbursementList = serviceReimbursementService.queryList(serviceReimbursement);
+        for (ServiceReimbursement serviceReimbursement1 : serviceReimbursementList) {
+            try {
+                log.info("鎻掑叆鍒嗕韩琛ㄧ殑ID涓猴細{}", serviceReimbursement1.getId());
+                Boolean aBoolean = serviceReimbursementService.addSharedData(serviceReimbursement1.getId());
+                if (aBoolean) {
+                    ServiceReimbursement serviceReimbursement3 = new ServiceReimbursement();
+                    serviceReimbursement3.setId(serviceReimbursement1.getId());
+                    serviceReimbursement3.setUploadStates(1);
+                    boolean b = serviceReimbursementService.updateById(serviceReimbursement3);
+                    log.info("serviceReimbursement鏄惁鎻掑叆鎴愬姛{},{}", aBoolean, b);
+                }
+            } catch (Exception e) {
+                ServiceReimbursement serviceReimbursement2 = new ServiceReimbursement();
+                serviceReimbursement2.setId(serviceReimbursement1.getId());
+                serviceReimbursement2.setNotes("鎻掑叆鍒嗕韩琛ㄥけ璐�");
+                serviceReimbursementService.updateById(serviceReimbursement2);
+            }
+        }
+
+        //涓撳鍔冲姟璐圭敵璇�
+        serviceFundflowrule.setApplytype("1");
+        List<ServiceFundflowrule> serviceFundflowrules2 = iServiceFundflowruleService.queryList(serviceFundflowrule);
+        log.info("涓撳鍔冲姟鐨勬渶楂樼瓑绾�:{}", serviceFundflowrules2.get(0).getTotallevel());
+        addFunfShared(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");
+
+        //鍖诲鎴愭湰鎶ラ攢
+        serviceFundflowrule.setApplytype("3");
+        List<ServiceFundflowrule> serviceFundflowrules4 = iServiceFundflowruleService.queryList(serviceFundflowrule);
+        log.info("鍖诲鎴愭湰鎶ラ攢:{}", serviceFundflowrules4.get(0).getTotallevel());
+        addFunfShared(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");
+
+        //缁╂晥瀹℃壒鎶ラ攢
+        serviceFundflowrule.setApplytype("5");
+        List<ServiceFundflowrule> serviceFundflowrules6 = iServiceFundflowruleService.queryList(serviceFundflowrule);
+        log.info("鍔炲叕璐圭敤鎶ラ攢:{}", serviceFundflowrules6.get(0).getTotallevel());
+        addFunfShared(serviceFundflowrules6.get(0).getTotallevel().longValue(), "5");
+
+    }
+
+    private void addFunfShared(Long totallevel, String applyType) {
+        ServiceFund serviceFund = new ServiceFund();
+        serviceFund.setFlowlevel(totallevel);
+        serviceFund.setUploadStates(0);
+        serviceFund.setDel_flag(0);
+        serviceFund.setApplytype(applyType);
+        List<ServiceFund> serviceFundList = serviceFundService.queryList(serviceFund);
+        for (ServiceFund serviceFund1 : serviceFundList) {
+            try {
+                log.info("鎻掑叆鍒嗕韩琛ㄧ殑FundID涓猴細{}", serviceFund1.getId());
+                Boolean aBoolean = serviceFundService.addFundSharedInfo(serviceFund1.getId());
+                if (aBoolean) {
+                    ServiceFund serviceFund2 = new ServiceFund();
+                    serviceFund2.setId(serviceFund1.getId());
+                    serviceFund2.setUploadStates(1);
+                    boolean b = serviceFundService.updateById(serviceFund2);
+                    log.info("serviceReimbursement鏄惁鎻掑叆鎴愬姛{},{}", aBoolean, b);
+                }
+            } catch (Exception e) {
+                ServiceFund serviceFund2 = new ServiceFund();
+                serviceFund2.setId(serviceFund1.getId());
+                serviceFund2.setNotes("鎻掑叆fund鍒嗕韩琛ㄥけ璐�");
+                serviceFundService.updateById(serviceFund2);
+            }
+        }
+    }
+
 }

--
Gitblit v1.9.3