From 7cdc66043ad8c484b8eb4597e281a5d8d33e4794 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期五, 25 八月 2023 16:41:12 +0800 Subject: [PATCH] 代码提交 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java | 206 ++++++++++++++++++++------------------------------- 1 files changed, 80 insertions(+), 126 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 2e8ae0f..7bf6d64 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 @@ -24,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.*; @@ -42,6 +44,7 @@ * @author ruoyi * @date 2022-01-24 */ +@Slf4j @Api("璐圭敤鐢宠涓�") @RestController @RequestMapping("/project/fund") @@ -72,6 +75,9 @@ @Autowired private IServiceFundSharedService fundServiceShare; + + @Autowired + private IServiceExternalpersonService externalpersonService; public ServiceFundController() { @@ -160,15 +166,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)); - } /** * 瀵煎嚭璐圭敤鐢宠涓诲垪琛� @@ -432,67 +434,8 @@ @RepeatSubmit @Options(useGeneratedKeys = true, keyProperty = "id") public AjaxResult addOrUpdateNew(@RequestBody ServiceFundVO serviceFundVO) { - Long id = null; - if (serviceFundVO.getId() == null) { - boolean b = serviceFundService.save(serviceFundVO); - id = serviceFundVO.getId(); - } else { - serviceFundService.updateById(serviceFundVO); - id = serviceFundVO.getId(); - } - List<ServiceFunddetail> serviceFunddetails = serviceFundVO.getServiceFunddetails(); - double taxBefore = 0.0; - double taxAfter = 0.0; - for (ServiceFunddetail serviceFunddetail : serviceFunddetails) { - - serviceFunddetail.setFundid(id); - if (serviceFunddetail.getTaxedamount() != 0.0 && serviceFunddetail.getAmount() != 0.0 && serviceFunddetail.getTaxedamount() != null && serviceFunddetail.getAmount() != null) { - // 绋庡墠绋庡悗閮戒笉涓虹┖ - if (serviceFunddetail.getId() == null) { - serviceFunddetailService.save(serviceFunddetail); - } else { - serviceFunddetailService.updateById(serviceFunddetail); - } - continue; - } else if (serviceFunddetail.getTaxedamount() != 0.0 && serviceFunddetail.getTaxedamount() != null) { - // 绋庡悗姹傜◣鍓�,濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗 - if (StringUtils.isNotEmpty(serviceFundVO.getApplytype()) && serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) { - Double taxationBefore = Double.valueOf(TaxtUtils.getTaxationBefore(BigDecimal.valueOf(serviceFunddetail.getTaxedamount()))); - // 绋庨噾 - String taxation = TaxtUtils.getTaxation(BigDecimal.valueOf(taxationBefore)); - serviceFunddetail.setAmount(Double.valueOf(taxationBefore)); - serviceFunddetail.setTaxamount(Double.parseDouble(taxation)); - } - } else if (serviceFunddetail.getAmount() != 0.0 && serviceFunddetail.getAmount() != null) { - // 绋庡墠姹傜◣鍚�,濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗 - if (StringUtils.isNotEmpty(serviceFundVO.getApplytype()) && serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) { - double tax = Double.parseDouble(TaxtUtils.getTaxation(BigDecimal.valueOf(serviceFunddetail.getAmount()))); - BigDecimal taxAfterMoney = BigDecimal.valueOf(serviceFunddetail.getAmount()).subtract(BigDecimal.valueOf(tax)); - serviceFunddetail.setTaxamount(tax); - serviceFunddetail.setTaxedamount(taxAfterMoney.doubleValue()); - } - } - - //鏍规嵁id鍒ゆ柇鏄柊澧炶繕鏄慨鏀� - if (serviceFunddetail.getId() == null) { - serviceFunddetailService.save(serviceFunddetail); - } else { - serviceFunddetailService.updateById(serviceFunddetail); - } - if (serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) { - //濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗 - taxBefore = taxBefore + serviceFunddetail.getAmount(); - taxAfter = taxAfter + serviceFunddetail.getTaxedamount(); - } - } - //灏嗙◣鍓嶃�佺◣鍚庨噾棰濇洿鏂板埌fund琛ㄤ腑 - serviceFundVO.setPretaxcost(taxBefore); - serviceFundVO.setTaxedcost(taxAfter); - serviceFundService.updateById(serviceFundVO); -// //灏嗚绠楀ソ鐨勬暟鎹紝淇濆瓨鍒癲etail琛ㄤ腑 -// serviceFunddetailService.saveBatch(serviceFunddetails); - return AjaxResult.success(id); + return AjaxResult.success(serviceFundService.addOrUpdateNew(serviceFundVO)); } @@ -544,11 +487,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); @@ -560,6 +506,7 @@ serviceFund.setRecordstatus(RecordStatus); serviceFund.setFlowlevel(FlowLevel); + // serviceFund.setBackflowlevel(serviceFund.getFlowlevel()); ServiceFundflow serviceFundflow = new ServiceFundflow(); SysUser user = loginUser.getUser(); @@ -569,7 +516,11 @@ serviceFundflow.setFundtype(2); serviceFundflow.setApplytype(serviceFund.getApplytype()); serviceFundflow.setFlowconclusion(CheckFlag); - serviceFundflow.setFlowcontent(checkFundVO.getFlowcontent()); + if (org.apache.commons.lang.StringUtils.isNotBlank(checkFundVO.getFlowcontent())) { + serviceFundflow.setFlowcontent(checkFundVO.getFlowcontent()); + } else { + serviceFundflow.setFlowcontent(checkFundVO.getFlowconclusion() == 1 ? "閫氳繃" : "涓嶉�氳繃"); + } serviceFundflow.setFlowlevel(OriginalFlowLevel + 1); serviceFundflowService.save(serviceFundflow); serviceFundService.updateById(serviceFund); @@ -590,39 +541,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 { @@ -639,33 +558,35 @@ /** - * 淇敼璐圭敤鐢宠涓� + * 淇敼璐圭敤鐢宠 */ - @ApiOperation("淇敼璐圭敤鐢宠涓�") - //@PreAuthorize("@ss.hasPermi('project:fund:edit')") + @ApiOperation("淇敼璐圭敤鐢宠") @Log(title = "璐圭敤鐢宠涓�", businessType = BusinessType.UPDATE) - @PutMapping + @PostMapping("/fundEdit") @RepeatSubmit - public AjaxResult edit(@RequestBody ServiceFund serviceFund) { + 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); } } @@ -1059,12 +980,14 @@ Template t = null; try { //鎹愮尞琛�.ftl涓鸿瑁呰浇鐨勬ā鏉� - t = configuration.getTemplate("鍖诲鎴愭湰璐圭敤鐢宠鍗�.ftl"); +// t = configuration.getTemplate("鍖诲鎴愭湰璐圭敤鐢宠鍗�.ftl"); + t = configuration.getTemplate("鍔炲叕璐圭敤鐢宠鍗�.ftl"); } catch (IOException e) { e.printStackTrace(); } String newTime = String.valueOf(Calendar.getInstance().getTimeInMillis()); - String name = "鍖诲鎴愭湰璐圭敤鐢宠鍗昣" + dataMap.get("XM") + "_" + newTime; +// String name = "鍖诲鎴愭湰璐圭敤鐢宠鍗昣" + dataMap.get("XM") + "_" + newTime; + String name = "鍔炲叕璐圭敤鐢宠鍗昣" + dataMap.get("XM") + "_" + newTime; //杈撳嚭鏂囨。璺緞鍙婂悕绉� File outFile = new File(RuoYiConfig.getProfile() + "/download/wordtemplate/" + name + ".doc"); @@ -1091,6 +1014,10 @@ if (serviceFund == null) { throw new ServiceException("涓嬭浇澶辫触锛岀敤鎴蜂俊鎭嚭閿�", HttpStatus.NO_CONTENT); } + ServiceExternalperson infoByUserNo = null; + if (StringUtils.isNotBlank(serviceFund.getUserno())) { + infoByUserNo = externalpersonService.getInfoByUserNo(serviceFund.getUserno()); + } List<ServiceFunddetail> fd = serviceFunddetailService.getAllDetailsByFDIDHZ(id); if (fd == null) { @@ -1109,6 +1036,8 @@ 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("YWZ", serviceFund.getDeptmentname() == null ? "" : serviceFund.getDeptmentname()); + dataMap.put("ZHUZANG", serviceFund.getManagername() == null ? "" : serviceFund.getManagername()); for (ServiceFunddetail f : fd) { seqno++; @@ -1117,19 +1046,30 @@ String fyxm = ""; fyxm += f.getItemname() == null ? "" : f.getItemname(); fyxm += f.getAmount() + "鍏�"; - fyxm += "("; - fyxm += f.getUnitname() == null ? "" : f.getUnitname() + ";"; - fyxm += f.getDepositbank() == null ? "" : f.getDepositbank() + ": "; - fyxm += f.getBankcardno() == null ? "" : f.getBankcardno(); - fyxm += ")"; +// fyxm += "("; +// fyxm += f.getUnitname() == null ? "" : f.getUnitname() + ";"; +// fyxm += f.getDepositbank() == null ? "" : f.getDepositbank() + ": "; +// fyxm += f.getBankcardno() == null ? "" : f.getBankcardno(); +// fyxm += ")"; map.put("FYXM", fyxm); newList.add(map); } + //鍚堝苟鍗曞厓鏍� + checkList(newList); dataMap.put("items", newList); - dataMap.put("JEXS", serviceFund.getAmountrequested()); - dataMap.put("JEDS", convert(serviceFund.getAmountrequested()) + "鏁�"); - dataMap.put("BXBZ", serviceFund.getRemark() == null ? "" : serviceFund.getRemark()); + 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", infoByUserNo == null ? "" : infoByUserNo.getBranchbankname() + " " + infoByUserNo.getBankcardno()); + dataMap.put("YZ", serviceFund.getPresident() == null ? "" : serviceFund.getPresident()); + dataMap.put("CWFYZ", serviceFund.getFinvicepresident() == null ? "" : serviceFund.getFinvicepresident()); + dataMap.put("YWFYZ", serviceFund.getBusvicepresident() == null ? "" : serviceFund.getBusvicepresident()); + dataMap.put("BGSZR", serviceFund.getOfficedirector() == null ? "" : serviceFund.getOfficedirector()); + dataMap.put("CWBZR", serviceFund.getFinancedirector() == null ? "" : serviceFund.getFinancedirector()); + dataMap.put("CWSH", serviceFund.getFinancechecher() == null ? "" : serviceFund.getFinancechecher()); dataMap.put("YYMMDD", time); dataMap.put("XM", serviceFund.getDonorname() == null ? "" : serviceFund.getDonorname()); @@ -1159,6 +1099,20 @@ dataMap.put("list", newsList); dataMap.put("BYHJ", hj); + dataMap.put("BGSZR2", serviceFund.getOfficedirector() == null ? "" : serviceFund.getOfficedirector()); + dataMap.put("CWBZR2", serviceFund.getFinancedirector() == null ? "" : serviceFund.getFinancedirector()); + dataMap.put("CWSH2", serviceFund.getFinancechecher() == null ? "" : serviceFund.getFinancechecher()); + + } + + public List<Map<String, Object>> checkList(List<Map<String, Object>> list) { + String start = "<w:vMerge w:val='restart'/>"; + String end = "<w:vMerge/>"; + list.get(0).put("start", start); + for (int i = 1; i < list.size(); i++) { + list.get(i).put("end", end); + } + return list; } -- Gitblit v1.9.3