From 0bc118d74a03685d1b4685a0b7d38468f307b537 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 02 八月 2023 17:51:34 +0800 Subject: [PATCH] 修改代码 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java | 98 +++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 79 insertions(+), 19 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 4ff99cf..58204bf 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 @@ -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,7 +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.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.*; @@ -25,6 +24,7 @@ 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.web.bind.annotation.*; @@ -33,6 +33,7 @@ import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.*; +import java.util.stream.Collectors; import static com.ruoyi.web.controller.project.ServiceReimbursementController.convert; @@ -42,6 +43,7 @@ * @author ruoyi * @date 2022-01-24 */ +@Slf4j @Api("璐圭敤鐢宠涓�") @RestController @RequestMapping("/project/fund") @@ -428,20 +430,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)); } + /** * 瀹℃牳璐圭敤 @@ -594,7 +590,7 @@ @PutMapping @RepeatSubmit public AjaxResult edit(@RequestBody ServiceFund serviceFund) { - List<ServiceFund> infoByInfoIdList = serviceFundService.getInfoByInfoId(serviceFund.getId()); + List<ServiceFund> infoByInfoIdList = serviceFundService.queryInfoById(serviceFund); for (ServiceFund sf : infoByInfoIdList) { //濡傛灉绛変簬100锛岃鏄庡凡缁忚蛋鍒板尰闄㈣储鍔¢偅杈逛簡锛涜储鍔¢偅杈瑰彇鏁版嵁鏄粠鍒嗕韩琛ㄥ彇锛屾墍浠ワ紝杩欓噷鐩存帴寰�鍒嗕韩琛ㄩ噷娣诲姞鏁版嵁灏辫浜� if (sf.getBackflowlevel() == 100 || sf.getBackflowlevel() == 199) { @@ -608,6 +604,7 @@ serviceFundService.updateById(sf); return success(); } else { + serviceFund.setFlowlevel(sf.getBackflowlevel()); boolean bret = serviceFundService.updateById(serviceFund); // if (bret) { // addReiSharedDatd(serviceFund, 2); @@ -646,7 +643,7 @@ Template t = null; try { //鎹愮尞琛�.ftl涓鸿瑁呰浇鐨勬ā鏉� - t = configuration.getTemplate("涓撳鍔冲姟璐瑰彂鏀剧敵璇峰崟.ftl"); + t = configuration.getTemplate("涓撳鍔冲姟璐瑰彂鏀剧敵璇峰崟(1).ftl"); } catch (IOException e) { e.printStackTrace(); } @@ -687,11 +684,12 @@ dataMap.put("BXDFJ", serviceFund.getAttachcount() == 0 ? " " : serviceFund.getAttachcount()); 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.getPretaxcost() + "鍏冿紝绋庡悗閲戦" + 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()); @@ -712,6 +710,7 @@ for (ServiceFunddetail f : fd) { Map<String, Object> map = new HashMap<String, Object>(); + map.put("XH", f.getItemcode() == null ? "" : f.getItemcode()); String itemName = f.getItemname() == null ? "" : f.getItemname(); @@ -734,12 +733,73 @@ newsList.add(map); } + // 涓撳鍔冲姟璐圭粺璁¤〃 + List<Map<String, Object>> lists = new ArrayList<Map<String, Object>>(); + + List<Double> sqljList = new ArrayList<>(); + List<Double> ksljList = new ArrayList<>(); + List<Double> shljList = new ArrayList<>(); + + //鏍规嵁鈥濈鐩被鍨嬪悕绉扳�滐紝鏉ヨ绠楃◣鍓嶆�诲拰锛岀◣閲戞�诲拰,绋庡悗鎬诲拰 + 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.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); + }); + + double sqxj = 0; + double kslj = 0; + double shlj = 0; + for (Double sqx : sqljList) { + sqxj += sqx; + } + for (Double ksl : ksljList) { + kslj += ksl; + } + for (Double shl : shljList) { + shlj += shl; + } + + //鏁版嵁灏佽 dataMap.put("list", newsList); + for (int i = 0; i < lists.size(); i++) { + Map<String, Object> map = lists.get(i); + map.put("XH", i + 1); + } + + dataMap.put("item", lists); dataMap.put("SQHJ", sq); dataMap.put("KSHJ", ks); dataMap.put("SHHJ", sh); + dataMap.put("SQLJ", sqxj); + dataMap.put("KSLJ", kslj); + dataMap.put("SHLJ", shlj); + } -- Gitblit v1.9.3