From 5ec90e5ccaa103b6057b0ce9ea1c416f0c606513 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期二, 30 五月 2023 14:55:46 +0800 Subject: [PATCH] 根据受益人编号获取费用申请明细信息 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java | 294 +++++++++++++++++++++++++++++----------------------------- 1 files changed, 149 insertions(+), 145 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 6eb5f0f..c11bc03 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,17 +195,6 @@ } /** - * 寰�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("鏂板鎶ラ攢鐢宠") @@ -217,107 +213,106 @@ return AjaxResult.success(id); } - public int addReiSharedDatd(ServiceReimbursement serviceReimbursement, int nType) { - //remShare = ; - ServiceReimbursementShared remShare = null; - if (nType == 1) { - remShare = new ServiceReimbursementShared(); - remShare.setReimid(serviceReimbursement.getId()); - } else //modify - { - List<ServiceReimbursementShared> remlist = serviceReimbursementServiceShare.getRemShareInfoByRemId(serviceReimbursement.getId()); - if (remlist != null) - remShare = remlist.get(0); - } - - remShare.setUserno(serviceReimbursement.getUserno()); - remShare.setUsername(serviceReimbursement.getUsername()); - remShare.setTravelers(serviceReimbursement.getTravelers()); - remShare.setIdcardtype(serviceReimbursement.getIdcardtype()); - remShare.setIdcardno(serviceReimbursement.getIdcardno()); - remShare.setPhone(serviceReimbursement.getPhone()); - remShare.setDepositbank(serviceReimbursement.getDepositbank()); - remShare.setBankcardno(serviceReimbursement.getBankcardno()); - remShare.setBranchbankname(serviceReimbursement.getBranchbankname()); - remShare.setAnnexbankcard(serviceReimbursement.getAnnexbankcard()); - remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); - //remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); - // remShare.setAmountrequested(BigDecimal.valueOf(serviceReimbursement.getAmountrequested())); - - Double nTemp = serviceReimbursement.getAmountrequested(); - if (nTemp == null) nTemp = 0d; - remShare.setAmountrequested(BigDecimal.valueOf(nTemp)); - - nTemp = serviceReimbursement.getPrepaidamount(); - if (nTemp == null) nTemp = 0.0; - remShare.setPrepaidamount(BigDecimal.valueOf(nTemp)); - - remShare.setInvoicecount(serviceReimbursement.getInvoicecount()); - remShare.setAttachcount(serviceReimbursement.getAttachcount()); - remShare.setManagerno(serviceReimbursement.getManagerno()); - remShare.setManagername(serviceReimbursement.getManagername()); - remShare.setDeptmentno(serviceReimbursement.getDeptmentno()); - remShare.setDeptmentname(serviceReimbursement.getDeptmentname()); - remShare.setOpochecker(serviceReimbursement.getOpochecker()); - remShare.setFinvicepresident(serviceReimbursement.getFinvicepresident()); - remShare.setBusvicepresident(serviceReimbursement.getBusvicepresident()); - remShare.setOfficedirector(serviceReimbursement.getOfficedirector()); - remShare.setFinancedirector(serviceReimbursement.getFinancedirector()); - remShare.setFinancechecher(serviceReimbursement.getFinancechecher()); - remShare.setInfoid(serviceReimbursement.getInfoid()); - remShare.setDonorno(serviceReimbursement.getDonorno()); - - remShare.setDonorname(serviceReimbursement.getDonorname()); - remShare.setReason(serviceReimbursement.getReason()); - remShare.setRecordstatus(serviceReimbursement.getRecordstatus()); - remShare.setUploadflag(serviceReimbursement.getUploadflag()); - remShare.setUploadtime(serviceReimbursement.getUploadtime()); - - nTemp = serviceReimbursement.getTotalamount(); - if (nTemp == null) nTemp = 0.0; - remShare.setTotalamount(BigDecimal.valueOf(nTemp)); - - remShare.setBigstrmoney(serviceReimbursement.getBigstrmoney()); - remShare.setFlowlevel(serviceReimbursement.getFlowlevel()); - remShare.setCosttype(serviceReimbursement.getCosttype()); - remShare.setCosttypename(serviceReimbursement.getCosttypename()); - remShare.setFileurl(serviceReimbursement.getAnnexfiles()); - remShare.setDonorbank(serviceReimbursement.getDonorbank()); - remShare.setDonorbankcard(serviceReimbursement.getDonorbankcard()); - remShare.setDonorremark(serviceReimbursement.getDonorremark()); - - nTemp = serviceReimbursement.getDonoramount(); - if (nTemp == null) nTemp = 0.0; - remShare.setDonoramount(nTemp); - remShare.setDonorrelatives(serviceReimbursement.getDonorrelatives()); - //remShare.setOaid(serviceReimbursement.getOaid()); - //remShare.setDonorno(serviceReimbursement.getDonorno()); - - boolean bRet = false; - if (nType == 1) { - bRet = serviceReimbursementServiceShare.save(remShare); - } else { - //remShare.setId(serviceReimbursement.); - bRet = serviceReimbursementServiceShare.updateById(remShare); - } - - //if(!bRet) return -1; - String strMutfileUrl = remShare.getFileurl(); - //鏈夐檮浠舵椂鎵嶈皟鐢ㄧ涓夋柟杩涜涓婁紶 - if (strMutfileUrl == null) return 0; - if (strMutfileUrl.isEmpty()) return 0; - - try { - uploadOAFileAndUpdateDb(remShare); - } catch (Exception e) { - logger.error("璋冪敤绗笁鏂规帴鍙e嚭閿�!"); - e.printStackTrace(); - } - - //姝ゅ淇濆瓨鎴愬姛鍚庤涓婁紶OA锛屼繚瀛樿繑鍥炲�� - - return 0; - } +// public int addReiSharedDatd(ServiceReimbursement serviceReimbursement, int nType) { +// //remShare = ; +// ServiceReimbursementShared remShare = new ServiceReimbursementShared(); +// if (nType == 1) { +// // remShare = new ServiceReimbursementShared(); +// remShare.setReimid(serviceReimbursement.getId()); +// } else //modify +// { +// List<ServiceReimbursementShared> remlist = serviceReimbursementServiceShare.getRemShareInfoByRemId(serviceReimbursement.getId()); +// if (!CollectionUtils.isEmpty(remlist)) remShare = remlist.get(0); +// } +// +// remShare.setUserno(serviceReimbursement.getUserno()); +// remShare.setUsername(serviceReimbursement.getUsername()); +// remShare.setTravelers(serviceReimbursement.getTravelers()); +// remShare.setIdcardtype(serviceReimbursement.getIdcardtype()); +// remShare.setIdcardno(serviceReimbursement.getIdcardno()); +// remShare.setPhone(serviceReimbursement.getPhone()); +// remShare.setDepositbank(serviceReimbursement.getDepositbank()); +// remShare.setBankcardno(serviceReimbursement.getBankcardno()); +// remShare.setBranchbankname(serviceReimbursement.getBranchbankname()); +// remShare.setAnnexbankcard(serviceReimbursement.getAnnexbankcard()); +// remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); +// //remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles()); +// // remShare.setAmountrequested(BigDecimal.valueOf(serviceReimbursement.getAmountrequested())); +// +// Double nTemp = serviceReimbursement.getAmountrequested(); +// if (nTemp == null) nTemp = 0d; +// remShare.setAmountrequested(BigDecimal.valueOf(nTemp)); +// +// nTemp = serviceReimbursement.getPrepaidamount(); +// if (nTemp == null) nTemp = 0.0; +// remShare.setPrepaidamount(BigDecimal.valueOf(nTemp)); +// +// remShare.setInvoicecount(serviceReimbursement.getInvoicecount()); +// remShare.setAttachcount(serviceReimbursement.getAttachcount()); +// remShare.setManagerno(serviceReimbursement.getManagerno()); +// remShare.setManagername(serviceReimbursement.getManagername()); +// remShare.setDeptmentno(serviceReimbursement.getDeptmentno()); +// remShare.setDeptmentname(serviceReimbursement.getDeptmentname()); +// remShare.setOpochecker(serviceReimbursement.getOpochecker()); +// remShare.setFinvicepresident(serviceReimbursement.getFinvicepresident()); +// remShare.setBusvicepresident(serviceReimbursement.getBusvicepresident()); +// remShare.setOfficedirector(serviceReimbursement.getOfficedirector()); +// remShare.setFinancedirector(serviceReimbursement.getFinancedirector()); +// remShare.setFinancechecher(serviceReimbursement.getFinancechecher()); +// remShare.setInfoid(serviceReimbursement.getInfoid()); +// remShare.setDonorno(serviceReimbursement.getDonorno()); +// +// remShare.setDonorname(serviceReimbursement.getDonorname()); +// remShare.setReason(serviceReimbursement.getReason()); +// remShare.setRecordstatus(serviceReimbursement.getRecordstatus()); +// remShare.setUploadflag(serviceReimbursement.getUploadflag()); +// remShare.setUploadtime(serviceReimbursement.getUploadtime()); +// +// nTemp = serviceReimbursement.getTotalamount(); +// if (nTemp == null) nTemp = 0.0; +// remShare.setTotalamount(BigDecimal.valueOf(nTemp)); +// +// remShare.setBigstrmoney(serviceReimbursement.getBigstrmoney()); +// remShare.setFlowlevel(serviceReimbursement.getFlowlevel()); +// remShare.setCosttype(serviceReimbursement.getCosttype()); +// remShare.setCosttypename(serviceReimbursement.getCosttypename()); +// remShare.setFileurl(serviceReimbursement.getAnnexfiles()); +// remShare.setDonorbank(serviceReimbursement.getDonorbank()); +// remShare.setDonorbankcard(serviceReimbursement.getDonorbankcard()); +// remShare.setDonorremark(serviceReimbursement.getDonorremark()); +// +// nTemp = serviceReimbursement.getDonoramount(); +// if (nTemp == null) nTemp = 0.0; +// remShare.setDonoramount(nTemp); +// remShare.setDonorrelatives(serviceReimbursement.getDonorrelatives()); +// //remShare.setOaid(serviceReimbursement.getOaid()); +// //remShare.setDonorno(serviceReimbursement.getDonorno()); +// +// boolean bRet = false; +// if (nType == 1) { +// bRet = serviceReimbursementServiceShare.save(remShare); +// } else { +// //remShare.setId(serviceReimbursement.); +// bRet = serviceReimbursementServiceShare.updateById(remShare); +// } +// +// //if(!bRet) return -1; +// String strMutfileUrl = remShare.getFileurl(); +// //鏈夐檮浠舵椂鎵嶈皟鐢ㄧ涓夋柟杩涜涓婁紶 +// if (strMutfileUrl == null) return 0; +// if (strMutfileUrl.isEmpty()) return 0; +// +// try { +// uploadOAFileAndUpdateDb(remShare); +// } catch (Exception e) { +// logger.error("璋冪敤绗笁鏂规帴鍙e嚭閿�!"); +// e.printStackTrace(); +// } +// +// //姝ゅ淇濆瓨鎴愬姛鍚庤涓婁紶OA锛屼繚瀛樿繑鍥炲�� +// +// return 0; +// } int uploadOAFileAndUpdateDb(ServiceReimbursementShared remShare) { @@ -432,12 +427,12 @@ } - long nId = remShare.getId(); - remShare.setId(nId); - remShare.setFilename(filename); - remShare.setFileid(fileid); - boolean bRet = serviceReimbursementServiceShare.updateById(remShare); - if (!bRet) return -1; +// long nId = remShare.getId(); +// remShare.setId(nId); +// remShare.setFilename(filename); +// remShare.setFileid(fileid); +// boolean bRet = serviceReimbursementServiceShare.updateById(remShare); +// if (!bRet) return -1; return 0; } @@ -495,7 +490,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); @@ -512,7 +507,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(); @@ -520,10 +517,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; @@ -589,7 +587,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) + "绾у鏍搁┏鍥�"); @@ -614,9 +615,9 @@ @RepeatSubmit public AjaxResult edit(@RequestBody ServiceReimbursement serviceReimbursement) { boolean b = serviceReimbursementService.updateById(serviceReimbursement); - if (b) { - addReiSharedDatd(serviceReimbursement, 2); - } +// if (b) { +// addReiSharedDatd(serviceReimbursement, 2); +// } return toAjax(b); } @@ -713,8 +714,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(); @@ -730,9 +730,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); @@ -802,17 +800,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); @@ -857,11 +858,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); @@ -1006,9 +1012,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