liusheng
2023-08-02 21619ffd680dfc66682ca3b6761eda5b74bdb70a
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
@@ -447,7 +447,7 @@
        for (ServiceFunddetail serviceFunddetail : serviceFunddetails) {
            serviceFunddetail.setFundid(id);
            if (serviceFunddetail.getTaxedamount() != 0.0 && serviceFunddetail.getAmount() != 0.0 && serviceFunddetail.getTaxedamount() != null && serviceFunddetail.getTaxedamount() != null) {
            if (serviceFunddetail.getTaxedamount() != 0.0 && serviceFunddetail.getAmount() != 0.0 && serviceFunddetail.getTaxedamount() != null && serviceFunddetail.getAmount() != null) {
                // 税前税后都不为空
                if (serviceFunddetail.getId() == null) {
                    serviceFunddetailService.save(serviceFunddetail);
@@ -456,8 +456,8 @@
                }
                continue;
            } else if (serviceFunddetail.getTaxedamount() != 0.0 && serviceFunddetail.getTaxedamount() != null) {
                // 税后求税前,如果是专家费申请  或 偷专家费申请   才会计算税前税后
                if (StringUtils.isNotEmpty(serviceFunddetail.getApplytype()) && serviceFunddetail.getApplytype().equals("1") || serviceFunddetail.getApplytype().equals("2")) {
                // 税后求税前,如果是专家费申请  或 伦理专家费申请   才会计算税前税后
                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));
@@ -465,8 +465,8 @@
                    serviceFunddetail.setTaxamount(Double.parseDouble(taxation));
                }
            } else if (serviceFunddetail.getAmount() != 0.0 && serviceFunddetail.getAmount() != null) {
                // 税前求税后,如果是专家费申请  或 偷专家费申请   才会计算税前税后
                if (StringUtils.isNotEmpty(serviceFunddetail.getApplytype()) && serviceFunddetail.getApplytype().equals("1") || serviceFunddetail.getApplytype().equals("2")) {
                // 税前求税后,如果是专家费申请  或 伦理专家费申请   才会计算税前税后
                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);
@@ -480,8 +480,11 @@
            } 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);
@@ -491,6 +494,7 @@
//        serviceFunddetailService.saveBatch(serviceFunddetails);
        return AjaxResult.success(id);
    }
    /**
     * 审核费用
@@ -643,7 +647,7 @@
    @PutMapping
    @RepeatSubmit
    public AjaxResult edit(@RequestBody ServiceFund serviceFund) {
        List<ServiceFund> infoByInfoIdList = serviceFundService.getInfoByInfoId(serviceFund.getInfoid());
        List<ServiceFund> infoByInfoIdList = serviceFundService.queryInfoById(serviceFund);
        for (ServiceFund sf : infoByInfoIdList) {
            //如果等于100,说明已经走到医院财务那边了;财务那边取数据是从分享表取,所以,这里直接往分享表里添加数据就行了
            if (sf.getBackflowlevel() == 100 || sf.getBackflowlevel() == 199) {
@@ -738,11 +742,11 @@
        dataMap.put("JXZXM", serviceFund.getDonorname() == null ? "" : serviceFund.getDonorname());
        dataMap.put("JSR", serviceFund.getUsername() == null ? "" : serviceFund.getUsername());
//        dataMap.put("FYXM1", "支付专家费用,其中税前金额" + serviceFund.getPretaxcost() + "元,税后金额" + serviceFund.getTaxedcost() + "元。");
        dataMap.put("FYXM1", "人体器官捐献专家劳务费:" + serviceFund.getTaxedcost() + "元 (其中税后费用由中心承担税费)。");
        dataMap.put("FYXM1", "人体器官捐献专家劳务费:" + serviceFund.getPretaxcost() + "元 (其中税后费用由中心承担税费)。");
        dataMap.put("FYXM2", "");
        dataMap.put("FYXM3", "");
        dataMap.put("JEXS", serviceFund.getAmountrequested());
        dataMap.put("JEDS", convert(serviceFund.getAmountrequested()) + "整");
        dataMap.put("JEXS", serviceFund.getPretaxcost());
        dataMap.put("JEDS", convert(serviceFund.getPretaxcost()) + "整");
        dataMap.put("BXBZ", serviceFund.getRemark() == null ? "" : serviceFund.getRemark());