From 65314b14210a175bae095649584614973b3619df Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 12 八月 2025 13:48:14 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java |  189 +----------------------------------------------
 1 files changed, 5 insertions(+), 184 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 482865a..10fe981 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
@@ -85,9 +85,6 @@
     @Autowired
     private ISysPostService postService;
 
-    @Autowired
-    private IServiceSystemmessageService ServiceSystemmessage;
-
     private static Configuration configuration = null;
 
     public ServiceReimbursementController() {
@@ -379,188 +376,12 @@
     @PostMapping("/checkfund")
     public AjaxResult checkFund(@RequestBody CheckFundVO checkFundVO) {
         log.info("瀹℃牳璐圭敤鐨勫叆鍙� : {}", checkFundVO);
-        ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(checkFundVO.getFundid());
-        log.info("瀹℃牳璐圭敤鐨剆erviceReimbursementService.getById杩斿弬 : {}", serviceReimbursement);
-        if (serviceReimbursement != null) {
-            Integer totalLevel = 0;
-            LoginUser loginUser = getLoginUser();
-            ServiceFundflowrule serviceFundflowrule = new ServiceFundflowrule();
-            serviceFundflowrule.setFundtype(1);
-            serviceFundflowrule.setApplytype("0");
-            serviceFundflowrule.setCheckuserno(loginUser.getUsername());
-            List<ServiceFundflowrule> serviceFundflowrules = serviceFundflowruleService.queryList(serviceFundflowrule);
-            log.info("瀹℃牳璐圭敤鐨剆erviceFundflowruleService.queryList杩斿弬 : {}", serviceFundflowrules.size());
-            if (serviceFundflowrules == null || serviceFundflowrules.stream().count() == 0) {
-                return AjaxResult.error(HttpStatus.ERROR, "褰撳墠浜哄憳鏃犳璁板綍瀹℃牳鏉冮檺");
-            }
-
-            if (serviceFundflowrules.get(0).getFlowlevel() - 1 != serviceReimbursement.getFlowlevel()) {
-                return AjaxResult.error(HttpStatus.ERROR, "褰撳墠浜哄憳涓庢璁板綍鐨勫鏍哥骇鍒笉绗�");
-            }
-
-            if (serviceFundflowrules != null && serviceFundflowrules.stream().count() > 0) {
-                totalLevel = serviceFundflowrules.get(0).getTotallevel();
-
-
-            }
-            Integer CheckFlag = 0;
-            Integer RecordStatus = serviceReimbursement.getRecordstatus();
-            Integer FlowLevel = Integer.valueOf(serviceReimbursement.getFlowlevel().toString());
-            if (Objects.isNull(serviceReimbursement.getBackflowlevel()) && !Objects.isNull(serviceReimbursement.getFlowlevel())) {
-                serviceReimbursement.setBackflowlevel(Long.valueOf(FlowLevel.toString()));
-            }
-            Integer OriginalFlowLevel = FlowLevel;
-            if (checkFundVO.getFlowconclusion() == 1) {
-                CheckFlag = 1;
-                if (totalLevel == 0) {
-                    //99 鍙栨秷
-                    RecordStatus = 99;
-                } else {
-
-                    if (totalLevel == FlowLevel + 1) {
-                        RecordStatus = 99;
-                    } else {
-                        RecordStatus = (FlowLevel + 1) * 2;
-                    }
-                }
-
-                if (serviceReimbursement.getFlowlevel() == 1 && serviceReimbursement.getBackflowlevel() == 100) {
-                    log.info("鍑哄樊琛ヨ创琚� 璐㈠姟閫�鍥炲啀鎻愪氦锛屽嚭绾冲啀娆″鎵癸紝涔嬪悗鎻愪氦鍒拌储鍔�:{}", serviceReimbursement.getId());
-                    //璇存槑鏄储鍔¢��鍥炲啀鎻愪氦鐨�.闇�瑕佸嚭绾冲啀鐪嬩竴閬嶏紝娌¢棶棰樹箣鍚庯紝寰�鍒嗕韩琛ㄩ噷鏂板
-//                    serviceReimbursementService.addSharedData(serviceReimbursement.getId());
-
-                    serviceReimbursement.setFlowlevel(serviceFundflowrules.get(0).getTotallevel().longValue());
-                    serviceReimbursement.setRecordstatus(99);
-                    serviceReimbursement.setUploadStates(1);
-                    boolean b = serviceReimbursementService.updateById(serviceReimbursement);
-                    log.info("鏄惁淇敼鎴愬姛:{}", b);
-
-                    //淇濆瓨瀹℃壒娴佺▼琛�
-                    ServiceFundflow serviceFundflow = new ServiceFundflow();
-                    SysUser user = loginUser.getUser();
-                    serviceFundflow.setFundid(serviceReimbursement.getId());
-                    serviceFundflow.setCheckuserno(user.getUserName());
-                    serviceFundflow.setCheckusername(user.getNickName());
-                    serviceFundflow.setFundtype(1);
-                    serviceFundflow.setApplytype("0");
-                    serviceFundflow.setFlowconclusion(CheckFlag);
-                    serviceFundflow.setFlowcontent("閫氳繃");
-                    serviceFundflow.setFlowlevel(OriginalFlowLevel + 1);
-                    Boolean aBoolean = serviceFundflowService.save(serviceFundflow);
-                    return AjaxResult.success();
-                }
-
-                FlowLevel = FlowLevel + 1;
-                serviceReimbursement.setBackflowlevel(Long.valueOf(FlowLevel));
-            } else {
-                CheckFlag = 2;
-
-                if (CheckFlag == 2) {
-                    //搴斿尰闄㈣姹傚鏋滃嚭鐜伴��鍥烇紝鐩存帴閫�鍒板彂璧疯��
-                    FlowLevel = 0;
-                    RecordStatus = -1;
-                } else {
-                    //涓嬮潰鏄師鏉ョ殑鍐欐硶锛屼竴绾т竴绾х殑寰�涓嬮��锛屽尰闄㈢幇鍦ㄤ笉瑕佽繖鏍锋悶浜嗭紝涓嬮潰杩欐浠g爜鍏堜繚鐣欙紝绛夊尰闄㈠洖蹇冭浆鎰忥紝鍐嶇粰鏀惧紑
-                    RecordStatus = (FlowLevel + 1) * 2 - 1;
-                    FlowLevel = (FlowLevel - 1);
-                    if (FlowLevel < 0) {
-                        FlowLevel = 0;
-                    }
-                }
-                SysUser sysUser = sysUserService.selectUserByUserName(serviceReimbursement.getUserno());
-                ArrayList<ConcurrentHashMap<String, Object>> contentList = new ArrayList<>();
-                ConcurrentHashMap map = new ConcurrentHashMap();
-                map.put("瀹℃壒浜猴細", loginUser.getUser().getUserName());
-                map.put("瀹℃壒鏃堕棿锛�", new Date());
-                map.put("鎰忚锛�", "涓嶉�氳繃");
-                if (StringUtils.isNotBlank(checkFundVO.getFlowcontent())) map.put("鎰忚锛�", checkFundVO.getFlowcontent());
-                contentList.add(map);
-                DingTalkReqVo dingTalkReqVo = new DingTalkReqVo();
-                dingTalkReqVo.setTitle("璐㈠姟绯荤粺椹冲洖淇℃伅");
-                dingTalkReqVo.setNumber(sysUser.getPhonenumber());
-                dingTalkReqVo.setContents(contentList);
-                dingTalkService.sendNotification(dingTalkReqVo);
-            }
-
-            serviceReimbursement.setRecordstatus(RecordStatus);
-            serviceReimbursement.setFlowlevel(Long.valueOf(FlowLevel.toString()));
-            ServiceFundflow serviceFundflow = new ServiceFundflow();
-            SysUser user = loginUser.getUser();
-            serviceFundflow.setFundid(serviceReimbursement.getId());
-            serviceFundflow.setCheckuserno(user.getUserName());
-            serviceFundflow.setCheckusername(user.getNickName());
-            serviceFundflow.setFundtype(1);
-            serviceFundflow.setApplytype("0");
-            serviceFundflow.setFlowconclusion(CheckFlag);
-            if (StringUtils.isNotBlank(checkFundVO.getFlowcontent())) {
-                serviceFundflow.setFlowcontent(checkFundVO.getFlowcontent());
-            } else {
-                serviceFundflow.setFlowcontent(checkFundVO.getFlowconclusion() == 1 ? "閫氳繃" : "涓嶉�氳繃");
-            }
-            serviceFundflow.setFlowlevel(OriginalFlowLevel + 1);
-            serviceFundflowService.save(serviceFundflow);
-
-            List<Integer> postids = postService.selectPostListByUserId(loginUser.getUserId());
-            log.info("postService.selectPostListByUserId : {}", postids.size());
-            if (!postids.contains(2) && !postids.contains(6) && (serviceReimbursement.getBackflowlevel() == null || serviceReimbursement.getBackflowlevel() == 0)) {
-                if (CheckFlag == 2 && OriginalFlowLevel == 1) {
-                    ServiceFundflow serviceFundflowAuto = new ServiceFundflow();
-                    serviceFundflowAuto.setFundid(serviceReimbursement.getId());
-                    serviceFundflowAuto.setCheckuserno(user.getUserName());
-                    serviceFundflowAuto.setCheckusername(user.getNickName());
-                    serviceFundflowAuto.setFundtype(1);
-                    serviceFundflowAuto.setApplytype("0");
-                    serviceFundflowAuto.setFlowconclusion(CheckFlag);
-                    serviceFundflowAuto.setFlowcontent("闈炰笓鑱屼汉鍛樹簩绾у鏍告嫆缁濆悗鐩存帴閫�鍥炲埌淇敼鐘舵��");
-                    serviceFundflowAuto.setFlowlevel(1);
-                    serviceFundflowService.save(serviceFundflowAuto);
-                    serviceReimbursement.setRecordstatus(1);
-                }
-
-            }
-            //053瀹℃壒閫氳繃涔嬪悗锛屽氨闇�瑕佹妸鈥滃姙鍏涓讳换鈥濈殑鍚嶅瓧濉笂
-            if (checkFundVO.getFlowconclusion() == 1 && user.getUserName().equals("053")) {
-                serviceReimbursement.setOfficedirector(user.getNickName());
-                serviceReimbursement.setUploadStates(1);
-            }
-
-            serviceReimbursementService.updateById(serviceReimbursement);
-
-            ServiceSystemmessage serviceSystemmessage = new ServiceSystemmessage();
-            serviceSystemmessage.setFundtype(1);
-            serviceSystemmessage.setApplytype("0");
-            serviceSystemmessage.setSenduserno(user.getUserName());
-            serviceSystemmessage.setSendusername(user.getNickName());
-            serviceSystemmessage.setReceiveuserno(serviceReimbursement.getUserno());
-            serviceSystemmessage.setReceiveusername(serviceReimbursement.getUsername());
-            serviceSystemmessage.setIsread(0);
-            serviceSystemmessage.setMessagetype(1);
-            serviceSystemmessage.setUpdateTime(new Date());
-            serviceSystemmessage.setUpdateBy(user.getNickName());
-            serviceSystemmessage.setRelevantno(serviceReimbursement.getId());
-            log.info("CheckFlag鐨勫�� : {}", CheckFlag);
-            if (CheckFlag == 1) {
-                //閫氳繃
-                serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁�氳繃");
-                serviceSystemmessage.setMessagecontent("鎮�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime()) + "鎻愪氦鐨勫樊鏃呮姤閿�鍗曠敵璇峰凡閫氳繃");
-                log.info("totalLevel鐨勫�� : {},  OriginalFlowLevel鐨勫��:{}", totalLevel, OriginalFlowLevel);
-
-                //杩欎竴鍧楁斁瀹氭椂浠诲姟閲屽仛
-//                if (totalLevel == OriginalFlowLevel + 1) {
-//                    //鎵�鏈夋暟鎹柊澧炲埌澶囦唤琛�
-//                    serviceReimbursementService.addSharedData(checkFundVO.getFundid());
-//                }
-            } else {
-                //椹冲洖
-                serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁┏鍥�");
-                serviceSystemmessage.setMessagecontent("鎮�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime()) + "鎻愪氦鐨勫樊鏃呮姤閿�鍗曠敵璇疯椹冲洖锛屽師鍥�:" + checkFundVO.getFlowcontent() + "");
-            }
-            ServiceSystemmessage.save(serviceSystemmessage);
-
-            return AjaxResult.success();
-        } else {
-            return AjaxResult.error(HttpStatus.NO_CONTENT, "璐圭敤缂栧彿涓嶆纭�");
+        Map<String, String> map = serviceReimbursementService.checkFund(getLoginUser(), checkFundVO);
+        Set<String> keys = map.keySet();
+        for (String s : keys) {
+            if (!s.equals("200")) return AjaxResult.error(map.get(s));
         }
+        return AjaxResult.success();
     }
 
 

--
Gitblit v1.9.3