From ee99290acc01bf294b44f39194f93762d7a3de2d Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 28 二月 2024 18:50:16 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java |   74 +++++++++++++++++++++++++++----------
 1 files changed, 54 insertions(+), 20 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java
index 09ac2f0..bf99142 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java
@@ -7,11 +7,13 @@
 import com.ruoyi.common.constant.HttpStatus;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.MergeFilesToPDFUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.bean.DtoConversionUtils;
 import com.ruoyi.common.utils.poi.ExcelUtil;
@@ -21,6 +23,7 @@
 import com.ruoyi.project.domain.vo.SpFinancialExpensesIn;
 import com.ruoyi.project.domain.vo.SpFinancialExpensesReimbursementOut;
 import com.ruoyi.project.service.*;
+import com.ruoyi.system.service.ISysDeptService;
 import com.ruoyi.system.service.ISysPostService;
 import com.ruoyi.web.controller.enums.PersonType;
 import freemarker.template.Configuration;
@@ -57,6 +60,9 @@
     @Autowired
     private IServiceReimbursementService serviceReimbursementService;
 
+//    @Autowired
+//    private MergeFilesToPDFUtils mergeFilesToPDFUtils;
+
     @Autowired
     private IServiceReimbursementSharedService serviceReimbursementSharedService;
 
@@ -73,7 +79,7 @@
     private IServiceFundflowService serviceFundflowService;
 
     @Autowired
-    private IServiceFundService serviceFundService;
+    private ISysDeptService sysDeptService;
 
     @Autowired
     private IBaseOnlyvalueService baseOnlyvalueService;
@@ -220,7 +226,7 @@
     @ApiOperation("鏂板鎶ラ攢鐢宠")
     //@PreAuthorize("@ss.hasPermi('project:reimbursement:add')")
     @Log(title = "鎶ラ攢鐢宠", businessType = BusinessType.INSERT)
-    @PostMapping
+    @PostMapping("/add")
     @RepeatSubmit
     @Options(useGeneratedKeys = true, keyProperty = "id")
     public AjaxResult add(@RequestBody ServiceReimbursement serviceReimbursement) {
@@ -234,6 +240,17 @@
         return error();
     }
 
+//    /**
+//     * 宸梾璐逛笂鎶�
+//     */
+//    @ApiOperation("宸梾璐逛笂鎶�")
+//    @Log(title = "宸梾璐逛笂鎶�", businessType = BusinessType.OTHER)
+//    @PostMapping("/test")
+//    public AjaxResult test(@RequestBody CheckFundVO checkFundVO) {
+//        mergeFilesToPDFUtils.generatePdf(checkFundVO.getFileNames(), checkFundVO.getOutputFile());
+//        return AjaxResult.success(200);
+//    }
+
 
     /**
      * 宸梾璐逛笂鎶�
@@ -244,14 +261,26 @@
     public AjaxResult travelexpensereport(@RequestBody CheckFundVO checkFundVO) {
         ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(checkFundVO.getFundid());
         serviceReimbursement.setApplyTime(new Date());
+        Long flowLavel = null;
+
+        LoginUser loginUser = getLoginUser();
+        SysUser user = loginUser.getUser();
+
+        //鏌ヨ蹇呭浜�
+        ServiceFundflowrule serviceFundflowrule = new ServiceFundflowrule();
+        serviceFundflowrule.setApplytype("0");
+        serviceFundflowrule.setMustAudite(1);
+        serviceFundflowrule.setDel_flag(0);
+        List<ServiceFundflowrule> serviceFundflowrules = serviceFundflowruleService.queryList(serviceFundflowrule);
+        log.info("reimbursement蹇呭浜虹殑绛夌骇涓猴細{}", serviceFundflowrules.get(0).getFlowlevel());
+
         //濡傛灉绛変簬100锛岃鏄庡凡缁忚蛋鍒板尰闄㈣储鍔¢偅杈逛簡锛涜储鍔¢偅杈瑰彇鏁版嵁鏄粠鍒嗕韩琛ㄥ彇锛屾墍浠ワ紝杩欓噷鐩存帴寰�鍒嗕韩琛ㄩ噷娣诲姞鏁版嵁灏辫浜�;
         if (!Objects.isNull(serviceReimbursement) && serviceReimbursement.getBackflowlevel() != null) {
             if (serviceReimbursement.getBackflowlevel() == 100 || serviceReimbursement.getBackflowlevel() == 199) {
-//            if (serviceReimbursement.getBackflowlevel() == 199) {
                 //灏嗛��鍥為樁娈佃缃垚100
                 serviceReimbursement.setBackflowlevel(100L);
                 //閫�鍥炲啀鎻愪氦锛岄渶瑕佸啀鍒板嚭绾抽偅閲�
-                serviceReimbursement.setFlowlevel(1L);
+                serviceReimbursement.setFlowlevel(Long.valueOf(serviceFundflowrules.get(0).getFlowlevel() - 1));
                 serviceReimbursement.setRecordstatus(2);
                 serviceReimbursementService.updateById(serviceReimbursement);
 
@@ -259,9 +288,9 @@
 //                serviceReimbursementService.addSharedData(checkFundVO.getFundid());
 
                 return success();
-            } else if (serviceReimbursement.getBackflowlevel() == 2) {
-                //鑱傜閫�鍥炵殑锛屼篃闇�瑕佽蛋鍑虹撼閭i噷
-                serviceReimbursement.setFlowlevel(1L);
+            } else if (serviceReimbursement.getBackflowlevel() >= Long.valueOf(serviceFundflowrules.get(0).getFlowlevel())) {
+                //蹇呭浜洪瀵奸��鍥炵殑锛屼篃闇�瑕佽蛋蹇呭浜洪偅閲�
+                serviceReimbursement.setFlowlevel(Long.valueOf(serviceFundflowrules.get(0).getFlowlevel() - 1));
                 serviceReimbursement.setRecordstatus(2);
                 serviceReimbursementService.updateById(serviceReimbursement);
                 return success();
@@ -269,8 +298,6 @@
         }
         if (serviceReimbursement != null) {
             Integer TotalLevel = 0;
-            LoginUser loginUser = getLoginUser();
-            SysUser user = loginUser.getUser();
             List<Integer> postids = postService.selectPostListByUserId(loginUser.getUserId());
 
             if (!postids.contains(2)) {
@@ -278,8 +305,8 @@
                 if (serviceReimbursement.getBackflowlevel() != null) {
                     serviceReimbursement.setFlowlevel(serviceReimbursement.getBackflowlevel());
                 } else {
-                    serviceReimbursement.setBackflowlevel(1L);
-                    serviceReimbursement.setFlowlevel(1L);
+                    serviceReimbursement.setBackflowlevel(Long.valueOf(serviceFundflowrules.get(0).getFlowlevel() - 1));
+                    serviceReimbursement.setFlowlevel(Long.valueOf(serviceFundflowrules.get(0).getFlowlevel() - 1));
                 }
             } else {
                 serviceReimbursement.setRecordstatus(0);
@@ -301,7 +328,8 @@
                 serviceFundflow.setApplytype("0");
                 serviceFundflow.setFlowconclusion(1);
                 serviceFundflow.setFlowcontent("闈炰笓鑱屼汉鍛樼洿鎺ヨ繘鍏ヤ簩绾у鏍�");
-                serviceFundflow.setFlowlevel(1);
+
+                serviceFundflow.setFlowlevel(serviceFundflowrules.get(0).getFlowlevel() - 1);
                 serviceFundflowService.save(serviceFundflow);
             }
 
@@ -368,12 +396,15 @@
                 }
 
                 if (serviceReimbursement.getFlowlevel() == 1 && serviceReimbursement.getBackflowlevel() == 100) {
-                    log.info("鍑哄樊琛ヨ创琚� 璐㈠姟閫�鍥炲啀鎻愪氦锛屽嚭绾冲啀娆″鎵癸紝涔嬪悗鎻愪氦鍒拌储鍔�");
+                    log.info("鍑哄樊琛ヨ创琚� 璐㈠姟閫�鍥炲啀鎻愪氦锛屽嚭绾冲啀娆″鎵癸紝涔嬪悗鎻愪氦鍒拌储鍔�:{}", serviceReimbursement.getId());
                     //璇存槑鏄储鍔¢��鍥炲啀鎻愪氦鐨�.闇�瑕佸嚭绾冲啀鐪嬩竴閬嶏紝娌¢棶棰樹箣鍚庯紝寰�鍒嗕韩琛ㄩ噷鏂板
-                    serviceReimbursementService.addSharedData(serviceReimbursement.getId());
-                    serviceReimbursement.setFlowlevel(100L);
+//                    serviceReimbursementService.addSharedData(serviceReimbursement.getId());
+
+                    serviceReimbursement.setFlowlevel(serviceFundflowrules.get(0).getTotallevel().longValue());
                     serviceReimbursement.setRecordstatus(99);
-                    serviceReimbursementService.updateById(serviceReimbursement);
+                    serviceReimbursement.setUploadStates(0);
+                    boolean b = serviceReimbursementService.updateById(serviceReimbursement);
+                    log.info("鏄惁淇敼鎴愬姛:{}", b);
 
                     //淇濆瓨瀹℃壒娴佺▼琛�
                     ServiceFundflow serviceFundflow = new ServiceFundflow();
@@ -450,6 +481,7 @@
             //001瀹℃壒閫氳繃涔嬪悗锛屽氨闇�瑕佹妸鈥滃姙鍏涓讳换鈥濈殑鍚嶅瓧濉笂
             if (checkFundVO.getFlowconclusion() == 1 && user.getUserName().equals("001")) {
                 serviceReimbursement.setOfficedirector(user.getNickName());
+                serviceReimbursement.setUploadStates(0);
             }
 
             serviceReimbursementService.updateById(serviceReimbursement);
@@ -470,10 +502,12 @@
                 serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁�氳繃");
                 serviceSystemmessage.setMessagecontent("鎮�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime()) + "鎻愪氦鐨勫叧浜庢崘鐚渚嬨��" + serviceReimbursement.getDonorname() + "銆戠殑宸梾璐圭敵璇峰凡閫氳繃" + (OriginalFlowLevel + 1) + "绾у鏍�");
                 log.info("totalLevel鐨勫�� : {},  OriginalFlowLevel鐨勫��:{}", totalLevel, OriginalFlowLevel);
-                if (totalLevel == OriginalFlowLevel + 1) {
-                    //鎵�鏈夋暟鎹柊澧炲埌澶囦唤琛�
-                    serviceReimbursementService.addSharedData(checkFundVO.getFundid());
-                }
+
+                //杩欎竴鍧楁斁瀹氭椂浠诲姟閲屽仛
+//                if (totalLevel == OriginalFlowLevel + 1) {
+//                    //鎵�鏈夋暟鎹柊澧炲埌澶囦唤琛�
+//                    serviceReimbursementService.addSharedData(checkFundVO.getFundid());
+//                }
             } else {
                 //椹冲洖
                 serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁┏鍥�");

--
Gitblit v1.9.3