| | |
| | | import com.ruoyi.common.enums.BusinessType; |
| | | import com.ruoyi.common.exception.ServiceException; |
| | | import com.ruoyi.common.tax.TaxtUtils; |
| | | import com.ruoyi.common.utils.SecurityUtils; |
| | | 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.vo.*; |
| | | import com.ruoyi.project.mapper.ServiceFunddetailMapper; |
| | | import com.ruoyi.project.service.*; |
| | | import com.ruoyi.system.service.ISysPostService; |
| | | import freemarker.template.Configuration; |
| | | import freemarker.template.Template; |
| | | import freemarker.template.TemplateException; |
| | |
| | | @Autowired |
| | | private IServiceExternalpersonService externalpersonService; |
| | | |
| | | @Autowired |
| | | private ISysPostService postService; |
| | | |
| | | |
| | | public ServiceFundController() { |
| | | configuration = new Configuration(); |
| | |
| | | public TableDataInfo list(ServiceFund serviceFund) { |
| | | startPage(); |
| | | //List<ServiceFund> list = serviceFundService.queryList(serviceFund); |
| | | SysUser user = SecurityUtils.getLoginUser().getUser(); |
| | | serviceFund.setUsername(user.getNickName()); |
| | | List<ServiceFund> list = serviceFundService.selectServiceFundList(serviceFund); |
| | | return getDataTable(list); |
| | | } |
| | |
| | | list = list.stream().filter(obj -> obj.getDonorname().contains(spFinancialExpensesIn.getDonorname())).collect(Collectors.toList()); |
| | | } |
| | | |
| | | //通过金额过滤 |
| | | if (spFinancialExpensesIn.getMoney() != null) { |
| | | list = list.stream().filter(reimbursementOut -> new BigDecimal(reimbursementOut.getPretaxcost()).compareTo(new BigDecimal(spFinancialExpensesIn.getMoney())) == 0).collect(Collectors.toList()); |
| | | |
| | | } |
| | | |
| | | Collections.sort(list, new Comparator<SpFinancialExpensesFundOut>() { |
| | | @Override |
| | | public int compare(SpFinancialExpensesFundOut o1, SpFinancialExpensesFundOut o2) { |
| | | return o2.getCreateTime().compareTo(o1.getCreateTime()); |
| | | return o1.getCreateTime().compareTo(o2.getCreateTime()); |
| | | } |
| | | }); |
| | | return getCustomDataTable(list, pageNum, pageSize); |
| | |
| | | |
| | | |
| | | /** |
| | | * 修改费用申请 |
| | | * 费用上报 |
| | | */ |
| | | @ApiOperation("修改费用申请") |
| | | @Log(title = "费用申请主", businessType = BusinessType.UPDATE) |
| | | @ApiOperation("费用上报") |
| | | @Log(title = "费用上报", businessType = BusinessType.UPDATE) |
| | | @PostMapping("/fundEdit") |
| | | @RepeatSubmit |
| | | public AjaxResult fundEdit(@RequestBody ServiceFund serviceFund) { |
| | |
| | | } |
| | | for (ServiceFund sf : infoByInfoIdList) { |
| | | //如果等于100,说明已经走到医院财务那边了;财务那边取数据是从分享表取,所以,这里直接往分享表里添加数据就行了 |
| | | if (sf.getBackflowlevel() == 199) { |
| | | if (sf.getBackflowlevel() != null && sf.getBackflowlevel() == 199) { |
| | | //将fund表的审核状态改成100 |
| | | sf.setBackflowlevel(100); |
| | | serviceFundService.updateById(sf); |
| | |
| | | |
| | | return success(); |
| | | } else { |
| | | serviceFund.setFlowlevel(sf.getBackflowlevel()); |
| | | |
| | | Integer TotalLevel = 0; |
| | | LoginUser loginUser = getLoginUser(); |
| | | SysUser user = loginUser.getUser(); |
| | | List<Integer> postids = postService.selectPostListByUserId(loginUser.getUserId()); |
| | | if (!postids.contains(2)) { |
| | | serviceFund.setRecordstatus(2); |
| | | if (serviceFund.getBackflowlevel() != null) { |
| | | serviceFund.setFlowlevel(serviceFund.getBackflowlevel()); |
| | | } else { |
| | | serviceFund.setBackflowlevel(1); |
| | | serviceFund.setFlowlevel(1); |
| | | } |
| | | } else { |
| | | serviceFund.setRecordstatus(0); |
| | | if (serviceFund.getBackflowlevel() != null) { |
| | | serviceFund.setFlowlevel(serviceFund.getBackflowlevel()); |
| | | } else { |
| | | serviceFund.setFlowlevel(0); |
| | | serviceFund.setBackflowlevel(0); |
| | | } |
| | | |
| | | } |
| | | // serviceFund.setFlowlevel(sf.getBackflowlevel()); |
| | | boolean bret = serviceFundService.updateById(serviceFund); |
| | | log.info("serviceFundService.updateById返参:{}", bret); |
| | | |
| | |
| | | @ApiOperation("删除费用申请主") |
| | | //@PreAuthorize("@ss.hasPermi('project:fund:remove')") |
| | | @Log(title = "费用申请主", businessType = BusinessType.DELETE) |
| | | @DeleteMapping("/{ids}") |
| | | @GetMapping("/remove/{ids}") |
| | | public AjaxResult remove(@PathVariable Long[] ids) { |
| | | return toAjax(serviceFundService.removeByIds(Arrays.asList(ids))); |
| | | } |
| | |
| | | dataMap.put("YWZ", serviceFund.getDeptmentname() == null ? "" : serviceFund.getDeptmentname()); |
| | | dataMap.put("ZHUZANG", serviceFund.getManagername() == null ? "" : serviceFund.getManagername()); |
| | | |
| | | String bz = ""; |
| | | int i = 0; |
| | | for (ServiceFunddetail f : fd) { |
| | | seqno++; |
| | | Map<String, Object> map = new HashMap<String, Object>(); |
| | | map.put("seqno", seqno); |
| | | // String fyxm = ""; |
| | | // fyxm += f.getItemname() == null ? "" : f.getItemname(); |
| | | // fyxm += f.getAmount() + "元"; |
| | | // //如果是医疗成本,则把银行卡加上每条明细的后面 |
| | | // if (serviceFund.getApplytype().equals("3")) { |
| | | // fyxm += "("; |
| | | // fyxm += f.getUnitname() == null ? "" : f.getUnitname() + ";"; |
| | | // fyxm += f.getDepositbank() == null ? "" : f.getDepositbank() + ": "; |
| | | // fyxm += f.getBankcardno() == null ? "" : f.getBankcardno(); |
| | | // fyxm += ")"; |
| | | // } |
| | | |
| | | //如果是医疗成本,则把银行卡加上每条明细的后面 |
| | | if (serviceFund.getApplytype().equals("3")) { |
| | | i = i + 1; |
| | | bz += f.getUnitname() == null ? "(" + i + ")" : "(" + i + ")" + f.getUnitname() + ","; |
| | | bz += f.getDepositbank() == null ? "" : f.getDepositbank() + ": "; |
| | | bz += f.getBankcardno() == null ? "" : f.getBankcardno() + ","; |
| | | bz += "金额 : " + f.getAmount() + "元"; |
| | | bz += "<w:br/>"; |
| | | } |
| | | if (serviceFund.getApplytype().equals("4")) { |
| | | i = i + 1; |
| | | bz += f.getBeneficiaryname() == null ? "(" + i + ")" : "(" + i + ")" + f.getBeneficiaryname() + ","; |
| | | bz += f.getDepositbank() == null ? "" : f.getDepositbank() + ": "; |
| | | bz += f.getBankcardno() == null ? "" : f.getBankcardno() + ","; |
| | | bz += "金额 : " + f.getAmount() + "元"; |
| | | bz += "<w:br/>"; |
| | | } |
| | | |
| | | 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 += ")"; |
| | | map.put("FYXM", fyxm); |
| | | newList.add(map); |
| | | } |
| | |
| | | // dataMap.put("JEXS", serviceFund.getAmountrequested()); |
| | | // dataMap.put("JEDS", convert(serviceFund.getAmountrequested()) + "整"); |
| | | //备注里放的是经办人的银行卡信息 |
| | | dataMap.put("BXBZ", infoByUserNo == null ? "" : infoByUserNo.getBranchbankname() + " " + infoByUserNo.getBankcardno()); |
| | | |
| | | dataMap.put("BXBZ", serviceFund.getApplytype().equals("3") || serviceFund.getApplytype().equals("4") ? bz : 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()); |
| | |
| | | return AjaxResult.success(serviceFundService.countItem(infoid, itemid)); |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 根据税前求税后 |
| | | */ |
| | | @ApiOperation("根据税前求税后") |
| | | @GetMapping(value = "/taxAfterByTaxBefore") |
| | | public AjaxResult taxAfterByTaxBefore(@PathVariable BigDecimal taxBefore) { |
| | | log.info("税前的值为:{}", taxBefore); |
| | | BigDecimal taxAfter = new BigDecimal(0.0); |
| | | if (taxBefore != null) { |
| | | String taxation = TaxtUtils.getTaxation(taxBefore); |
| | | taxAfter = taxBefore.subtract(new BigDecimal(taxation)); |
| | | log.info("税前的值为:{}", taxBefore); |
| | | } |
| | | return AjaxResult.success(taxAfter); |
| | | |
| | | } |
| | | |
| | | |
| | | } |