| | |
| | | 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.*; |
| | |
| | | } |
| | | |
| | | /** |
| | | * 往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("新增报销申请") |
| | |
| | | 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()); |
| | |
| | | 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); |
| | |
| | | } |
| | | |
| | | if (serviceFundflowrules != null && serviceFundflowrules.stream().count() > 0) { |
| | | TotalLevel = serviceFundflowrules.get(0).getTotallevel(); |
| | | totalLevel = serviceFundflowrules.get(0).getTotallevel(); |
| | | |
| | | |
| | | } |
| | | Integer CheckFlag = 0; |
| | | Integer RecordStatus = serviceReimbursement.getRecordstatus(); |
| | |
| | | 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; |
| | |
| | | //通过 |
| | | 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) + "级审核驳回"); |
| | |
| | | @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); |
| | | } |
| | | |
| | |
| | | //获取报销支付信息 |
| | | 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(); |
| | |
| | | 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); |
| | |
| | | } 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); |
| | | |
| | |
| | | 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); |
| | |
| | | } |
| | | |
| | | 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("零拾", "零"); |