From fd851241cc8ed0d3c4937610a723403efb749361 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 08 八月 2023 17:31:02 +0800
Subject: [PATCH] 修改请求方式
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java | 149 +++++++++++++++++++++++++++++++++++++++----------
1 files changed, 117 insertions(+), 32 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 af24cf9..92614f1 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
@@ -1,7 +1,5 @@
package com.ruoyi.web.controller.project;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.config.RuoYiConfig;
@@ -13,8 +11,8 @@
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.ServiceException;
-import com.ruoyi.common.utils.HttpClientKit;
import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.bean.DtoConversionUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.*;
import com.ruoyi.project.domain.dto.ServiceReimbursementDto;
@@ -29,17 +27,17 @@
import freemarker.template.TemplateException;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.apache.ibatis.annotations.Options;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import java.io.*;
import java.math.BigDecimal;
-import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*;
+import java.util.regex.Pattern;
import java.util.stream.Collectors;
@@ -49,6 +47,7 @@
* @author ruoyi
* @date 2022-01-24
*/
+@Slf4j
@Api("鎶ラ攢鐢宠")
@RestController
@RequestMapping("/project/reimbursement")
@@ -57,10 +56,10 @@
private IServiceReimbursementService serviceReimbursementService;
@Autowired
- private IServiceReimbursementpayeeService reimbursementpayeeService;
+ private IServiceReimbursementSharedService serviceReimbursementSharedService;
@Autowired
- private IServiceReimbursementSharedService serviceReimbursementServiceShare;
+ private IServiceReimbursementpayeeService reimbursementpayeeService;
@Autowired
private IServiceReimbursementdetailService serviceReimbursementdetailService;
@@ -70,6 +69,9 @@
@Autowired
private IServiceFundflowService serviceFundflowService;
+
+ @Autowired
+ private IServiceFundService serviceFundService;
@Autowired
private ISysPostService postService;
@@ -437,6 +439,7 @@
// return 0;
// }
+
/**
* 宸梾璐逛笂鎶�
*/
@@ -445,6 +448,25 @@
@PostMapping("/travelexpensereport")
public AjaxResult travelexpensereport(@RequestBody CheckFundVO checkFundVO) {
ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(checkFundVO.getFundid());
+ //濡傛灉绛変簬100锛岃鏄庡凡缁忚蛋鍒板尰闄㈣储鍔¢偅杈逛簡锛涜储鍔¢偅杈瑰彇鏁版嵁鏄粠鍒嗕韩琛ㄥ彇锛屾墍浠ワ紝杩欓噷鐩存帴寰�鍒嗕韩琛ㄩ噷娣诲姞鏁版嵁灏辫浜�;
+ if (!Objects.isNull(serviceReimbursement) && serviceReimbursement.getBackflowlevel() != null) {
+ if (serviceReimbursement.getBackflowlevel() == 100 || serviceReimbursement.getBackflowlevel() == 199) {
+
+ //灏嗕慨鏀圭殑涓婃姤鏁版嵁 鏂板涓�鏉�
+ ServiceReimbursementShared serviceReimbursementShared = DtoConversionUtils.sourceToTarget(serviceReimbursement, ServiceReimbursementShared.class);
+ serviceReimbursementShared.setId(null);
+ serviceReimbursementShared.setDelFlag(0L);
+ serviceReimbursementShared.setReimid(serviceReimbursement.getId());
+ serviceReimbursementSharedService.save(serviceReimbursementShared);
+
+ //灏嗛��鍥為樁娈佃缃垚100
+ serviceReimbursement.setBackflowlevel(100L);
+ serviceReimbursement.setFlowlevel(100L);
+ serviceReimbursement.setRecordstatus(0);
+ serviceReimbursementService.updateById(serviceReimbursement);
+ return success();
+ }
+ }
if (serviceReimbursement != null) {
Integer TotalLevel = 0;
LoginUser loginUser = getLoginUser();
@@ -453,10 +475,12 @@
if (!postids.contains(2)) {
serviceReimbursement.setFlowlevel(1L);
+ serviceReimbursement.setBackflowlevel(1L);
serviceReimbursement.setRecordstatus(2);
} else {
serviceReimbursement.setFlowlevel(0L);
serviceReimbursement.setRecordstatus(0);
+ serviceReimbursement.setBackflowlevel(0L);
}
if (!postids.contains(2)) {
@@ -488,7 +512,9 @@
@Log(title = "瀹℃牳璐圭敤", businessType = BusinessType.OTHER)
@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();
@@ -497,7 +523,7 @@
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, "褰撳墠浜哄憳鏃犳璁板綍瀹℃牳鏉冮檺");
}
@@ -514,6 +540,9 @@
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;
@@ -530,16 +559,22 @@
FlowLevel = FlowLevel + 1;
} else {
CheckFlag = 2;
- RecordStatus = (FlowLevel + 1) * 2 - 1;
- FlowLevel = (FlowLevel - 1);
- if (FlowLevel < 0) {
+
+ if (CheckFlag == 2) {
+ //搴斿尰闄㈣姹傚鏋滃嚭鐜伴��鍥烇紝鐩存帴閫�鍒板彂璧疯��
FlowLevel = 0;
+ } else {
+ //涓嬮潰鏄師鏉ョ殑鍐欐硶锛屼竴绾т竴绾х殑寰�涓嬮��锛屽尰闄㈢幇鍦ㄤ笉瑕佽繖鏍锋悶浜嗭紝涓嬮潰杩欐浠g爜鍏堜繚鐣欙紝绛夊尰闄㈠洖蹇冭浆鎰忥紝鍐嶇粰鏀惧紑
+ RecordStatus = (FlowLevel + 1) * 2 - 1;
+ FlowLevel = (FlowLevel - 1);
+ if (FlowLevel < 0) {
+ FlowLevel = 0;
+ }
}
}
serviceReimbursement.setRecordstatus(RecordStatus);
serviceReimbursement.setFlowlevel(Long.valueOf(FlowLevel.toString()));
-
ServiceFundflow serviceFundflow = new ServiceFundflow();
SysUser user = loginUser.getUser();
serviceFundflow.setFundid(serviceReimbursement.getId());
@@ -553,7 +588,7 @@
serviceFundflowService.save(serviceFundflow);
List<Integer> postids = postService.selectPostListByUserId(loginUser.getUserId());
-
+ log.info("postService.selectPostListByUserId : {}", postids.size());
if (!postids.contains(2)) {
if (CheckFlag == 2 && OriginalFlowLevel == 1) {
ServiceFundflow serviceFundflowAuto = new ServiceFundflow();
@@ -566,9 +601,9 @@
serviceFundflowAuto.setFlowcontent("闈炰笓鑱屼汉鍛樹簩绾у鏍告嫆缁濆悗鐩存帴閫�鍥炲埌淇敼鐘舵��");
serviceFundflowAuto.setFlowlevel(1);
serviceFundflowService.save(serviceFundflowAuto);
-
serviceReimbursement.setRecordstatus(1);
}
+
}
serviceReimbursementService.updateById(serviceReimbursement);
@@ -583,10 +618,12 @@
serviceSystemmessage.setIsread(0);
serviceSystemmessage.setMessagetype(1);
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()) + "鎻愪氦鐨勫叧浜庢崘鐚渚嬨��" + serviceReimbursement.getDonorname() + "銆戠殑宸梾璐圭敵璇峰凡閫氳繃" + (OriginalFlowLevel + 1) + "绾у鏍�");
+ log.info("totalLevel鐨勫�� : {}, OriginalFlowLevel鐨勫��:{}", totalLevel,OriginalFlowLevel);
if (totalLevel == OriginalFlowLevel + 1) {
//鎵�鏈夋暟鎹柊澧炲埌澶囦唤琛�
serviceReimbursementService.addSharedData(checkFundVO.getFundid());
@@ -611,7 +648,7 @@
@ApiOperation("淇敼鎶ラ攢鐢宠")
//@PreAuthorize("@ss.hasPermi('project:reimbursement:edit')")
@Log(title = "鎶ラ攢鐢宠", businessType = BusinessType.UPDATE)
- @PutMapping
+ @PostMapping("/reimbursementEdit")
@RepeatSubmit
public AjaxResult edit(@RequestBody ServiceReimbursement serviceReimbursement) {
boolean b = serviceReimbursementService.updateById(serviceReimbursement);
@@ -734,24 +771,72 @@
}
map.put(key, otherMoney);
list.add(map);
- // 涓嶄负涓撳鎴栧灞�
- if (!key.equals("3") && !key.equals("4")) {
- //灏嗕笂涓�娆$殑娓呯┖
- FYXM1.delete(0, FYXM1.length());
- //鍐嶆柊澧�
- otherMoneyall = otherMoneyall.add(otherMoney);
- FYXM1.append("OPO宸ヤ綔浜哄憳" + ":" + otherMoneyall + " ");
- } else {
- if (flag == 0) {
- key1 = key;
- flag = 1;
- }
- if (key1 == key) {
- FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney);
- allMoney = allMoney.add(otherMoney);
+ // 涓嶄负涓撳鎴栧灞烇紝key鏈夊彲鑳芥槸鏁板瓧锛屾湁鍙兘鏄眽瀛�
+ Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");
+ boolean matches = pattern.matcher(key).matches();
+ if (matches) {
+ if (!key.equals("3") && !key.equals("4")) {
+ //灏嗕笂涓�娆$殑娓呯┖
+ FYXM1.delete(0, FYXM1.length());
+ //鍐嶆柊澧�
+ otherMoneyall = otherMoneyall.add(otherMoney);
+ FYXM1.append("OP0 宸ヤ綔浜哄憳鎶ラ攢宸梾璐�" + ":" + otherMoneyall + " ");
} else {
- FYXM3.append(PersonType.getInfoByCode(key) + ":" + otherMoney);
- allMoney = allMoney.add(otherMoney);
+ if (flag == 0) {
+ key1 = key;
+ flag = 1;
+ }
+ if (key1 == key) {
+ if (key.equals("3")) {
+// FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney);
+ FYXM2.append("涓撳鎶ラ攢宸梾璐� :" + otherMoney);
+ allMoney = allMoney.add(otherMoney);
+ } else {
+ FYXM2.append("瀹跺睘鎶ラ攢宸梾璐瑰強璇伐璐圭敤 : " + otherMoney);
+ allMoney = allMoney.add(otherMoney);
+ }
+ } else {
+ if (key.equals("3")) {
+// FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney);
+ FYXM3.append("涓撳鎶ラ攢宸梾璐� :" + otherMoney);
+ allMoney = allMoney.add(otherMoney);
+ } else {
+ FYXM3.append("瀹跺睘鎶ラ攢宸梾璐瑰強璇伐璐圭敤 : " + otherMoney);
+ allMoney = allMoney.add(otherMoney);
+ }
+ }
+ }
+ } else {
+ if (!key.equals("涓撳") && !key.equals("瀹跺睘")) {
+ //灏嗕笂涓�娆$殑娓呯┖
+ FYXM1.delete(0, FYXM1.length());
+ //鍐嶆柊澧�
+ otherMoneyall = otherMoneyall.add(otherMoney);
+ FYXM1.append("OP0 宸ヤ綔浜哄憳鎶ラ攢宸梾璐�" + ":" + otherMoneyall + " ");
+ } else {
+ if (flag == 0) {
+ key1 = key;
+ flag = 1;
+ }
+ if (key1 == key) {
+ if (key.equals("涓撳")) {
+// FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney);
+ FYXM2.append("涓撳鎶ラ攢宸梾璐� :" + otherMoney);
+ allMoney = allMoney.add(otherMoney);
+ } else {
+ FYXM2.append("瀹跺睘鎶ラ攢宸梾璐瑰強璇伐璐圭敤 : " + otherMoney);
+ allMoney = allMoney.add(otherMoney);
+ }
+ } else {
+ if (key.equals("涓撳")) {
+// FYXM2.append(PersonType.getInfoByCode(key) + ":" + otherMoney);
+ FYXM3.append("涓撳鎶ラ攢宸梾璐� :" + otherMoney);
+ allMoney = allMoney.add(otherMoney);
+ } else {
+ FYXM3.append("瀹跺睘鎶ラ攢宸梾璐瑰強璇伐璐圭敤 : " + otherMoney);
+ allMoney = allMoney.add(otherMoney);
+ }
+ }
}
}
}
--
Gitblit v1.9.3