From 49594433e797d03da3453240bb89186dcf136619 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 11 八月 2023 19:41:42 +0800
Subject: [PATCH] 代码提交
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java | 151 +++++++++++++++++++++++---------------------------
1 files changed, 70 insertions(+), 81 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
index b266873..737e585 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
@@ -11,6 +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.tax.TaxtUtils;
+import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.DtoConversionUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.*;
@@ -22,8 +24,10 @@
import freemarker.template.TemplateException;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
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.*;
@@ -40,6 +44,7 @@
* @author ruoyi
* @date 2022-01-24
*/
+@Slf4j
@Api("璐圭敤鐢宠涓�")
@RestController
@RequestMapping("/project/fund")
@@ -158,15 +163,11 @@
return AjaxResult.success(serviceFundService.getFundId(infoid));
}
- @GetMapping("/addFundSharedInfo/{id}")
- public AjaxResult addFundSharedInfo(@PathVariable("id") Long id) {
- return AjaxResult.success(serviceFundService.addFundSharedInfo(id));
- }
+// @GetMapping("/addFundSharedInfo/{id}")
+// public AjaxResult addFundSharedInfo(@PathVariable("id") Long id) {
+// return AjaxResult.success(serviceFundService.addFundSharedInfo(id));
+// }
- @GetMapping("/getFundDetail/{id}")
- public AjaxResult getFundDetail(@PathVariable("id") Long id) {
- return AjaxResult.success(serviceFundService.getFundDetail(id));
- }
/**
* 瀵煎嚭璐圭敤鐢宠涓诲垪琛�
@@ -426,20 +427,14 @@
*/
@ApiOperation("鏂板璐圭敤姹囨��")
@Log(title = "鏂板璐圭敤姹囨��", businessType = BusinessType.INSERT)
- @PostMapping("/addnew")
+ @PostMapping("/addOrUpdateNew")
@RepeatSubmit
@Options(useGeneratedKeys = true, keyProperty = "id")
- public AjaxResult addnew(@RequestBody ServiceFundVO serviceFundVO) {
- boolean b = serviceFundService.save(serviceFundVO);
- Long id = serviceFundVO.getId();
-// if (b) {
-// addReiSharedDatd(serviceFundVO, 1);
-// }
- List<ServiceFunddetail> serviceFunddetails = serviceFundVO.getServiceFunddetails();
- serviceFunddetails.forEach(item -> item.setFundid(id));
- serviceFunddetailService.saveBatch(serviceFunddetails);
- return AjaxResult.success(id);
+ public AjaxResult addOrUpdateNew(@RequestBody ServiceFundVO serviceFundVO) {
+
+ return AjaxResult.success(serviceFundService.addOrUpdateNew(serviceFundVO));
}
+
/**
* 瀹℃牳璐圭敤
@@ -489,11 +484,14 @@
}
}
FlowLevel = FlowLevel + 1;
+ //璁板綍涓�涓嬶紝涓嬩竴绾х殑瀹℃壒锛屼互渚夸簬涓嬩竴绾ч��鍥炲悗锛屽彂璧疯�呮彁浜ゆ椂锛岃兘鍐嶆彁鍒板綋鍓嶅鎵瑰眰绾�
+ serviceFund.setBackflowlevel(FlowLevel);
} else {
CheckFlag = 2;
if (CheckFlag == 2) {
//搴斿尰闄㈣姹傚鏋滃嚭鐜伴��鍥烇紝鐩存帴閫�鍒板彂璧疯��
FlowLevel = 0;
+ RecordStatus = -1;
} else {
RecordStatus = (FlowLevel + 1) * 2 - 1;
FlowLevel = (FlowLevel - 1);
@@ -505,6 +503,7 @@
serviceFund.setRecordstatus(RecordStatus);
serviceFund.setFlowlevel(FlowLevel);
+ // serviceFund.setBackflowlevel(serviceFund.getFlowlevel());
ServiceFundflow serviceFundflow = new ServiceFundflow();
SysUser user = loginUser.getUser();
@@ -535,39 +534,7 @@
serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁�氳繃");
serviceSystemmessage.setMessagecontent("鎮�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceFund.getCreateTime()) + "鎻愪氦鐨勫叧浜庢崘鐚渚嬨��" + serviceFund.getDonorname() + "銆戠殑璐圭敤鐢宠宸查�氳繃" + (OriginalFlowLevel + 1) + "绾у鏍�");
if (TotalLevel == OriginalFlowLevel + 1) {
- ServiceFundShared serviceFundShared = DtoConversionUtils.sourceToTarget(serviceFund, ServiceFundShared.class);
- serviceFundShared.setId(null);
- serviceFundShared.setSerfunid(serviceFund.getId());
- serviceFundShared.setAmountrequested(new BigDecimal(serviceFund.getAmountrequested()));
- serviceFundShared.setPrepaidamount(new BigDecimal(serviceFund.getPrepaidamount()));
- serviceFundShared.setTotalcost(new BigDecimal(serviceFund.getTotalcost()));
- serviceFundShared.setProcurementcost(new BigDecimal(serviceFund.getProcurementcost()));
- serviceFundShared.setExpertcost(new BigDecimal(serviceFund.getExpertcost()));
- serviceFundShared.setEthicscost(new BigDecimal(serviceFund.getEthicscost()));
- serviceFundShared.setMedicalcost(new BigDecimal(serviceFund.getMedicalcost()));
- serviceFundShared.setFamilycost(new BigDecimal(serviceFund.getFamilycost()));
- serviceFundShared.setAftercarecost(new BigDecimal(serviceFund.getAftercarecost()));
- fundSharedService.save(serviceFundShared);
-
- Map<String, Object> columnMap = new HashMap<>();
- columnMap.put("fundID", checkFundVO.getFundid());
- //鑾峰彇璇︽儏鏁版嵁
- List<ServiceFunddetail> serviceFunddetails = serviceFunddetailMapper.selectByMap(columnMap);
- logger.info("serviceFundController---checkFund鐨勮繑鍥炲�約erviceFunddetails :{}", serviceFunddetails);
- List<ServiceFunddetailShared> serviceFunddetailShareds = DtoConversionUtils.sourceToTarget(serviceFunddetails, ServiceFunddetailShared.class);
- for (int i = 0; i < serviceFunddetails.size(); i++) {
- serviceFunddetailShareds.get(i).setFundid(serviceFundShared.getId());
- serviceFunddetailShareds.get(i).setFdid(serviceFunddetails.get(i).getId());
- serviceFunddetailShareds.get(i).setAmount(new BigDecimal(serviceFunddetails.get(i).getAmount()));
- serviceFunddetailShareds.get(i).setPrepaidamount(new BigDecimal(serviceFunddetails.get(i).getPrepaidamount()));
- serviceFunddetailShareds.get(i).setTaxamount(new BigDecimal(serviceFunddetails.get(i).getTaxamount()));
- serviceFunddetailShareds.get(i).setTaxedamount(new BigDecimal(serviceFunddetails.get(i).getTaxedamount()));
- serviceFunddetailShareds.get(i).setQuantity(new BigDecimal(serviceFunddetails.get(i).getQuantity()));
- serviceFunddetailShareds.get(i).setPrice(new BigDecimal(serviceFunddetails.get(i).getPrice()));
- serviceFunddetailShareds.get(i).setId(null);
- }
- funddetailSharedService.saveBatch(serviceFunddetailShareds);
-
+ serviceFundService.addFundSharedInfo(checkFundVO.getFundid());
}
} else {
@@ -584,33 +551,35 @@
/**
- * 淇敼璐圭敤鐢宠涓�
+ * 淇敼璐圭敤鐢宠
*/
- @ApiOperation("淇敼璐圭敤鐢宠涓�")
- //@PreAuthorize("@ss.hasPermi('project:fund:edit')")
+ @ApiOperation("淇敼璐圭敤鐢宠")
@Log(title = "璐圭敤鐢宠涓�", businessType = BusinessType.UPDATE)
- @PutMapping
+ @PostMapping("/fundEdit")
@RepeatSubmit
- public AjaxResult edit(@RequestBody ServiceFund serviceFund) {
- List<ServiceFund> infoByInfoIdList = serviceFundService.getInfoByInfoId(serviceFund.getId());
+ public AjaxResult fundEdit(@RequestBody ServiceFund serviceFund) {
+ log.info("淇敼璐圭敤鐢宠鍏ュ弬:{}", serviceFund);
+ List<ServiceFund> infoByInfoIdList = serviceFundService.queryInfoById(serviceFund);
+ log.info("淇敼璐圭敤鐢宠锛岄�氳繃鍏ュ弬鏌ヨ serviceFundService.queryInfoById鏁版嵁涓虹┖,鍏ュ弬:{}", infoByInfoIdList.size());
+ if (CollectionUtils.isEmpty(infoByInfoIdList)) {
+ return toAjax(false);
+ }
for (ServiceFund sf : infoByInfoIdList) {
//濡傛灉绛変簬100锛岃鏄庡凡缁忚蛋鍒板尰闄㈣储鍔¢偅杈逛簡锛涜储鍔¢偅杈瑰彇鏁版嵁鏄粠鍒嗕韩琛ㄥ彇锛屾墍浠ワ紝杩欓噷鐩存帴寰�鍒嗕韩琛ㄩ噷娣诲姞鏁版嵁灏辫浜�
- if (sf.getBackflowlevel() == 100 || sf.getBackflowlevel() == 199) {
- ServiceFundShared serviceFundShared = DtoConversionUtils.sourceToTarget(serviceFund, ServiceFundShared.class);
- serviceFundShared.setId(null);
- serviceFundShared.setDel_flag(0);
- fundSharedService.save(serviceFundShared);
-
+ if (sf.getBackflowlevel() == 199) {
//灏唂und琛ㄧ殑瀹℃牳鐘舵�佹敼鎴�100
sf.setBackflowlevel(100);
serviceFundService.updateById(sf);
+
+ //寰�鍒嗕韩琛ㄩ噷鏂板
+ serviceFundService.addFundSharedInfo(serviceFund.getId());
+
return success();
} else {
serviceFund.setFlowlevel(sf.getBackflowlevel());
boolean bret = serviceFundService.updateById(serviceFund);
-// if (bret) {
-// addReiSharedDatd(serviceFund, 2);
-// }
+ log.info("serviceFundService.updateById杩斿弬:{}", bret);
+
return toAjax(bret);
}
}
@@ -687,11 +656,11 @@
dataMap.put("JXZXM", serviceFund.getDonorname() == null ? "" : serviceFund.getDonorname());
dataMap.put("JSR", serviceFund.getUsername() == null ? "" : serviceFund.getUsername());
// dataMap.put("FYXM1", "鏀粯涓撳璐圭敤锛屽叾涓◣鍓嶉噾棰�" + serviceFund.getPretaxcost() + "鍏冿紝绋庡悗閲戦" + serviceFund.getTaxedcost() + "鍏冦��");
- dataMap.put("FYXM1", "浜轰綋鍣ㄥ畼鎹愮尞涓撳鍔冲姟璐�:" + serviceFund.getTaxedcost() + "鍏� (鍏朵腑绋庡悗璐圭敤鐢变腑蹇冩壙鎷呯◣璐�)銆�");
+ dataMap.put("FYXM1", "浜轰綋鍣ㄥ畼鎹愮尞涓撳鍔冲姟璐�:" + serviceFund.getPretaxcost() + "鍏� (鍏朵腑绋庡悗璐圭敤鐢变腑蹇冩壙鎷呯◣璐�)銆�");
dataMap.put("FYXM2", "");
dataMap.put("FYXM3", "");
- dataMap.put("JEXS", serviceFund.getAmountrequested());
- dataMap.put("JEDS", convert(serviceFund.getAmountrequested()) + "鏁�");
+ dataMap.put("JEXS", serviceFund.getPretaxcost());
+ dataMap.put("JEDS", convert(serviceFund.getPretaxcost()) + "鏁�");
dataMap.put("BXBZ", serviceFund.getRemark() == null ? "" : serviceFund.getRemark());
@@ -741,16 +710,34 @@
List<Double> sqljList = new ArrayList<>();
List<Double> ksljList = new ArrayList<>();
List<Double> shljList = new ArrayList<>();
- Map<String, Optional<ServiceFunddetailAssort>> result = fd.stream().collect(Collectors.groupingBy(ServiceFunddetail::getApplytypename, Collectors.mapping(obj -> new ServiceFunddetailAssort(obj.getAmount(), obj.getTaxamount(), obj.getTaxedamount()), Collectors.reducing(ServiceFunddetailAssort::add))));
- result.forEach((FWFL, serviceFunddetailAssort) -> {
+
+ //鏍规嵁鈥濈鐩被鍨嬪悕绉扳�滐紝鏉ヨ绠楃◣鍓嶆�诲拰锛岀◣閲戞�诲拰,绋庡悗鎬诲拰
+ Map<String, ServiceFunddetailAssort> funddetailMap = new HashMap<>();
+ for (ServiceFunddetail serviceFunddetail : fd) {
+ boolean b = funddetailMap.containsKey(serviceFunddetail.getSubjecttypename());
+ if (b == true) {
+ ServiceFunddetailAssort serviceFunddetailAssort = funddetailMap.get(serviceFunddetail.getSubjecttypename());
+ serviceFunddetailAssort.setKSXJ(serviceFunddetailAssort.getKSXJ() + serviceFunddetail.getTaxamount());
+ serviceFunddetailAssort.setSQXJ(serviceFunddetailAssort.getSQXJ() + serviceFunddetail.getAmount());
+ serviceFunddetailAssort.setSHXJ(serviceFunddetailAssort.getSHXJ() + serviceFunddetail.getTaxedamount());
+ } else {
+ funddetailMap.put(serviceFunddetail.getSubjecttypename(), new ServiceFunddetailAssort());
+ ServiceFunddetailAssort serviceFunddetailAssort = funddetailMap.get(serviceFunddetail.getSubjecttypename());
+ serviceFunddetailAssort.setKSXJ(serviceFunddetailAssort.getKSXJ() + serviceFunddetail.getTaxamount());
+ serviceFunddetailAssort.setSQXJ(serviceFunddetailAssort.getSQXJ() + serviceFunddetail.getAmount());
+ serviceFunddetailAssort.setSHXJ(serviceFunddetailAssort.getSHXJ() + serviceFunddetail.getTaxedamount());
+ }
+ }
+
+ funddetailMap.forEach((FWFL, serviceFunddetailAssort) -> {
Map<String, Object> map1 = new HashMap<String, Object>();
map1.put("FWFL", FWFL);
- map1.put("SQXJ", serviceFunddetailAssort.get().getSQXJ());
- map1.put("KSXJ", serviceFunddetailAssort.get().getKSXJ());
- map1.put("SHXJ", serviceFunddetailAssort.get().getSHXJ());
- sqljList.add(serviceFunddetailAssort.get().getSQXJ());
- ksljList.add(serviceFunddetailAssort.get().getKSXJ());
- shljList.add(serviceFunddetailAssort.get().getSHXJ());
+ map1.put("SQXJ", serviceFunddetailAssort.getSQXJ());
+ map1.put("KSXJ", serviceFunddetailAssort.getKSXJ());
+ map1.put("SHXJ", serviceFunddetailAssort.getSHXJ());
+ sqljList.add(serviceFunddetailAssort.getSQXJ());
+ ksljList.add(serviceFunddetailAssort.getKSXJ());
+ shljList.add(serviceFunddetailAssort.getSHXJ());
lists.add(map1);
});
@@ -771,7 +758,7 @@
dataMap.put("list", newsList);
for (int i = 0; i < lists.size(); i++) {
Map<String, Object> map = lists.get(i);
- map.put("XH", i+1);
+ map.put("XH", i + 1);
}
dataMap.put("item", lists);
@@ -1054,8 +1041,10 @@
}
dataMap.put("items", newList);
- dataMap.put("JEXS", serviceFund.getAmountrequested());
- dataMap.put("JEDS", convert(serviceFund.getAmountrequested()) + "鏁�");
+ dataMap.put("JEXS", serviceFund.getPretaxcost());
+ dataMap.put("JEDS", convert(serviceFund.getPretaxcost()) + "鏁�");
+// dataMap.put("JEXS", serviceFund.getAmountrequested());
+// dataMap.put("JEDS", convert(serviceFund.getAmountrequested()) + "鏁�");
dataMap.put("BXBZ", serviceFund.getRemark() == null ? "" : serviceFund.getRemark());
dataMap.put("YYMMDD", time);
--
Gitblit v1.9.3