liusheng
2023-11-10 19b8481dd1b30368f97a2a983f61ff93a340a98c
代码提交
已修改3个文件
45 ■■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
@@ -1,6 +1,7 @@
package com.ruoyi.web.controller.project;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
@@ -13,6 +14,7 @@
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.tax.TaxtUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
@@ -2126,12 +2128,20 @@
    @PostMapping("/totaltax")
    @RepeatSubmit
    public AjaxResult totaltax(@RequestBody TotalTaxVO totalTaxVO) {
        Boolean totaltax = serviceFundService.totaltax(totalTaxVO);
        if (totaltax) {
            return AjaxResult.success("合计个税成功,请去E:\\OPO\\WEB\\Upload\\download 中查找文件");
        Map<String, List<ServiceFunddetailExcel>> totaltax = serviceFundService.totaltax(totalTaxVO);
        if (ObjectUtils.isEmpty(totaltax)) {
            throw new BaseException("合计个税失败");
        }
        return AjaxResult.success("合计失败,请稍后重试");
        Set<String> strings = totaltax.keySet();
        String key2 = null;
        for (String key : strings) {
            key2 = key;
        }
        ExcelUtil<ServiceFunddetailExcel> util = new ExcelUtil<ServiceFunddetailExcel>(ServiceFunddetailExcel.class);
        return AjaxResult.success(util.exportExcel(totaltax.get(key2), key2));
    }
}
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java
@@ -6,6 +6,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.domain.ServiceFund;
import com.ruoyi.project.domain.ServiceFunddetail;
import com.ruoyi.project.domain.ServiceFunddetailExcel;
import com.ruoyi.project.domain.vo.*;
import org.springframework.web.bind.annotation.PathVariable;
@@ -66,6 +67,6 @@
     */
    Map<String, Long> performance(ServiceFundVO serviceFundVO);
    Boolean totaltax(TotalTaxVO totalTaxVO);
    Map<String, List<ServiceFunddetailExcel>> totaltax(TotalTaxVO totalTaxVO);
}
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -758,7 +758,9 @@
    }
    @Override
    public Boolean totaltax(TotalTaxVO totalTaxVO) {
    public Map<String, List<ServiceFunddetailExcel>> totaltax(TotalTaxVO totalTaxVO) {
        Map<String, List<ServiceFunddetailExcel>> map = new HashMap<>();
        if (totalTaxVO.getIsTaxAfter() == null) {
            //如何为空,默认当没有算过税,进行合计
            totalTaxVO.setIsTaxAfter(0);
@@ -770,8 +772,6 @@
        //用于返回excel
        List<ServiceFunddetailExcel> serviceFunddetailList = new ArrayList<>();
        //打印excel
        ExcelUtil<ServiceFunddetailExcel> util = new ExcelUtil<ServiceFunddetailExcel>(ServiceFunddetailExcel.class);
        if (totalTaxVO.getIsTaxAfter() == 1) {
            //通过受益人名称,将税前、税后的值相加
@@ -796,8 +796,10 @@
                }
                serviceFunddetailList.add(serviceFunddetailExcel);
            }
            //打印算过税之后的,合计excel
            util.exportExcel(serviceFunddetailList, "合计个税(税后)");
            //返回算过税之后的,合计
            map.put("合计个税(税后)", serviceFunddetailList);
            return map;
        } else {
            a:
            for (ServiceFunddetail serviceFunddetail : serviceFunddetails) {
@@ -814,7 +816,11 @@
                for (ServiceFunddetail serviceFunddetail2 : serviceFunddetails) {
                    if (StringUtils.isEmpty(serviceFunddetail2.getServicesscopename())) {
                        throw new BaseException("服务说明为空,请检查后再计算");
                        ServiceFund serviceFund = null;
                        if (serviceFunddetail2.getFundid() == null) {
                            serviceFund = serviceFundMapper.selectById(serviceFunddetail2.getFundid());
                        }
                        throw new BaseException("服务说明为空,请检查后再计算,捐献者为 :" + serviceFund.getDonorname());
                    }
                    if (serviceFunddetail.getBeneficiaryname().equals(serviceFunddetail2.getBeneficiaryname()) && !(serviceFunddetail2.getServicesscopename().equals("税后"))) {
                        //累计税前
@@ -856,10 +862,10 @@
                if (ObjectUtils.isNotEmpty(sfeAfter.getBeneficiaryname())) serviceFunddetailList.add(sfeAfter);
            }
            //打印算税之前的,合计excel
            util.exportExcel(serviceFunddetailList, "合计个税(税前)");
            //返回算税之前的,合计
            map.put("合计个税(税前)", serviceFunddetailList);
            return map;
        }
        return true;
    }