liusheng
2024-05-08 39405c053391f29d2f2c0e2c3104bea111e0e460
代码提交
已添加5个文件
已修改4个文件
308 ■■■■■ 文件已修改
ruoyi-project/src/main/java/com/ruoyi/project/domain/VExpertfeeDonor.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceFundSharedMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/mapper/VExpertfeeDonorMapper.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IVExpertfeeDonorService.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VExpertfeeDonorServiceImpl.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/VExpertfeeDonorMapper.xml 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/VExpertfeeDonor.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,85 @@
package com.ruoyi.project.domain;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * VIEW对象 v_expertfee_donor
 *
 * @author ruoyi
 * @date 2024-05-08
 */
@Data
@ApiModel("VIEW")
public class VExpertfeeDonor extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    /** æŠ¥é”€å•汇总表id(service_fundtax) */
    @ApiModelProperty("报销单汇总表id(service_fundtax)")
//    @Excel(name = "报销单汇总表id", readConverterExp = "s=ervice_fundtax")
    private Long fundTaxId;
    /** å…³è”service_donatebaseinfo表的ID */
    @ApiModelProperty("关联service_donatebaseinfo表的ID")
//    @Excel(name = "关联service_donatebaseinfo表的ID")
    private Long infoid;
    /** æçŒ®è€…姓名 */
    @ApiModelProperty("捐献者姓名")
    @Excel(name = "捐献者姓名")
    private String donorname;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "专家费-税前")
    private BigDecimal pretaxamount;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "专家费-个税")
    private BigDecimal taxamount;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "专家费-税后")
    private BigDecimal taxedamount;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "")
    private String str;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "捐献者医学支持成本")
    private BigDecimal donormedicalcost;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "遗体修复及善后成本")
    private BigDecimal donorbodycost;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "器官获取手术成本")
    private BigDecimal organgaincost;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "器官医学支持成本")
    private BigDecimal organmedicalcost;
    /** $column.columnComment */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "成本合计")
    private BigDecimal donorcost;
}
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceFundSharedMapper.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.project.domain.ServiceFundShared;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -25,5 +26,5 @@
    List<ServiceFundShared> getFundShareInfoById(Long fundid);
    Boolean delfundsharedInfoById(Long fundId,Long serfunid);
    Boolean delfundsharedInfoById(@Param("fundId") Long fundId,@Param("serfunid") Long serfunid);
}
ruoyi-project/src/main/java/com/ruoyi/project/mapper/VExpertfeeDonorMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
package com.ruoyi.project.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.project.domain.VExpertfeeDonor;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * VIEWMapper接口
 *
 * @author ruoyi
 * @date 2024-05-08
 */
@Mapper
public interface VExpertfeeDonorMapper extends BaseMapper<VExpertfeeDonor>
{
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeDonor VIEW
     * @return VIEW集合
     */
    public List<VExpertfeeDonor> selectVExpertfeeDonorList(VExpertfeeDonor vExpertfeeDonor);
    public List<VExpertfeeDonor> selectVExpertfeeDonorList2(Integer taxId);
}
ruoyi-project/src/main/java/com/ruoyi/project/service/IVExpertfeeDonorService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
package com.ruoyi.project.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.domain.VExpertfeeDonor;
import java.util.List;
/**
 * VIEWService接口
 *
 * @author ruoyi
 * @date 2024-05-08
 */
public interface IVExpertfeeDonorService extends IService<VExpertfeeDonor>
{
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeDonor VIEW
     * @return VIEW集合
     */
    public List<VExpertfeeDonor> queryList(VExpertfeeDonor vExpertfeeDonor);
}
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -77,6 +77,9 @@
    private VExpertfeeExpertMapper vExpertfeeExpertMapper;
    @Autowired
    private VExpertfeeDonorMapper vExpertfeeDonorMapper;
    @Autowired
    private VExpertfeeTotalMapper vExpertfeeTotalMapper;
@@ -189,7 +192,8 @@
            try {
                uploadOAFileAndUpdateDb(serviceFunddetailShareds.get(i));
            } catch (Exception e) {
                log.error("Exception中入参的ID为:{}", id);
                e.printStackTrace();
                log.error("Exception中入参的ID为:{},异常信息为 ï¼š {}", id, e.getMessage());
                if (id != null) {
                    Boolean aBoolean = sharedService.delfundsharedInfoById(null, id);
                    log.error("fund2分享表里的数据是否删除成功:{}", aBoolean);
@@ -929,13 +933,18 @@
        AjaxResult ajaxResult = util.exportExcel(list, "vExpertfeeTotal");
        String filePath = RuoYiConfig.getDownloadPath() + ajaxResult.get("msg");
        List<VExpertfeeExpert> list2 = vExpertfeeExpertMapper.selectVExpertfeeExpertListByFaxId(faxId);
        ExcelUtil<VExpertfeeExpert> util2 = new ExcelUtil<VExpertfeeExpert>(VExpertfeeExpert.class);
        AjaxResult ajaxResult1 = util2.exportExcel(list2, "vExpertfeeExpert");
        List<VExpertfeeDonor> list2 = vExpertfeeDonorMapper.selectVExpertfeeDonorList2(faxId);
        ExcelUtil<VExpertfeeDonor> util2= new ExcelUtil<VExpertfeeDonor>(VExpertfeeDonor.class);
        AjaxResult ajaxResult2 = util2.exportExcel(list2, "VExpertfeeDonor");
        List<VExpertfeeExpert> list3 = vExpertfeeExpertMapper.selectVExpertfeeExpertListByFaxId(faxId);
        ExcelUtil<VExpertfeeExpert> util3 = new ExcelUtil<VExpertfeeExpert>(VExpertfeeExpert.class);
        AjaxResult ajaxResult3 = util3.exportExcel(list3, "vExpertfeeExpert");
        List<String> list1 = new ArrayList<>();
        list1.add(ajaxResult.get("msg").toString());
        list1.add(ajaxResult1.get("msg").toString());
        list1.add(ajaxResult2.get("msg").toString());
        list1.add(ajaxResult3.get("msg").toString());
        String name = "专家费汇总单" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xlsx";
@@ -1014,6 +1023,9 @@
                log.info("第三方传回的数据获取的atts : {}", jsonArr);
                for (int j = 0; j < jsonArr.size(); j++) {
                    JSONObject jsonRet = jsonArr.getJSONObject(j);
                    if (StringUtils.isEmpty(jsonRet.get("fileUrl").toString())) {
                        throw new BaseException("fileID为空,请联系第三方处理");
                    }
                    rbDetailFile.setFileid(jsonRet.get("fileUrl").toString());
                }
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
@@ -156,7 +156,7 @@
    }
    @Override
    @Transactional
    @Transactional(rollbackFor = Exception.class)
    public Boolean addSharedData(Long id) {
        log.info("addSharedData方法的入参id :{}", id);
        //先判断一下share表是否已经插入
@@ -204,6 +204,7 @@
                    Boolean aBoolean = sharedService.delResharedInfoById(serviceReimbursementShared.getId());
                    log.error("文件上传失败,将分享表数据回滚:{}", aBoolean);
                }
                e.getMessage();
                return false;
            }
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VExpertfeeDonorServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,70 @@
package com.ruoyi.project.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.project.domain.VExpertfeeDonor;
import com.ruoyi.project.mapper.VExpertfeeDonorMapper;
import com.ruoyi.project.service.IVExpertfeeDonorService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * VIEWService业务层处理
 *
 * @author ruoyi
 * @date 2024-05-08
 */
@Service
public class VExpertfeeDonorServiceImpl extends ServiceImpl<VExpertfeeDonorMapper, VExpertfeeDonor> implements IVExpertfeeDonorService
{
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeDonor VIEW
     * @return VIEW
     */
    @Override
    public List<VExpertfeeDonor> queryList(VExpertfeeDonor vExpertfeeDonor) {
        LambdaQueryWrapper<VExpertfeeDonor> wrappers = Wrappers.lambdaQuery();
        if (vExpertfeeDonor.getFundTaxId() != null){
            wrappers.eq(VExpertfeeDonor::getFundTaxId ,vExpertfeeDonor.getFundTaxId());
        }
        if (vExpertfeeDonor.getInfoid() != null){
            wrappers.eq(VExpertfeeDonor::getInfoid ,vExpertfeeDonor.getInfoid());
        }
        if (StringUtils.isNotBlank(vExpertfeeDonor.getDonorname())){
            wrappers.like(VExpertfeeDonor::getDonorname ,vExpertfeeDonor.getDonorname());
        }
        if (vExpertfeeDonor.getPretaxamount() != null){
            wrappers.eq(VExpertfeeDonor::getPretaxamount ,vExpertfeeDonor.getPretaxamount());
        }
        if (vExpertfeeDonor.getTaxamount() != null){
            wrappers.eq(VExpertfeeDonor::getTaxamount ,vExpertfeeDonor.getTaxamount());
        }
        if (vExpertfeeDonor.getTaxedamount() != null){
            wrappers.eq(VExpertfeeDonor::getTaxedamount ,vExpertfeeDonor.getTaxedamount());
        }
        if (vExpertfeeDonor.getDonormedicalcost() != null){
            wrappers.eq(VExpertfeeDonor::getDonormedicalcost ,vExpertfeeDonor.getDonormedicalcost());
        }
        if (vExpertfeeDonor.getDonorbodycost() != null){
            wrappers.eq(VExpertfeeDonor::getDonorbodycost ,vExpertfeeDonor.getDonorbodycost());
        }
        if (vExpertfeeDonor.getOrgangaincost() != null){
            wrappers.eq(VExpertfeeDonor::getOrgangaincost ,vExpertfeeDonor.getOrgangaincost());
        }
        if (vExpertfeeDonor.getOrganmedicalcost() != null){
            wrappers.eq(VExpertfeeDonor::getOrganmedicalcost ,vExpertfeeDonor.getOrganmedicalcost());
        }
        if (vExpertfeeDonor.getDonorcost() != null){
            wrappers.eq(VExpertfeeDonor::getDonorcost ,vExpertfeeDonor.getDonorcost());
        }
        return this.list(wrappers);
    }
}
ruoyi-project/src/main/resources/mapper/project/VExpertfeeDonorMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.project.mapper.VExpertfeeDonorMapper">
    <resultMap type="com.ruoyi.project.domain.VExpertfeeDonor" id="VExpertfeeDonorResult">
        <result property="fundTaxId"    column="fund_tax_id"    />
        <result property="infoid"    column="InfoID"    />
        <result property="donorname"    column="DonorName"    />
        <result property="pretaxamount"    column="PretaxAmount"    />
        <result property="taxamount"    column="TaxAmount"    />
        <result property="taxedamount"    column="TaxedAmount"    />
        <result property="donormedicalcost"    column="DonorMedicalCost"    />
        <result property="donorbodycost"    column="DonorBodyCost"    />
        <result property="organgaincost"    column="OrganGainCost"    />
        <result property="organmedicalcost"    column="OrganMedicalCost"    />
        <result property="donorcost"    column="DonorCost"    />
    </resultMap>
    <sql id="selectVExpertfeeDonorVo">
        select fund_tax_id, InfoID, DonorName, PretaxAmount, TaxAmount, TaxedAmount, DonorMedicalCost, DonorBodyCost, OrganGainCost, OrganMedicalCost, DonorCost from v_expertfee_donor
    </sql>
    <select id="selectVExpertfeeDonorList" parameterType="com.ruoyi.project.domain.VExpertfeeDonor" resultMap="VExpertfeeDonorResult">
        <include refid="selectVExpertfeeDonorVo"/>
        <where>
            <if test="fundTaxId != null "> and fund_tax_id = #{fundTaxId}</if>
            <if test="infoid != null "> and InfoID = #{infoid}</if>
            <if test="donorname != null  and donorname != ''"> and DonorName like concat('%', #{donorname}, '%')</if>
            <if test="pretaxamount != null "> and PretaxAmount = #{pretaxamount}</if>
            <if test="taxamount != null "> and TaxAmount = #{taxamount}</if>
            <if test="taxedamount != null "> and TaxedAmount = #{taxedamount}</if>
            <if test="donormedicalcost != null "> and DonorMedicalCost = #{donormedicalcost}</if>
            <if test="donorbodycost != null "> and DonorBodyCost = #{donorbodycost}</if>
            <if test="organgaincost != null "> and OrganGainCost = #{organgaincost}</if>
            <if test="organmedicalcost != null "> and OrganMedicalCost = #{organmedicalcost}</if>
            <if test="donorcost != null "> and DonorCost = #{donorcost}</if>
        </where>
    </select>
    <select id="selectVExpertfeeDonorList2" parameterType="com.ruoyi.project.domain.VExpertfeeDonor" resultMap="VExpertfeeDonorResult">
        select  DonorName, PretaxAmount, TaxAmount, TaxedAmount, DonorMedicalCost, DonorBodyCost, OrganGainCost, OrganMedicalCost, DonorCost from v_expertfee_donor
        where fund_tax_id = #{taxId}
        UNION
        SELECT
               '合计'                  as DonorName,
               SUM(PretaxAmount) as PretaxAmount,
               SUM(TaxAmount)    as TaxAmount,
               SUM(TaxedAmount)    as TaxedAmount,
               SUM(DonorMedicalCost) as DonorMedicalCost,
               SUM(DonorBodyCost)        as DonorBodyCost,
               SUM(OrganGainCost)        as OrganGainCost,
               SUM(OrganMedicalCost)        as OrganMedicalCost,
               SUM(DonorCost)        as DonorCost
        FROM v_expertfee_donor
        where fund_tax_id = #{taxId}
    </select>
</mapper>
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -640,35 +640,35 @@
        serviceFundflowrule.setApplytype("1");
        List<ServiceFundflowrule> serviceFundflowrules2 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("专家劳务的最高等级:{}", serviceFundflowrules2.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules2.get(0).getTotallevel().longValue(), "1");
        addFundShared(serviceFundflowrules2.get(0).getTotallevel().longValue(), "1");
        //伦理专家劳务费申请
        serviceFundflowrule.setApplytype("2");
        List<ServiceFundflowrule> serviceFundflowrules3 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("伦理专家劳务费申请:{}", serviceFundflowrules3.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules3.get(0).getTotallevel().longValue(), "2");
        addFundShared(serviceFundflowrules3.get(0).getTotallevel().longValue(), "2");
        //医学成本报销
        serviceFundflowrule.setApplytype("3");
        List<ServiceFundflowrule> serviceFundflowrules4 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("医学成本报销:{}", serviceFundflowrules4.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules4.get(0).getTotallevel().longValue(), "3");
        addFundShared(serviceFundflowrules4.get(0).getTotallevel().longValue(), "3");
        //办公费用报销
        serviceFundflowrule.setApplytype("4");
        List<ServiceFundflowrule> serviceFundflowrules5 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("办公费用报销:{}", serviceFundflowrules5.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules5.get(0).getTotallevel().longValue(), "4");
        addFundShared(serviceFundflowrules5.get(0).getTotallevel().longValue(), "4");
        //绩效审批报销
        serviceFundflowrule.setApplytype("5");
        List<ServiceFundflowrule> serviceFundflowrules6 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("办公费用报销:{}", serviceFundflowrules6.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules6.get(0).getTotallevel().longValue(), "5");
        addFundShared(serviceFundflowrules6.get(0).getTotallevel().longValue(), "5");
    }
    private void addFunfShared(Long totallevel, String applyType) {
    private void addFundShared(Long totallevel, String applyType) {
        ServiceFund serviceFund = new ServiceFund();
        serviceFund.setFlowlevel(totallevel);
        serviceFund.setUploadStates(1);