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 |   60 +++++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 53 insertions(+), 7 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..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;
 
 /**
  * 瀹氭椂浠诲姟璋冨害娴嬭瘯
@@ -27,6 +23,9 @@
 public class RyTask {
     @Autowired
     private DingTalkService dingTalkService;
+
+    @Autowired
+    private IServiceTasknumService ServiceTasknumService;
 
     @Autowired
     private IServiceReimbursementSharedService serviceReimbursementSharedService;
@@ -83,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())) {
@@ -308,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());
                     }
@@ -537,4 +539,48 @@
 //        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