liusheng
2023-08-02 21619ffd680dfc66682ca3b6761eda5b74bdb70a
专家劳务下载bug修复
已修改3个文件
42 ■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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);
            }
            taxBefore = taxBefore + serviceFunddetail.getAmount();
            taxAfter = taxAfter + serviceFunddetail.getTaxedamount();
            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());
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java
@@ -24,6 +24,8 @@
     */
    public List<ServiceFund> queryList(ServiceFund serviceFund);
    public List<ServiceFund> queryInfoById(ServiceFund serviceFund);
    List<ServiceFund> getInfoByInfoId(Long infoid);
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -59,7 +59,7 @@
    /**
     * 查询费用申请主列表
     * 查询费用申请主列表(包含删除的)
     *
     * @param serviceFund 费用申请主
     * @return 费用申请主
@@ -97,6 +97,18 @@
        return this.list(wrappers);
    }
    @Override
    public List<ServiceFund> queryInfoById(ServiceFund serviceFund) {
        LambdaQueryWrapper<ServiceFund> wrappers = Wrappers.lambdaQuery();
        if (serviceFund.getId() != null) {
            wrappers.eq(ServiceFund::getId, serviceFund.getId());
        }
        wrappers.eq(ServiceFund::getDel_flag, "0");
        return this.list(wrappers);
    }
    @Override
    public List<ServiceFund> getInfoByInfoId(Long infoid) {
        return serviceFundMapper.getInfoByInfoId(infoid);