liusheng
2024-03-19 ded03f0315e02c13f17b8bf7777c89a5cc73130e
代码提交
已添加13个文件
已修改10个文件
1040 ■■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundtaxController.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementpayeeController.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/VExpertfeeExpertController.java 110 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/VExpertfeeTotalController.java 110 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFundtax.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/TestExcelVo.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/VExpertfeeExpert.java 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/VExpertfeeTotal.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/mapper/VExpertfeeExpertMapper.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/mapper/VExpertfeeTotalMapper.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IVExpertfeeExpertService.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IVExpertfeeTotalService.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java 106 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundtaxServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VExpertfeeExpertServiceImpl.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VExpertfeeTotalServiceImpl.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/ServiceFundtaxMapper.xml 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/VExpertfeeExpertMapper.xml 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/VExpertfeeTotalMapper.xml 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
@@ -31,6 +31,11 @@
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Options;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.TransactionDefinition;
@@ -2237,4 +2242,16 @@
        return AjaxResult.success(dataMap);
    }
    /**
     * å¯¼å‡ºä¸“家报销费用汇总
     */
    @ApiOperation("导出专家报销费用汇总")
    @Log(title = "费用申请主", businessType = BusinessType.EXPORT)
    @GetMapping("/exportFeeSum/{faxId}")
    public Map<String, Object> exportFeeSum(@PathVariable Integer faxId) {
        Map<String, Object> map = serviceFundService.exportFeeSum(faxId);
        return map;
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundtaxController.java
@@ -95,12 +95,9 @@
    @ApiOperation("删除专家费用算税申请主")
    @PreAuthorize("@ss.hasPermi('system:fundtax:remove')")
    @Log(title = "专家费用算税申请主", businessType = BusinessType.DELETE)
    @GetMapping("/remove/id")
    @GetMapping("/remove/{id}")
    public AjaxResult remove(@PathVariable Long id) {
        ServiceFundtax serviceFundtax = new ServiceFundtax();
        serviceFundtax.setDel_flag(1);
        serviceFundtax.setId(id);
        return toAjax(serviceFundtaxService.updateById(serviceFundtax));
        return toAjax(serviceFundtaxService.removeById(id));
    }
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementpayeeController.java
@@ -19,15 +19,14 @@
/**
 * å·®æ—…报销付款信息Controller
 *
 *
 * @author ruoyi
 * @date 2023-05-10
 */
@Api("差旅报销付款信息")
@RestController
@RequestMapping("/project/reimbursementpayee")
public class ServiceReimbursementpayeeController extends BaseController
{
public class ServiceReimbursementpayeeController extends BaseController {
    @Autowired
    private IServiceReimbursementpayeeService serviceReimbursementpayeeService;
@@ -36,9 +35,8 @@
     */
    @ApiOperation("查询差旅报销付款信息列表")
    //@PreAuthorize("@ss.hasPermi('project:reimbursementpayee:list')")
    @GetMapping("/list")
    public TableDataInfo list(ServiceReimbursementpayee serviceReimbursementpayee)
    {
    @PostMapping("/list")
    public TableDataInfo list(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) {
        startPage();
        List<ServiceReimbursementpayee> list = serviceReimbursementpayeeService.queryList(serviceReimbursementpayee);
        return getDataTable(list);
@@ -51,8 +49,7 @@
    //@PreAuthorize("@ss.hasPermi('project:reimbursementpayee:export')")
    @Log(title = "差旅报销付款信息", businessType = BusinessType.EXPORT)
    @GetMapping("/export")
    public AjaxResult export(ServiceReimbursementpayee serviceReimbursementpayee)
    {
    public AjaxResult export(ServiceReimbursementpayee serviceReimbursementpayee) {
        List<ServiceReimbursementpayee> list = serviceReimbursementpayeeService.queryList(serviceReimbursementpayee);
        ExcelUtil<ServiceReimbursementpayee> util = new ExcelUtil<ServiceReimbursementpayee>(ServiceReimbursementpayee.class);
        return util.exportExcel(list, "差旅报销付款信息数据");
@@ -64,8 +61,7 @@
    @ApiOperation("获取差旅报销付款信息详细信息")
    //@PreAuthorize("@ss.hasPermi('project:reimbursementpayee:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") String id)
    {
    public AjaxResult getInfo(@PathVariable("id") String id) {
        return AjaxResult.success(serviceReimbursementpayeeService.getById(id));
    }
@@ -77,8 +73,7 @@
    @Log(title = "差旅报销付款信息", businessType = BusinessType.INSERT)
    @PostMapping("/add")
    @RepeatSubmit
    public AjaxResult add(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee)
    {
    public AjaxResult add(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) {
        boolean save = serviceReimbursementpayeeService.save(serviceReimbursementpayee);
        return AjaxResult.success(serviceReimbursementpayee);
    }
@@ -90,9 +85,8 @@
    //@PreAuthorize("@ss.hasPermi('project:reimbursementpayee:edit')")
    @Log(title = "差旅报销付款信息", businessType = BusinessType.UPDATE)
    @PostMapping("/reimbursementpayeeEdit")
    @RepeatSubmit
    public AjaxResult edit(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee)
    {
    @RepeatSubmit
    public AjaxResult edit(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) {
        return toAjax(serviceReimbursementpayeeService.updateById(serviceReimbursementpayee));
    }
@@ -103,8 +97,7 @@
    //@PreAuthorize("@ss.hasPermi('project:reimbursementpayee:remove')")
    @Log(title = "差旅报销付款信息", businessType = BusinessType.DELETE)
    @GetMapping("/remove/{ids}")
    public AjaxResult remove(@PathVariable String[] ids)
    {
    public AjaxResult remove(@PathVariable String[] ids) {
        return toAjax(serviceReimbursementpayeeService.removeByIds(Arrays.asList(ids)));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/VExpertfeeExpertController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,110 @@
package com.ruoyi.web.controller.project;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.VExpertfeeExpert;
import com.ruoyi.project.service.IVExpertfeeExpertService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
/**
 * VIEWController
 *
 * @author ruoyi
 * @date 2024-03-18
 */
@Api("VIEW")
@RestController
@RequestMapping("/project/feeexpert")
public class VExpertfeeExpertController extends BaseController
{
    @Autowired
    private IVExpertfeeExpertService vExpertfeeExpertService;
    /**
     * æŸ¥è¯¢VIEW列表
     */
    @ApiOperation("查询VIEW列表")
    @PreAuthorize("@ss.hasPermi('system:expert:list')")
    @GetMapping("/list")
    public TableDataInfo list(VExpertfeeExpert vExpertfeeExpert)
    {
        startPage();
        List<VExpertfeeExpert> list = vExpertfeeExpertService.queryList(vExpertfeeExpert);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºVIEW列表
     */
    @ApiOperation("导出VIEW列表")
    @PreAuthorize("@ss.hasPermi('system:expert:export')")
    @Log(title = "VIEW", businessType = BusinessType.EXPORT)
    @GetMapping("/export")
    public AjaxResult export(VExpertfeeExpert vExpertfeeExpert)
    {
        List<VExpertfeeExpert> list = vExpertfeeExpertService.queryList(vExpertfeeExpert);
        ExcelUtil<VExpertfeeExpert> util = new ExcelUtil<VExpertfeeExpert>(VExpertfeeExpert.class);
        return util.exportExcel(list, "VIEW数据");
    }
    /**
     * èŽ·å–VIEW详细信息
     */
    @ApiOperation("获取VIEW详细信息")
    @PreAuthorize("@ss.hasPermi('system:expert:query')")
    @GetMapping(value = "/{fundTaxId}")
    public AjaxResult getInfo(@PathVariable("fundTaxId") Long fundTaxId)
    {
        return AjaxResult.success(vExpertfeeExpertService.getById(fundTaxId));
    }
    /**
     * æ–°å¢žVIEW
     */
    @ApiOperation("新增VIEW")
    @PreAuthorize("@ss.hasPermi('system:expert:add')")
    @Log(title = "VIEW", businessType = BusinessType.INSERT)
    @PostMapping
    @RepeatSubmit
    public AjaxResult add(@RequestBody VExpertfeeExpert vExpertfeeExpert)
    {
        return toAjax(vExpertfeeExpertService.save(vExpertfeeExpert));
    }
    /**
     * ä¿®æ”¹VIEW
     */
    @ApiOperation("修改VIEW")
    @PreAuthorize("@ss.hasPermi('system:expert:edit')")
    @Log(title = "VIEW", businessType = BusinessType.UPDATE)
    @PutMapping
    @RepeatSubmit
    public AjaxResult edit(@RequestBody VExpertfeeExpert vExpertfeeExpert)
    {
        return toAjax(vExpertfeeExpertService.updateById(vExpertfeeExpert));
    }
    /**
     * åˆ é™¤VIEW
     */
    @ApiOperation("删除VIEW")
    @PreAuthorize("@ss.hasPermi('system:expert:remove')")
    @Log(title = "VIEW", businessType = BusinessType.DELETE)
    @DeleteMapping("/{fundTaxIds}")
    public AjaxResult remove(@PathVariable Long[] fundTaxIds)
    {
        return toAjax(vExpertfeeExpertService.removeByIds(Arrays.asList(fundTaxIds)));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/VExpertfeeTotalController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,110 @@
package com.ruoyi.web.controller.project;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.VExpertfeeTotal;
import com.ruoyi.project.service.IVExpertfeeTotalService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
/**
 * VIEWController
 *
 * @author ruoyi
 * @date 2024-03-18
 */
@Api("VIEW")
@RestController
@RequestMapping("/project/feetotal")
public class VExpertfeeTotalController extends BaseController
{
    @Autowired
    private IVExpertfeeTotalService vExpertfeeTotalService;
    /**
     * æŸ¥è¯¢VIEW列表
     */
    @ApiOperation("查询VIEW列表")
    @PreAuthorize("@ss.hasPermi('system:total:list')")
    @GetMapping("/list")
    public TableDataInfo list(VExpertfeeTotal vExpertfeeTotal)
    {
        startPage();
        List<VExpertfeeTotal> list = vExpertfeeTotalService.queryList(vExpertfeeTotal);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºVIEW列表
     */
    @ApiOperation("导出VIEW列表")
    @PreAuthorize("@ss.hasPermi('system:total:export')")
    @Log(title = "VIEW", businessType = BusinessType.EXPORT)
    @GetMapping("/export")
    public AjaxResult export(VExpertfeeTotal vExpertfeeTotal)
    {
        List<VExpertfeeTotal> list = vExpertfeeTotalService.queryList(vExpertfeeTotal);
        ExcelUtil<VExpertfeeTotal> util = new ExcelUtil<VExpertfeeTotal>(VExpertfeeTotal.class);
        return util.exportExcel(list, "VIEW数据");
    }
    /**
     * èŽ·å–VIEW详细信息
     */
    @ApiOperation("获取VIEW详细信息")
    @PreAuthorize("@ss.hasPermi('system:total:query')")
    @GetMapping(value = "/{fundTaxId}")
    public AjaxResult getInfo(@PathVariable("fundTaxId") Long fundTaxId)
    {
        return AjaxResult.success(vExpertfeeTotalService.getById(fundTaxId));
    }
    /**
     * æ–°å¢žVIEW
     */
    @ApiOperation("新增VIEW")
    @PreAuthorize("@ss.hasPermi('system:total:add')")
    @Log(title = "VIEW", businessType = BusinessType.INSERT)
    @PostMapping
    @RepeatSubmit
    public AjaxResult add(@RequestBody VExpertfeeTotal vExpertfeeTotal)
    {
        return toAjax(vExpertfeeTotalService.save(vExpertfeeTotal));
    }
    /**
     * ä¿®æ”¹VIEW
     */
    @ApiOperation("修改VIEW")
    @PreAuthorize("@ss.hasPermi('system:total:edit')")
    @Log(title = "VIEW", businessType = BusinessType.UPDATE)
    @PutMapping
    @RepeatSubmit
    public AjaxResult edit(@RequestBody VExpertfeeTotal vExpertfeeTotal)
    {
        return toAjax(vExpertfeeTotalService.updateById(vExpertfeeTotal));
    }
    /**
     * åˆ é™¤VIEW
     */
    @ApiOperation("删除VIEW")
    @PreAuthorize("@ss.hasPermi('system:total:remove')")
    @Log(title = "VIEW", businessType = BusinessType.DELETE)
    @DeleteMapping("/{fundTaxIds}")
    public AjaxResult remove(@PathVariable Long[] fundTaxIds)
    {
        return toAjax(vExpertfeeTotalService.removeByIds(Arrays.asList(fundTaxIds)));
    }
}
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java
@@ -381,7 +381,7 @@
    private Integer performancetype;
    /**
     * ä¸“家费用算税申请主表ID
     * ä¸“家费用算税申请主表ID,当值为-1时,表示fundTaxId为null
     */
    @ApiModelProperty("专家费用算税申请主表ID")
    @Excel(name = "专家费用算税申请主表ID")
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFundtax.java
@@ -112,6 +112,13 @@
    private BigDecimal taxamount;
    /**
     * æ‰£ç¨Žé‡‘额
     */
    @ApiModelProperty("扣税金额")
    @Excel(name = "扣税金额")
    private BigDecimal taxMoney;
    /**
     * åŒ»å­¦æˆæœ¬åˆè®¡
     */
    @ApiModelProperty("医学成本合计")
@@ -253,6 +260,13 @@
    private String updownremark;
    /**
     * æ¥ç”¨è®°å½•插入分享表失败
     */
    @ApiModelProperty("是否算税:0未算税,1已算税")
    @Excel(name = "是否算税:0未算税,1已算税")
    private Integer istax;
    /**
     * serviceFunds集合
     */
    @ApiModelProperty("serviceFunds集合")
ruoyi-project/src/main/java/com/ruoyi/project/domain/TestExcelVo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,71 @@
package com.ruoyi.project.domain;
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;
/**
 * æçŒ®é™„件对象 service_donateannex
 *
 * @author ruoyi
 * @date 2021-11-11
 */
@Data
@ApiModel("TestExcelVo")
public class TestExcelVo extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**
     * æçŒ®è€…编号
     */
    @ApiModelProperty("捐献者编号")
    @Excel(name = "捐献者姓名")
    private String donorno;
    /**
     * é™„件名称
     */
    @ApiModelProperty("附件名称")
    @Excel(name = "业务组")
    private String annexname;
    /**
     * é™„件编号
     */
    @ApiModelProperty("附件编号")
    @Excel(name = "捐献者医学支持成本")
    private String annexno;
    /**
     * é™„件路径
     */
    @ApiModelProperty("遗体修复及善后成本")
    @Excel(name = "遗体修复及善后成本")
    private String annexurl;
    /**
     * é™„件类型
     */
    @ApiModelProperty("器官获取手术成本")
    @Excel(name = "捐献者医学支器官获取手术成本持成本")
    private String annexfilestype;
    /**
     * é™„件类型
     */
    @ApiModelProperty("器官医学支持成本")
    @Excel(name = "器官医学支持成本")
    private String delFlag;
    /**
     * é™„件类型
     */
    @ApiModelProperty("案例专家费金额(元)")
    @Excel(name = "案例专家费金额(元)")
    private String delFlag2;
}
ruoyi-project/src/main/java/com/ruoyi/project/domain/VExpertfeeExpert.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,109 @@
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_expert
 *
 * @author ruoyi
 * @date 2024-03-18
 */
@Data
@ApiModel("VIEW")
public class VExpertfeeExpert {
    private static final long serialVersionUID = 1L;
    /**
     * ä¸“家费用算税申请主表ID
     */
    @ApiModelProperty("专家费用算税申请主表ID")
//    @Excel(name = "专家费用算税申请主表ID")
    private Long fundTaxId;
    /**
     * $column.columnComment
     */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "受益人类型")
    private String beneficiarytype;
    /**
     * $column.columnComment
     */
    @ApiModelProperty("$column.columnComment")
//    @Excel(name = "专家费用算税申请主表ID")
    private Long belong;
    /**
     * æ”¶ç›Šäººå§“名(家属、专家、机构)
     */
    @ApiModelProperty("收益人姓名(家属、专家、机构)")
    @Excel(name = "收益人姓名(家属、专家、机构)")
    private String beneficiaryname;
    /**
     * è¯ä»¶å·ç 
     */
    @ApiModelProperty("证件号码")
    @Excel(name = "证件号码")
    private String idcardno;
    /**
     * å¼€æˆ·é“¶è¡Œ
     */
    @ApiModelProperty("开户银行")
    @Excel(name = "开户银行")
    private String depositbank;
    /**
     * å¡å·
     */
    @ApiModelProperty("卡号")
    @Excel(name = "卡号")
    private String bankcardno;
    /**
     * $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 donorname;
    /**
     * $column.columnComment
     */
    @ApiModelProperty("$column.columnComment")
    @Excel(name = "卡号")
    private String unitname;
}
ruoyi-project/src/main/java/com/ruoyi/project/domain/VExpertfeeTotal.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,65 @@
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_total
 *
 * @author ruoyi
 * @date 2024-03-18
 */
@Data
@ApiModel("VIEW")
public class VExpertfeeTotal
{
    private static final long serialVersionUID = 1L;
    /** ä¸“家费用算税申请主表ID */
    @ApiModelProperty("专家费用算税申请主表ID")
//    @Excel(name = "专家费用算税申请主表ID")
    private Long fundTaxId;
    /** éƒ¨é—¨åç§° */
    @ApiModelProperty("部门名称")
    @Excel(name = "部门名称")
    private String deptmentname;
    /** éƒ¨é—¨åç§° */
    @ApiModelProperty("部门名称")
//    @Excel(name = "部门名称")
    private String deptmentno;
    /** $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/VExpertfeeExpertMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
package com.ruoyi.project.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.project.domain.VExpertfeeExpert;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * VIEWMapper接口
 *
 * @author ruoyi
 * @date 2024-03-18
 */
@Mapper
public interface VExpertfeeExpertMapper extends BaseMapper<VExpertfeeExpert> {
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeExpert VIEW
     * @return VIEW集合
     */
    public List<VExpertfeeExpert> selectVExpertfeeExpertList(VExpertfeeExpert vExpertfeeExpert);
    public List<VExpertfeeExpert> selectVExpertfeeExpertListByFaxId(Integer faxId);
}
ruoyi-project/src/main/java/com/ruoyi/project/mapper/VExpertfeeTotalMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
package com.ruoyi.project.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.project.domain.VExpertfeeTotal;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * VIEWMapper接口
 *
 * @author ruoyi
 * @date 2024-03-18
 */
@Mapper
public interface VExpertfeeTotalMapper extends BaseMapper<VExpertfeeTotal> {
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeTotal VIEW
     * @return VIEW集合
     */
    public List<VExpertfeeTotal> selectVExpertfeeTotalList(VExpertfeeTotal vExpertfeeTotal);
    public List<VExpertfeeTotal> selectVExpertfeeTotalListByTaxId(Integer taxId);
}
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java
@@ -70,4 +70,7 @@
    Map<String, List<ServiceFunddetailExcel>> totaltax(TotalTaxVO totalTaxVO);
    Map<String, Object> exportFeeSum(Integer faxId);
}
ruoyi-project/src/main/java/com/ruoyi/project/service/IVExpertfeeExpertService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
package com.ruoyi.project.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.domain.VExpertfeeExpert;
import java.util.List;
/**
 * VIEWService接口
 *
 * @author ruoyi
 * @date 2024-03-18
 */
public interface IVExpertfeeExpertService extends IService<VExpertfeeExpert>
{
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeExpert VIEW
     * @return VIEW集合
     */
    public List<VExpertfeeExpert> queryList(VExpertfeeExpert vExpertfeeExpert);
}
ruoyi-project/src/main/java/com/ruoyi/project/service/IVExpertfeeTotalService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
package com.ruoyi.project.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.domain.VExpertfeeTotal;
import java.util.List;
/**
 * VIEWService接口
 *
 * @author ruoyi
 * @date 2024-03-18
 */
public interface IVExpertfeeTotalService extends IService<VExpertfeeTotal>
{
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeTotal VIEW
     * @return VIEW集合
     */
    public List<VExpertfeeTotal> queryList(VExpertfeeTotal vExpertfeeTotal);
}
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -1,40 +1,40 @@
package com.ruoyi.project.service.impl;
import java.io.File;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.annotation.NotRepeatCommit;
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.config.RuoYiConfig;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.ChineseUtils;
import com.ruoyi.common.utils.HttpClientKit;
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.*;
import com.ruoyi.project.domain.vo.*;
import com.ruoyi.project.mapper.*;
import com.ruoyi.project.service.IServiceFundSharedService;
import com.ruoyi.project.service.IServiceFunddetailService;
import com.ruoyi.project.service.IServiceFunddetailSharedService;
import com.ruoyi.project.service.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFColor;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
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.service.IServiceFundService;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
 * è´¹ç”¨ç”³è¯·ä¸»Service业务层处理
@@ -71,6 +71,12 @@
    @Autowired
    private IServiceFunddetailService serviceFunddetailService;
    @Autowired
    private VExpertfeeExpertMapper vExpertfeeExpertMapper;
    @Autowired
    private VExpertfeeTotalMapper vExpertfeeTotalMapper;
    /**
@@ -906,6 +912,33 @@
        }
    }
    @Override
    public Map<String, Object> exportFeeSum(Integer faxId) {
        List<VExpertfeeTotal> list = vExpertfeeTotalMapper.selectVExpertfeeTotalListByTaxId(faxId);
        ExcelUtil<VExpertfeeTotal> util = new ExcelUtil<VExpertfeeTotal>(VExpertfeeTotal.class);
        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<String> list1 = new ArrayList<>();
        list1.add(ajaxResult.get("msg").toString());
        list1.add(ajaxResult1.get("msg").toString());
        String name = "专家费汇总单" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xlsx";
        mergeExcel(list1, RuoYiConfig.getDownloadPath() + name);
        for (String path : list1) {
            new File(RuoYiConfig.getDownloadPath() + path).delete();
        }
        Map<String, Object> map = new HashMap<>();
        map.put("downloadUrl", "/profile/download/wordtemplate/" + name );
        map.put("downloadName", name);
        return map;
    }
    int uploadOAFileAndUpdateDb(ServiceFunddetailShared remShare) {
        //上传OA文件
@@ -1097,4 +1130,41 @@
        return id;
    }
    public void mergeExcel(List<String> files, String outputFile) {
        try {
            Workbook resultWorkbook = new XSSFWorkbook();
            for (String file : files) {
                InputStream is1 = new FileInputStream(RuoYiConfig.getDownloadPath() + file);
                Workbook workbook1 = new XSSFWorkbook(is1);
                Sheet sheet1 = workbook1.getSheetAt(0);
                // å¤åˆ¶ç¬¬ä¸€ä¸ªæ–‡ä»¶çš„Sheet
                Sheet newSheet1 = resultWorkbook.createSheet(file.substring(0, file.indexOf(".")));
                for (Row row : sheet1) {
                    Row newRow = newSheet1.createRow(row.getRowNum());
                    int columns = row.getLastCellNum();
                    for (int i = 0; i < columns; i++) {
                        newSheet1.setColumnWidth(i, 5000);
                        Cell cell = row.getCell(i);
                        Cell newCell = newRow.createCell(cell.getColumnIndex());
                        newCell.setCellValue(cell.getStringCellValue());
                        // åˆ›å»ºå•元格样式
                        CellStyle style = resultWorkbook.createCellStyle();
                        style.setAlignment(HorizontalAlignment.CENTER); // æ°´å¹³å±…中
                        style.setVerticalAlignment(VerticalAlignment.CENTER); // åž‚直居中
                        if (row.getRowNum() == 0) {
                            // è®¾ç½®ç¬¬ä¸€è¡ŒèƒŒæ™¯è‰²
                            style.setFillForegroundColor(IndexedColors.GREY_50_PERCENT.getIndex());
                            style.setFillPattern(FillPatternType.SOLID_FOREGROUND);
                        }
                        newCell.setCellStyle(style);
                    }
                }
            }
            FileOutputStream out = new FileOutputStream(outputFile);
            resultWorkbook.write(out);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundtaxServiceImpl.java
@@ -81,6 +81,9 @@
        if (serviceFundtax.getTaxamount() != null) {
            wrappers.eq(ServiceFundtax::getTaxamount, serviceFundtax.getTaxamount());
        }
        if (serviceFundtax.getIstax() != null) {
            wrappers.eq(ServiceFundtax::getIstax, serviceFundtax.getIstax());
        }
        if (serviceFundtax.getMedicalcost() != null) {
            wrappers.eq(ServiceFundtax::getMedicalcost, serviceFundtax.getMedicalcost());
        }
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VExpertfeeExpertServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,73 @@
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.VExpertfeeExpert;
import com.ruoyi.project.mapper.VExpertfeeExpertMapper;
import com.ruoyi.project.service.IVExpertfeeExpertService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * VIEWService业务层处理
 *
 * @author ruoyi
 * @date 2024-03-18
 */
@Service
public class VExpertfeeExpertServiceImpl extends ServiceImpl<VExpertfeeExpertMapper, VExpertfeeExpert> implements IVExpertfeeExpertService
{
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeExpert VIEW
     * @return VIEW
     */
    @Override
    public List<VExpertfeeExpert> queryList(VExpertfeeExpert vExpertfeeExpert) {
        LambdaQueryWrapper<VExpertfeeExpert> wrappers = Wrappers.lambdaQuery();
        if (vExpertfeeExpert.getFundTaxId() != null){
            wrappers.eq(VExpertfeeExpert::getFundTaxId ,vExpertfeeExpert.getFundTaxId());
        }
        if (vExpertfeeExpert.getBeneficiarytype() != null){
            wrappers.eq(VExpertfeeExpert::getBeneficiarytype ,vExpertfeeExpert.getBeneficiarytype());
        }
        if (vExpertfeeExpert.getBelong() != null){
            wrappers.eq(VExpertfeeExpert::getBelong ,vExpertfeeExpert.getBelong());
        }
        if (StringUtils.isNotBlank(vExpertfeeExpert.getBeneficiaryname())){
            wrappers.like(VExpertfeeExpert::getBeneficiaryname ,vExpertfeeExpert.getBeneficiaryname());
        }
        if (StringUtils.isNotBlank(vExpertfeeExpert.getIdcardno())){
            wrappers.eq(VExpertfeeExpert::getIdcardno ,vExpertfeeExpert.getIdcardno());
        }
        if (StringUtils.isNotBlank(vExpertfeeExpert.getDepositbank())){
            wrappers.eq(VExpertfeeExpert::getDepositbank ,vExpertfeeExpert.getDepositbank());
        }
        if (StringUtils.isNotBlank(vExpertfeeExpert.getBankcardno())){
            wrappers.eq(VExpertfeeExpert::getBankcardno ,vExpertfeeExpert.getBankcardno());
        }
        if (vExpertfeeExpert.getPretaxamount() != null){
            wrappers.eq(VExpertfeeExpert::getPretaxamount ,vExpertfeeExpert.getPretaxamount());
        }
        if (vExpertfeeExpert.getTaxamount() != null){
            wrappers.eq(VExpertfeeExpert::getTaxamount ,vExpertfeeExpert.getTaxamount());
        }
        if (vExpertfeeExpert.getTaxedamount() != null){
            wrappers.eq(VExpertfeeExpert::getTaxedamount ,vExpertfeeExpert.getTaxedamount());
        }
        if (StringUtils.isNotBlank(vExpertfeeExpert.getDonorname())){
            wrappers.like(VExpertfeeExpert::getDonorname ,vExpertfeeExpert.getDonorname());
        }
        if (StringUtils.isNotBlank(vExpertfeeExpert.getUnitname())){
            wrappers.like(VExpertfeeExpert::getUnitname ,vExpertfeeExpert.getUnitname());
        }
        return this.list(wrappers);
    }
}
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VExpertfeeTotalServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,54 @@
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.VExpertfeeTotal;
import com.ruoyi.project.mapper.VExpertfeeTotalMapper;
import com.ruoyi.project.service.IVExpertfeeTotalService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * VIEWService业务层处理
 *
 * @author ruoyi
 * @date 2024-03-18
 */
@Service
public class VExpertfeeTotalServiceImpl extends ServiceImpl<VExpertfeeTotalMapper, VExpertfeeTotal> implements IVExpertfeeTotalService {
    /**
     * æŸ¥è¯¢VIEW列表
     *
     * @param vExpertfeeTotal VIEW
     * @return VIEW
     */
    @Override
    public List<VExpertfeeTotal> queryList(VExpertfeeTotal vExpertfeeTotal) {
        LambdaQueryWrapper<VExpertfeeTotal> wrappers = Wrappers.lambdaQuery();
        if (vExpertfeeTotal.getFundTaxId() != null) {
            wrappers.eq(VExpertfeeTotal::getFundTaxId, vExpertfeeTotal.getFundTaxId());
        }
        if (StringUtils.isNotBlank(vExpertfeeTotal.getDeptmentname())) {
            wrappers.like(VExpertfeeTotal::getDeptmentname, vExpertfeeTotal.getDeptmentname());
        }
        if (vExpertfeeTotal.getDonormedicalcost() != null) {
            wrappers.eq(VExpertfeeTotal::getDonormedicalcost, vExpertfeeTotal.getDonormedicalcost());
        }
        if (vExpertfeeTotal.getDonorbodycost() != null) {
            wrappers.eq(VExpertfeeTotal::getDonorbodycost, vExpertfeeTotal.getDonorbodycost());
        }
        if (vExpertfeeTotal.getOrgangaincost() != null) {
            wrappers.eq(VExpertfeeTotal::getOrgangaincost, vExpertfeeTotal.getOrgangaincost());
        }
        if (vExpertfeeTotal.getOrganmedicalcost() != null) {
            wrappers.eq(VExpertfeeTotal::getOrganmedicalcost, vExpertfeeTotal.getOrganmedicalcost());
        }
        return this.list(wrappers);
    }
}
ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml
@@ -151,6 +151,8 @@
        <if test="infoid != null ">and InfoID = #{infoid}</if>
        <if test="donorno != null   and donorno != '' ">and DonorNo = #{donorno}</if>
        <if test="jxrq != null ">and jxrq = #{jxrq}</if>
        <if test="fundTaxId=-1 ">and fund_tax_id = null</if>
        <if test="fundTaxId!= null and fundTaxId!= -1 ">and fund_tax_id = #{fundTaxId}</if>
    </select>
    <select id="getInfoByInfoId" resultType="com.ruoyi.project.domain.ServiceFund">
ruoyi-project/src/main/resources/mapper/project/ServiceFundtaxMapper.xml
@@ -35,7 +35,7 @@
        <result property="officedirector" column="OfficeDirector"/>
        <result property="financedirector" column="FinanceDirector"/>
        <result property="financechecher" column="FinanceChecher"/>
        <result property="delFlag" column="del_flag"/>
        <result property="del_flag" column="del_flag"/>
        <result property="createBy" column="create_by"/>
        <result property="createTime" column="create_time"/>
        <result property="updateBy" column="update_by"/>
@@ -43,6 +43,8 @@
        <result property="uploadflag" column="uploadflag"/>
        <result property="uploadtime" column="uploadtime"/>
        <result property="updownremark" column="updownremark"/>
        <result property="istax" column="istax"/>
        <result property="taxMoney" column="tax_money"/>
    </resultMap>
    <sql id="selectServiceFundtaxVo">
@@ -83,6 +85,8 @@
               update_time,
               uploadflag,
               uploadtime,
               tax_money,
               istax,
               updownremark
        from service_fundtax
    </sql>
@@ -104,6 +108,7 @@
                '%')
            </if>
            <if test="pretaxamount != null ">and Pretaxamount = #{pretaxamount}</if>
            <if test="istax != null ">and istax = #{istax}</if>
            <if test="taxedamount != null ">and TaxedAmount = #{taxedamount}</if>
            <if test="taxamount != null ">and TaxAmount = #{taxamount}</if>
            <if test="medicalcost != null ">and MedicalCost = #{medicalcost}</if>
ruoyi-project/src/main/resources/mapper/project/VExpertfeeExpertMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,87 @@
<?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.VExpertfeeExpertMapper">
    <resultMap type="com.ruoyi.project.domain.VExpertfeeExpert" id="VExpertfeeExpertResult">
        <result property="fundTaxId" column="fund_tax_id"/>
        <result property="beneficiarytype" column="BeneficiaryType"/>
        <result property="belong" column="Belong"/>
        <result property="beneficiaryname" column="BeneficiaryName"/>
        <result property="idcardno" column="IDCardNo"/>
        <result property="depositbank" column="DepositBank"/>
        <result property="bankcardno" column="BankCardNo"/>
        <result property="pretaxamount" column="PretaxAmount"/>
        <result property="taxamount" column="TaxAmount"/>
        <result property="taxedamount" column="TaxedAmount"/>
        <result property="donorname" column="DonorName"/>
        <result property="unitname" column="UnitName"/>
    </resultMap>
    <sql id="selectVExpertfeeExpertVo">
        select fund_tax_id,
               BeneficiaryType,
               Belong,
               BeneficiaryName,
               IDCardNo,
               DepositBank,
               BankCardNo,
               PretaxAmount,
               TaxAmount,
               TaxedAmount,
               DonorName,
               UnitName
        from v_expertfee_expert
    </sql>
    <select id="selectVExpertfeeExpertList" parameterType="com.ruoyi.project.domain.VExpertfeeExpert"
            resultMap="VExpertfeeExpertResult">
        <include refid="selectVExpertfeeExpertVo"/>
        <where>
            <if test="fundTaxId != null ">and fund_tax_id = #{fundTaxId}</if>
            <if test="beneficiarytype != null ">and BeneficiaryType = #{beneficiarytype}</if>
            <if test="belong != null ">and Belong = #{belong}</if>
            <if test="beneficiaryname != null  and beneficiaryname != ''">and BeneficiaryName like concat('%',
                #{beneficiaryname}, '%')
            </if>
            <if test="idcardno != null  and idcardno != ''">and IDCardNo = #{idcardno}</if>
            <if test="depositbank != null  and depositbank != ''">and DepositBank = #{depositbank}</if>
            <if test="bankcardno != null  and bankcardno != ''">and BankCardNo = #{bankcardno}</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="donorname != null  and donorname != ''">and DonorName like concat('%', #{donorname}, '%')</if>
            <if test="unitname != null  and unitname != ''">and UnitName like concat('%', #{unitname}, '%')</if>
        </where>
    </select>
    <select id="selectVExpertfeeExpertListByFaxId" parameterType="Integer" resultMap="VExpertfeeExpertResult">
        SELECT beneficiarytype,
               beneficiaryname,
               idcardno,
               depositbank,
               bankcardno,
               pretaxamount,
               taxamount,
               taxedamount,
               donorname,
               unitname
        FROM v_expertfee_expert
        where fund_tax_id = #{taxId}
        UNION
        SELECT null              as beneficiarytype,
               "合计"              as beneficiaryname,
               null              as idcardno,
               null              as depositbank,
               null              as bankcardno,
               SUM(pretaxamount) as pretaxamount,
               SUM(taxamount)    as taxamount,
               SUM(taxedamount)  as taxedamount,
               null              as donorname,
               null              as unitname
        FROM v_expertfee_expert
        where fund_tax_id = #{taxId}
    </select>
</mapper>
ruoyi-project/src/main/resources/mapper/project/VExpertfeeTotalMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,71 @@
<?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.VExpertfeeTotalMapper">
    <resultMap type="com.ruoyi.project.domain.VExpertfeeTotal" id="VExpertfeeTotalResult">
        <result property="fundTaxId" column="fund_tax_id"/>
        <result property="deptmentno" column="DeptmentNo"/>
        <result property="deptmentname" column="DeptmentName"/>
        <result property="donormedicalcost" column="DonorMedicalCost"/>
        <result property="donorbodycost" column="DonorBodyCost"/>
        <result property="organgaincost" column="OrganGainCost"/>
        <result property="donorcost" column="DonorCost"/>
        <result property="organmedicalcost" column="OrganMedicalCost"/>
    </resultMap>
    <sql id="selectVExpertfeeTotalVo">
        select fund_tax_id,
               DeptmentName,
               DonorMedicalCost,
               DonorBodyCost,
               OrganGainCost,
               DonorCost,
               OrganMedicalCost
        from v_expertfee_total
    </sql>
    <select id="selectVExpertfeeTotalList" parameterType="com.ruoyi.project.domain.VExpertfeeTotal"
            resultMap="VExpertfeeTotalResult">
        <include refid="selectVExpertfeeTotalVo"/>
        <where>
            <if test="fundTaxId != null ">and fund_tax_id = #{fundTaxId}</if>
            <if test="deptmentname != null  and deptmentname != ''">and DeptmentName like concat('%', #{deptmentname},
                '%')
            </if>
            <if test="infoid != null ">and InfoID = #{infoid}</if>
            <if test="donorname != null  and donorname != ''">and DonorName like concat('%', #{donorname}, '%')</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>
        </where>
    </select>
    <select id="selectVExpertfeeTotalListByTaxId" parameterType="Integer"
            resultMap="VExpertfeeTotalResult">
        SELECT fund_tax_id,
               DeptmentNo,
               DeptmentName,
               DonorMedicalCost,
               DonorBodyCost,
               OrganGainCost,
               OrganMedicalCost,
               DonorCost
        FROM v_expertfee_total
        where fund_tax_id = #{taxId}
        UNION
        SELECT null                  as fund_tax_id,
               null                  as DeptmentNo,
               '合计'                  as DeptmentName,
               SUM(donormedicalcost) as DonorMedicalCost,
               SUM(donorbodycost)    as DonorBodyCost,
               SUM(organgaincost)    as OrganGainCost,
               SUM(organmedicalcost) as OrganMedicalCost,
               SUM(DonorCost)        as DonorCost
        FROM v_expertfee_total
        where fund_tax_id = #{taxId}
    </select>
</mapper>