From 71060a7cb45508e86e9a1eff6be93f88f929adfc Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 18 五月 2023 13:54:58 +0800 Subject: [PATCH] 修改代码 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java | 95 ++++++++++++++++++++++++++++++----------------- 1 files changed, 61 insertions(+), 34 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 cac7c25..5e66e85 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 @@ -32,6 +32,7 @@ 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.*; @@ -151,6 +152,12 @@ } //startPage(); List<SpFinancialExpensesReimbursementOut> list = serviceReimbursementService.getListBypower(loginUser.getUsername(), 1, APPLICANT, APPLICATIONBEGTIME, APPLICATIONENDTIME, loginUser.getDeptId().toString(), CHECKFLAG, APPLYTYPE); + Collections.sort(list, new Comparator<SpFinancialExpensesReimbursementOut>() { + @Override + public int compare(SpFinancialExpensesReimbursementOut o1, SpFinancialExpensesReimbursementOut o2) { + return o2.getCreateTime().compareTo(o1.getCreateTime()); + } + }); return getCustomDataTable(list, pageNum, pageSize); } @@ -188,6 +195,18 @@ } /** + * 寰�service_reimbursement_share,寰�service_reimbursementdetail_share,寰�service_reimbursementpyee_share鏂板澶囦唤鏁版嵁 + * + * @param id + * @return + */ + @GetMapping("/addShareData/{id}") + public AjaxResult addSharedData(@PathVariable("id") Long id) { + + return AjaxResult.success(serviceReimbursementService.addSharedData(id)); + } + + /** * 鏂板鎶ラ攢鐢宠 */ @ApiOperation("鏂板鎶ラ攢鐢宠") @@ -199,24 +218,23 @@ public AjaxResult add(@RequestBody ServiceReimbursement serviceReimbursement) { boolean b = serviceReimbursementService.save(serviceReimbursement); - if (b) { - addReiSharedDatd(serviceReimbursement, 1); - } +// if (b) { +// addReiSharedDatd(serviceReimbursement, 1); +// } Long id = serviceReimbursement.getId(); return AjaxResult.success(id); } public int addReiSharedDatd(ServiceReimbursement serviceReimbursement, int nType) { //remShare = ; - ServiceReimbursementShared remShare = null; + ServiceReimbursementShared remShare = new ServiceReimbursementShared(); if (nType == 1) { - remShare = new ServiceReimbursementShared(); + // remShare = new ServiceReimbursementShared(); remShare.setReimid(serviceReimbursement.getId()); } else //modify { List<ServiceReimbursementShared> remlist = serviceReimbursementServiceShare.getRemShareInfoByRemId(serviceReimbursement.getId()); - if (remlist != null) - remShare = remlist.get(0); + if (!CollectionUtils.isEmpty(remlist)) remShare = remlist.get(0); } remShare.setUserno(serviceReimbursement.getUserno()); @@ -484,7 +502,7 @@ public AjaxResult checkFund(@RequestBody CheckFundVO checkFundVO) { ServiceReimbursement serviceReimbursement = serviceReimbursementService.getById(checkFundVO.getFundid()); if (serviceReimbursement != null) { - Integer TotalLevel = 0; + Integer totalLevel = 0; LoginUser loginUser = getLoginUser(); ServiceFundflowrule serviceFundflowrule = new ServiceFundflowrule(); serviceFundflowrule.setFundtype(1); @@ -501,7 +519,9 @@ } if (serviceFundflowrules != null && serviceFundflowrules.stream().count() > 0) { - TotalLevel = serviceFundflowrules.get(0).getTotallevel(); + totalLevel = serviceFundflowrules.get(0).getTotallevel(); + + } Integer CheckFlag = 0; Integer RecordStatus = serviceReimbursement.getRecordstatus(); @@ -509,10 +529,11 @@ Integer OriginalFlowLevel = FlowLevel; if (checkFundVO.getFlowconclusion() == 1) { CheckFlag = 1; - if (TotalLevel == 0) { + if (totalLevel == 0) { + //99 鍙栨秷 RecordStatus = 99; } else { - if (TotalLevel == FlowLevel + 1) { + if (totalLevel == FlowLevel + 1) { RecordStatus = 99; } else { RecordStatus = (FlowLevel + 1) * 2; @@ -578,7 +599,10 @@ //閫氳繃 serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁�氳繃"); serviceSystemmessage.setMessagecontent("鎮�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime()) + "鎻愪氦鐨勫叧浜庢崘鐚渚嬨��" + serviceReimbursement.getDonorname() + "銆戠殑宸梾璐圭敵璇峰凡閫氳繃" + (OriginalFlowLevel + 1) + "绾у鏍�"); - + if (totalLevel == OriginalFlowLevel + 1) { + //鎵�鏈夋暟鎹柊澧炲埌澶囦唤琛� + serviceReimbursementService.addSharedData(checkFundVO.getFundid()); + } } else { //椹冲洖 serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "绾у鏍搁┏鍥�"); @@ -618,9 +642,9 @@ @PostMapping("/editMoney") public AjaxResult editMoney(@RequestBody List<ReimbursementService> serviceReimbursement) { boolean b = serviceReimbursementService.updateById(null); - if (b) { - addReiSharedDatd(null, 2); - } +// if (b) { +// addReiSharedDatd(null, 2); +// } return toAjax(b); } @@ -702,8 +726,7 @@ //鑾峰彇鎶ラ攢鏀粯淇℃伅 List<ServiceReimbursementpayee> reimbursementpayeeInfo = reimbursementpayeeService.getReimbursementpayeeInfo(serviceReimbursementEo); - Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream() - .collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype)); + Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream().collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype)); List<Map<String, BigDecimal>> list = new ArrayList<>(); StringBuffer FYXM1 = new StringBuffer(); StringBuffer FYXM2 = new StringBuffer(); @@ -719,9 +742,7 @@ BigDecimal keyOneMoney = new BigDecimal(0.00); BigDecimal keyTwoMoney = new BigDecimal(0.00); for (ServiceReimbursementEo serviceReimbursementEo1 : values) { - otherMoney = otherMoney.add(serviceReimbursementEo1.getTrafficexpense()).add(serviceReimbursementEo1.getHotelexpense()) - .add(serviceReimbursementEo1.getFoodexpenses()).add(serviceReimbursementEo1.getFoodallowance()) - .add(serviceReimbursementEo1.getOtherexpense()).add(serviceReimbursementEo1.getOtherfeeamount()); + otherMoney = otherMoney.add(serviceReimbursementEo1.getTrafficexpense()).add(serviceReimbursementEo1.getHotelexpense()).add(serviceReimbursementEo1.getFoodexpenses()).add(serviceReimbursementEo1.getFoodallowance()).add(serviceReimbursementEo1.getOtherexpense()).add(serviceReimbursementEo1.getOtherfeeamount()); } map.put(key, otherMoney); list.add(map); @@ -791,17 +812,20 @@ } else { dataMap.put("FYXM3", ""); } - // dataMap.put("JEXS", rdInfoByItem.get(0).getAmountrequested()); dataMap.put("JEXS", allMoney); - //double temp = 0; - //temp = Math.round(serviceReimbursement.getAmountrequested() * 100) * 0.01d; - // dataMap.put("JEDS", convert(rdInfoByItem.get(0).getAmountrequested().doubleValue()) + "鏁�"); dataMap.put("JEDS", convert(allMoney.doubleValue()) + "鏁�"); String remark = ""; for (ServiceReimbursementpayee serviceReimbursementpayee : reimbursementpayeeInfo) { - remark += "<w:br/> "+PersonType.getInfoByCode(serviceReimbursementpayee.getPersontype())+ "(" + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount(); - remark += " 鍏�; " + serviceReimbursementpayee.getBankname() + ": " + serviceReimbursementpayee.getBankcardno() + ") 澶囨敞: " + serviceReimbursementpayee.getRemark(); + remark += "<w:br/> " + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount(); + remark += " 鍏�; "; + if (!StringUtils.isEmpty(serviceReimbursementpayee.getBankname())) { + remark += serviceReimbursementpayee.getBankname() + " ( " + serviceReimbursementpayee.getBankcardno() + ")"; + } + remark += " 澶囨敞: " + serviceReimbursementpayee.getPersontype(); + if (!StringUtils.isEmpty(serviceReimbursementpayee.getRemark())) { + remark += serviceReimbursementpayee.getRemark(); + } } dataMap.put("BXBZ", remark); @@ -846,11 +870,16 @@ map.put("DA", s.getDeparture() == null ? "" : s.getDeparture()); Date et = s.getEndtime(); - SimpleDateFormat formatter_et = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String date_et = formatter_et.format(et); - String year_et = date_et.substring(0, 4); - String month_et = date_et.substring(5, 7); - String day_et = date_et.substring(8, 10); + String year_et = null; + String month_et = null; + String day_et = null; + if (et != null) { + SimpleDateFormat formatter_et = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String date_et = formatter_et.format(et); + year_et = date_et.substring(0, 4); + month_et = date_et.substring(5, 7); + day_et = date_et.substring(8, 10); + } map.put("AY", year_et == null ? "" : year_et); map.put("AM", month_et == null ? "" : month_et); @@ -995,9 +1024,7 @@ } result = result.replaceAll("闆朵粺", "闆�").replaceAll("闆朵桨", "闆�") //鎶婂崟浣�'浜�','涓�','鍏�'鏀惧埌鏈�鍚庢浛鎹€�� - .replaceAll("闆舵嬀", "闆�").replaceAll("闆堕浂", "闆�") - .replaceAll("闆堕浂", "闆�").replaceAll("闆朵嚎", "浜�") - .replaceAll("闆朵竾", "涓�").replaceAll("闆跺厓", "鍏�"); + .replaceAll("闆舵嬀", "闆�").replaceAll("闆堕浂", "闆�").replaceAll("闆堕浂", "闆�").replaceAll("闆朵嚎", "浜�").replaceAll("闆朵竾", "涓�").replaceAll("闆跺厓", "鍏�"); // result = result.replaceAll("闆朵粺", "闆�"); // result = result.replaceAll("闆朵桨", "闆�"); // result = result.replaceAll("闆舵嬀", "闆�"); -- Gitblit v1.9.3