yxh
2023-05-10 d3dfc07c93ae97cc6a301d9ccf2f8513a6a8ad85
Merge remote-tracking branch 'origin/master'

# Conflicts:
# ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementpayeeController.java
已修改9个文件
336 ■■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFunddetailShared.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementpayeeShared.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java 214 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
@@ -156,6 +156,11 @@
        return AjaxResult.success(serviceFundService.getFundId(infoid));
    }
    @GetMapping("/addFundSharedInfo/{id}")
    public AjaxResult addFundSharedInfo(@PathVariable("id") Long id){
        return AjaxResult.success(serviceFundService.addFundSharedInfo(id));
    }
    @GetMapping("/getFundDetail/{id}")
    public AjaxResult getFundDetail(@PathVariable("id") Long id){
        return AjaxResult.success(serviceFundService.getFundDetail(id));
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java
@@ -189,6 +189,7 @@
    /**
     * 往service_reimbursement_share,往service_reimbursementdetail_share,往service_reimbursementpyee_share新增备份数据
     *
     * @param id
     * @return
     */
@@ -210,9 +211,9 @@
    public AjaxResult add(@RequestBody ServiceReimbursement serviceReimbursement) {
        boolean b = serviceReimbursementService.save(serviceReimbursement);
        if (b) {
            addReiSharedDatd(serviceReimbursement, 1);
        }
//        if (b) {
//            addReiSharedDatd(serviceReimbursement, 1);
//        }
        Long id = serviceReimbursement.getId();
        return AjaxResult.success(id);
    }
@@ -226,8 +227,7 @@
        } else //modify
        {
            List<ServiceReimbursementShared> remlist = serviceReimbursementServiceShare.getRemShareInfoByRemId(serviceReimbursement.getId());
            if (remlist != null)
                remShare = remlist.get(0);
            if (remlist != null) remShare = remlist.get(0);
        }
        remShare.setUserno(serviceReimbursement.getUserno());
@@ -629,9 +629,9 @@
    @PostMapping("/editMoney")
    public AjaxResult editMoney(@RequestBody List<ReimbursementService> serviceReimbursement) {
        boolean b = serviceReimbursementService.updateById(null);
        if (b) {
            addReiSharedDatd(null, 2);
        }
//        if (b) {
//            addReiSharedDatd(null, 2);
//        }
        return toAjax(b);
    }
@@ -713,8 +713,7 @@
        //获取报销支付信息
        List<ServiceReimbursementpayee> reimbursementpayeeInfo = reimbursementpayeeService.getReimbursementpayeeInfo(serviceReimbursementEo);
        Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream()
                .collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype));
        Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream().collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype));
        List<Map<String, BigDecimal>> list = new ArrayList<>();
        StringBuffer FYXM1 = new StringBuffer();
        StringBuffer FYXM2 = new StringBuffer();
@@ -802,17 +801,20 @@
        } else {
            dataMap.put("FYXM3", "");
        }
        //   dataMap.put("JEXS", rdInfoByItem.get(0).getAmountrequested());
        dataMap.put("JEXS", allMoney);
        //double temp = 0;
        //temp = Math.round(serviceReimbursement.getAmountrequested() * 100) * 0.01d;
        // dataMap.put("JEDS", convert(rdInfoByItem.get(0).getAmountrequested().doubleValue()) + "整");
        dataMap.put("JEDS", convert(allMoney.doubleValue()) + "整");
        String remark = "";
        for (ServiceReimbursementpayee serviceReimbursementpayee : reimbursementpayeeInfo) {
            remark += "<w:br/> "+PersonType.getInfoByCode(serviceReimbursementpayee.getPersontype())+ "(" + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount();
            remark += " 元; " + serviceReimbursementpayee.getBankname() + ": " + serviceReimbursementpayee.getBankcardno() + ") 备注: " + serviceReimbursementpayee.getRemark();
            remark += "<w:br/> " + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount();
            remark += " 元; ";
            if (!StringUtils.isEmpty(serviceReimbursementpayee.getBankname())) {
                remark += serviceReimbursementpayee.getBankname() + " ( " + serviceReimbursementpayee.getBankcardno() + ")";
            }
            remark += " 备注: " + serviceReimbursementpayee.getPersontype();
            if (!StringUtils.isEmpty(serviceReimbursementpayee.getRemark())) {
                remark += serviceReimbursementpayee.getRemark();
            }
        }
        dataMap.put("BXBZ", remark);
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java
@@ -4,8 +4,6 @@
import java.util.Arrays;
import java.util.List;
import com.ruoyi.common.utils.bean.DtoConversionUtils;
import com.ruoyi.project.domain.ServiceReimbursementdetailShared;
import com.ruoyi.project.service.IServiceReimbursementdetailSharedService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -31,15 +29,14 @@
/**
 * 报销申请明细Controller
 *
 *
 * @author ruoyi
 * @date 2022-01-24
 */
@Api("报销申请明细")
@RestController
@RequestMapping("/project/reimbursementdetail")
public class ServiceReimbursementdetailController extends BaseController
{
public class ServiceReimbursementdetailController extends BaseController {
    @Autowired
    private IServiceReimbursementdetailService serviceReimbursementdetailService;
    @Autowired
@@ -51,8 +48,7 @@
    @ApiOperation("查询报销申请明细列表")
    //@PreAuthorize("@ss.hasPermi('project:reimbursementdetail:list')")
    @GetMapping("/list")
    public TableDataInfo list(ServiceReimbursementdetail serviceReimbursementdetail)
    {
    public TableDataInfo list(ServiceReimbursementdetail serviceReimbursementdetail) {
        startPage();
        //List<ServiceReimbursementdetail> list = serviceReimbursementdetailService.queryList(serviceReimbursementdetail);
        List<ServiceReimbursementdetail> list = serviceReimbursementdetailService.selectServiceReimbursementdetailList(serviceReimbursementdetail);
@@ -66,8 +62,7 @@
    //@PreAuthorize("@ss.hasPermi('project:reimbursementdetail:export')")
    @Log(title = "报销申请明细", businessType = BusinessType.EXPORT)
    @GetMapping("/export")
    public AjaxResult export(ServiceReimbursementdetail serviceReimbursementdetail)
    {
    public AjaxResult export(ServiceReimbursementdetail serviceReimbursementdetail) {
        List<ServiceReimbursementdetail> list = serviceReimbursementdetailService.queryList(serviceReimbursementdetail);
        ExcelUtil<ServiceReimbursementdetail> util = new ExcelUtil<ServiceReimbursementdetail>(ServiceReimbursementdetail.class);
        return util.exportExcel(list, "报销申请明细数据");
@@ -75,9 +70,9 @@
    @DeleteMapping("/deleteByRBId/{rbid}")
    public AjaxResult removeAllDetail(@PathVariable("rbid") Long rbid){
    public AjaxResult removeAllDetail(@PathVariable("rbid") Long rbid) {
        List<Long> ids = serviceReimbursementdetailService.getAllIds(rbid);
        Long[] arr = (Long[])ids.toArray(new Long[ids.size()]);
        Long[] arr = (Long[]) ids.toArray(new Long[ids.size()]);
        return remove(arr);
    }
@@ -88,8 +83,7 @@
    @ApiOperation("获取报销申请明细详细信息")
    //@PreAuthorize("@ss.hasPermi('project:reimbursementdetail:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id)
    {
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return AjaxResult.success(serviceReimbursementdetailService.getById(id));
    }
@@ -101,8 +95,7 @@
    @Log(title = "报销申请明细", businessType = BusinessType.INSERT)
    @PostMapping
    @RepeatSubmit
    public AjaxResult add(@RequestBody ServiceReimbursementdetail serviceReimbursementdetail)
    {
    public AjaxResult add(@RequestBody ServiceReimbursementdetail serviceReimbursementdetail) {
        return toAjax(serviceReimbursementdetailService.save(serviceReimbursementdetail));
    }
@@ -113,13 +106,10 @@
    //@PreAuthorize("@ss.hasPermi('project:reimbursementdetail:edit')")
    @Log(title = "修改申请明细", businessType = BusinessType.UPDATE)
    @PostMapping("/updateRDlList")
    public AjaxResult updateRDlList(@RequestBody List<ServiceReimbursementdetail> serviceReimbursementdetails)
    {
        for (ServiceReimbursementdetail serviceReimbursementdetail:serviceReimbursementdetails) {
    public AjaxResult updateRDlList(@RequestBody List<ServiceReimbursementdetail> serviceReimbursementdetails) {
        for (ServiceReimbursementdetail serviceReimbursementdetail : serviceReimbursementdetails) {
            serviceReimbursementdetailService.saveOrUpdate(serviceReimbursementdetail);
            //新增或修改报销申请明细分享表
            ServiceReimbursementdetailShared serviceReimbursementdetailShared = DtoConversionUtils.sourceToTarget(serviceReimbursementdetail, ServiceReimbursementdetailShared.class);
            detailSharedService.saveOrUpdate(serviceReimbursementdetailShared);
        }
        return null;
    }
@@ -132,8 +122,7 @@
    @Log(title = "报销申请明细", businessType = BusinessType.UPDATE)
    @PutMapping
    //@RepeatSubmit
    public AjaxResult edit(@RequestBody ServiceReimbursementdetail serviceReimbursementdetail)
    {
    public AjaxResult edit(@RequestBody ServiceReimbursementdetail serviceReimbursementdetail) {
        return toAjax(serviceReimbursementdetailService.updateById(serviceReimbursementdetail));
    }
@@ -144,8 +133,7 @@
    //@PreAuthorize("@ss.hasPermi('project:reimbursementdetail:remove')")
    @Log(title = "报销申请明细", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids)
    {
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(serviceReimbursementdetailService.removeByIds(Arrays.asList(ids)));
    }
@@ -156,8 +144,7 @@
    @ApiOperation("删除报销申请明细并修改金额")
    @Log(title = "报销申请明细", businessType = BusinessType.DELETE)
    @DeleteMapping("/deleteDetail/{id}")
    public AjaxResult deleteDetail(@PathVariable Long id)
    {
    public AjaxResult deleteDetail(@PathVariable Long id) {
        return AjaxResult.success(serviceReimbursementdetailService.deleteDetail(id));
    }
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFunddetailShared.java
@@ -34,6 +34,11 @@
    @Excel(name = "资金申请主表ID")
    private Long fundid;
    /** 对应的service_funddetail表的ID */
    @ApiModelProperty("对应的service_funddetail表的ID")
    @Excel(name = "对应的service_funddetail表的ID")
    private Long fdid;
    /** 顺序号 */
    @ApiModelProperty("顺序号")
    @Excel(name = "顺序号")
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java
@@ -34,6 +34,11 @@
    @Excel(name = "资金申请主表ID")
    private Long rbid;
    /** 差旅报销单明细ID */
    @ApiModelProperty("差旅报销单明细ID")
    @Excel(name = "差旅报销单明细ID")
    private Long rdid;
    /** 人员类别 */
    @ApiModelProperty("人员类别")
    @Excel(name = "人员类别")
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementpayeeShared.java
@@ -59,6 +59,11 @@
    @Excel(name = "开户银行")
    private String bankname;
    /** 备注 */
    @ApiModelProperty("备注")
    @Excel(name = "备注")
    private String remark;
    /** 卡号 */
    @ApiModelProperty("卡号")
    @Excel(name = "卡号")
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java
@@ -5,6 +5,7 @@
import com.ruoyi.project.domain.ServiceFund;
import com.ruoyi.project.domain.ServiceFunddetail;
import com.ruoyi.project.domain.vo.*;
import org.springframework.web.bind.annotation.PathVariable;
/**
 * 费用申请主Service接口
@@ -29,6 +30,13 @@
    Long getFundId(Long infoid);
    /**
     * 往分享表中添加数据
     * @param id
     * @return
     */
    Boolean addFundSharedInfo(Long id);
    List<ServiceFund> selectServiceFundList(ServiceFund serviceFund);
    List<ServiceFunddetail> getFundDetail(Long id);
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -1,34 +1,33 @@
package com.ruoyi.project.service.impl;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.ruoyi.project.domain.BaseExpertfeetype;
import com.ruoyi.project.domain.ServiceFunddetail;
import com.ruoyi.project.domain.ServiceReimbursement;
import com.ruoyi.common.utils.bean.DtoConversionUtils;
import com.ruoyi.project.domain.*;
import com.ruoyi.project.domain.vo.*;
import com.ruoyi.project.mapper.BaseExpertfeetypeMapper;
import com.ruoyi.project.mapper.ServiceFunddetailMapper;
import com.ruoyi.project.mapper.ServiceReimbursementMapper;
import com.ruoyi.project.mapper.*;
import com.ruoyi.project.service.IServiceFundSharedService;
import com.ruoyi.project.service.IServiceFunddetailSharedService;
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.mapper.ServiceFundMapper;
import com.ruoyi.project.domain.ServiceFund;
import com.ruoyi.project.service.IServiceFundService;
import org.springframework.transaction.annotation.Transactional;
/**
 * 费用申请主Service业务层处理
 *
 *
 * @author ruoyi
 * @date 2022-01-24
 */
@Service
public class ServiceFundServiceImpl extends ServiceImpl<ServiceFundMapper, ServiceFund> implements IServiceFundService
{
public class ServiceFundServiceImpl extends ServiceImpl<ServiceFundMapper, ServiceFund> implements IServiceFundService {
    @Autowired
    ServiceFundMapper serviceFundMapper;
@@ -41,40 +40,51 @@
    @Autowired
    ServiceReimbursementMapper serviceReimbursementMapper;
    @Autowired
    IServiceFundSharedService sharedService;
    @Autowired
    ServiceFundSharedMapper serviceFundSharedMapper;
    @Autowired
    ServiceFunddetailSharedMapper sharedMapper;
    @Autowired
    IServiceFunddetailSharedService detailSharedService;
    /**
     * 查询费用申请主列表
     *
     *
     * @param serviceFund 费用申请主
     * @return 费用申请主
     */
    @Override
    public List<ServiceFund> queryList(ServiceFund serviceFund) {
        LambdaQueryWrapper<ServiceFund> wrappers = Wrappers.lambdaQuery();
        if (StringUtils.isNotBlank(serviceFund.getDonorno())){
            wrappers.eq(ServiceFund::getDonorno ,serviceFund.getDonorno());
        if (StringUtils.isNotBlank(serviceFund.getDonorno())) {
            wrappers.eq(ServiceFund::getDonorno, serviceFund.getDonorno());
        }
        if (StringUtils.isNotBlank(serviceFund.getUserno())){
            wrappers.eq(ServiceFund::getUserno ,serviceFund.getUserno());
        if (StringUtils.isNotBlank(serviceFund.getUserno())) {
            wrappers.eq(ServiceFund::getUserno, serviceFund.getUserno());
        }
        if (StringUtils.isNotBlank(serviceFund.getUsername())){
            wrappers.like(ServiceFund::getUsername ,serviceFund.getUsername());
        if (StringUtils.isNotBlank(serviceFund.getUsername())) {
            wrappers.like(ServiceFund::getUsername, serviceFund.getUsername());
        }
        if (StringUtils.isNotBlank(serviceFund.getApplytype())){
            wrappers.eq(ServiceFund::getApplytype ,serviceFund.getApplytype());
        if (StringUtils.isNotBlank(serviceFund.getApplytype())) {
            wrappers.eq(ServiceFund::getApplytype, serviceFund.getApplytype());
        }
        if (StringUtils.isNotBlank(serviceFund.getDeptmentname())){
            wrappers.like(ServiceFund::getDeptmentname ,serviceFund.getDeptmentname());
        if (StringUtils.isNotBlank(serviceFund.getDeptmentname())) {
            wrappers.like(ServiceFund::getDeptmentname, serviceFund.getDeptmentname());
        }
        if (serviceFund.getRecordstatus()!= null){
            wrappers.eq(ServiceFund::getRecordstatus ,serviceFund.getRecordstatus());
        if (serviceFund.getRecordstatus() != null) {
            wrappers.eq(ServiceFund::getRecordstatus, serviceFund.getRecordstatus());
        }
        if (StringUtils.isNotBlank(serviceFund.getUploadflag())){
            wrappers.eq(ServiceFund::getUploadflag ,serviceFund.getUploadflag());
        if (StringUtils.isNotBlank(serviceFund.getUploadflag())) {
            wrappers.eq(ServiceFund::getUploadflag, serviceFund.getUploadflag());
        }
        if (serviceFund.getUploadtime() != null){
            wrappers.eq(ServiceFund::getUploadtime ,serviceFund.getUploadtime());
        if (serviceFund.getUploadtime() != null) {
            wrappers.eq(ServiceFund::getUploadtime, serviceFund.getUploadtime());
        }
        return this.list(wrappers);
    }
@@ -85,10 +95,34 @@
    }
    @Override
    public Long getFundId(Long infoid) {
        return serviceFundMapper.getFundId(infoid);
    }
    @Override
    @Transactional
    public Boolean addFundSharedInfo(Long id) {
        ServiceFund serviceFund = serviceFundMapper.selectById(id);
        ServiceFundShared serviceFundShared = DtoConversionUtils.sourceToTarget(serviceFund, ServiceFundShared.class);
        serviceFundShared.setSerfunid(serviceFundShared.getId());
        serviceFundShared.setId(null);
        sharedService.save(serviceFundShared);
        //fundId为主表的ID
        Map<String, Object> columnMap = new HashMap<>();
        columnMap.put("fundid", id);
        List<ServiceFunddetail> serviceFunddetails = serviceFunddetailMapper.selectByMap(columnMap);
        //将查出的数据放到ServiceFunddetailShared中
        List<ServiceFunddetailShared> serviceFunddetailShareds = DtoConversionUtils.sourceToTarget(serviceFunddetails, ServiceFunddetailShared.class);
        for (int i = 0; i < serviceFunddetails.size(); i++) {
            serviceFunddetailShareds.get(i).setFdid(serviceFunddetailShareds.get(i).getId());
            //fundID为service_fund_shared表的主键ID
            serviceFunddetailShareds.get(i).setFundid(serviceFundShared.getId());
            serviceFunddetailShareds.get(i).setId(null);
        }
        boolean result = detailSharedService.saveBatch(serviceFunddetailShareds);
        return result;
    }
    @Override
@@ -133,9 +167,9 @@
        List<ServiceFund> serviceFunds = serviceFundMapper.getInfoByInfoId(infoid);
        List<ServiceFunddetail> fd = new ArrayList<>();
        for(ServiceFund s : serviceFunds){
        for (ServiceFund s : serviceFunds) {
            List<ServiceFunddetail> l = serviceFunddetailMapper.getAllDetailsByFDIDHZ(s.getId());
            for(ServiceFunddetail df : l){
            for (ServiceFunddetail df : l) {
                fd.add(df);
            }
        }
@@ -251,225 +285,223 @@
        double sh52 = 0;
        double shhj = 0;
        for(ServiceReimbursement sr : serviceReimbursements1){
        for (ServiceReimbursement sr : serviceReimbursements1) {
            f28 += sr.getAmountrequested();
            sh28 += sr.getAmountrequested();
        }
        for(ServiceReimbursement sr : serviceReimbursements2){
        for (ServiceReimbursement sr : serviceReimbursements2) {
            f51 += sr.getAmountrequested();
            sh51 += sr.getAmountrequested();
        }
        for(ServiceFunddetail s : fd){
            if(s.getItemid() == 1){
        for (ServiceFunddetail s : fd) {
            if (s.getItemid() == 1) {
                f1 += s.getAmount();
                sh1 += s.getTaxedamount();
            }
            if(s.getItemid() == 2){
            if (s.getItemid() == 2) {
                f2 += s.getAmount();
                sh2 += s.getTaxedamount();
            }
            if(s.getItemid() == 3){
            if (s.getItemid() == 3) {
                f3 += s.getAmount();
                sh3 += s.getTaxedamount();
            }
            if(s.getItemid() == 4){
            if (s.getItemid() == 4) {
                f4 += s.getAmount();
                sh4 += s.getTaxedamount();
            }
            if(s.getItemid() == 5){
            if (s.getItemid() == 5) {
                f5 += s.getAmount();
                sh5 += s.getTaxedamount();
            }
            if(s.getItemid() == 6){
            if (s.getItemid() == 6) {
                f6 += s.getAmount();
                sh6 += s.getTaxedamount();
            }
            if(s.getItemid() == 7){
            if (s.getItemid() == 7) {
                f7 += s.getAmount();
                sh7 += s.getTaxedamount();
            }
            if(s.getItemid() == 8){
            if (s.getItemid() == 8) {
                f8 += s.getAmount();
                sh8 += s.getTaxedamount();
            }
            if(s.getItemid() == 9){
            if (s.getItemid() == 9) {
                f9 += s.getAmount();
                sh9 += s.getTaxedamount();
            }
            if(s.getItemid() == 10){
            if (s.getItemid() == 10) {
                f10 += s.getAmount();
                sh10 += s.getTaxedamount();
            }
            if(s.getItemid() == 11){
            if (s.getItemid() == 11) {
                f11 += s.getAmount();
                sh11 += s.getTaxedamount();
            }
            if(s.getItemid() == 12){
            if (s.getItemid() == 12) {
                f12 += s.getAmount();
                sh12 += s.getTaxedamount();
            }
            if(s.getItemid() == 13){
            if (s.getItemid() == 13) {
                f13 += s.getAmount();
                sh13 += s.getTaxedamount();
            }
            if(s.getItemid() == 14){
            if (s.getItemid() == 14) {
                f14 += s.getAmount();
                sh14 += s.getTaxedamount();
            }
            if(s.getItemid() == 15){
            if (s.getItemid() == 15) {
                f15 += s.getAmount();
                sh15 += s.getTaxedamount();
            }
            if(s.getItemid() == 16){
            if (s.getItemid() == 16) {
                f16 += s.getAmount();
                sh16 += s.getTaxedamount();
            }
            if(s.getItemid() == 17){
            if (s.getItemid() == 17) {
                f17 += s.getAmount();
                sh17 += s.getTaxedamount();
            }
            if(s.getItemid() == 18){
            if (s.getItemid() == 18) {
                f18 += s.getAmount();
                sh18 += s.getTaxedamount();
            }
            if(s.getItemid() == 19){
            if (s.getItemid() == 19) {
                f19 += s.getAmount();
                sh19 += s.getTaxedamount();
            }
            if(s.getItemid() == 20){
            if (s.getItemid() == 20) {
                f20 += s.getAmount();
                sh20 += s.getTaxedamount();
            }
            if(s.getItemid() == 21){
            if (s.getItemid() == 21) {
                f21 += s.getAmount();
                sh21 += s.getTaxedamount();
            }
            if(s.getItemid() == 22){
            if (s.getItemid() == 22) {
                f22 += s.getAmount();
                sh22 += s.getTaxedamount();
            }
            if(s.getItemid() == 23){
            if (s.getItemid() == 23) {
                f23 += s.getAmount();
                sh23 += s.getTaxedamount();
            }
            if(s.getItemid() == 24){
            if (s.getItemid() == 24) {
                f24 += s.getAmount();
                sh24 += s.getTaxedamount();
            }
            if(s.getItemid() == 25){
            if (s.getItemid() == 25) {
                f25 += s.getAmount();
                sh25 += s.getTaxedamount();
            }
            if(s.getItemid() == 26){
            if (s.getItemid() == 26) {
                f26 += s.getAmount();
                sh26 += s.getTaxedamount();
            }
            if(s.getItemid() == 27){
            if (s.getItemid() == 27) {
                f27 += s.getAmount();
                sh27 += s.getTaxedamount();
            }
            if(s.getItemid() == 29){
            if (s.getItemid() == 29) {
                f29 += s.getAmount();
                sh29 += s.getTaxedamount();
            }
            if(s.getItemid() == 30){
            if (s.getItemid() == 30) {
                f30 += s.getAmount();
                sh30 += s.getTaxedamount();
            }
            if(s.getItemid() == 31){
            if (s.getItemid() == 31) {
                f31 += s.getAmount();
                sh31 += s.getTaxedamount();
            }
            if(s.getItemid() == 32){
            if (s.getItemid() == 32) {
                f32 += s.getAmount();
                sh32 += s.getTaxedamount();
            }
            if(s.getItemid() == 33){
            if (s.getItemid() == 33) {
                f33 += s.getAmount();
                sh33 += s.getTaxedamount();
            }
            if(s.getItemid() == 34){
            if (s.getItemid() == 34) {
                f34 += s.getAmount();
                sh34 += s.getTaxedamount();
            }
            if(s.getItemid() == 35){
            if (s.getItemid() == 35) {
                f35 += s.getAmount();
                sh35 += s.getTaxedamount();
            }
            if(s.getItemid() == 36){
            if (s.getItemid() == 36) {
                f36 += s.getAmount();
                sh36 += s.getTaxedamount();
            }
            if(s.getItemid() == 37){
            if (s.getItemid() == 37) {
                f37 += s.getAmount();
                sh37 += s.getTaxedamount();
            }
            if(s.getItemid() == 38){
            if (s.getItemid() == 38) {
                f38 += s.getAmount();
                sh38 += s.getTaxedamount();
            }
            if(s.getItemid() == 39){
            if (s.getItemid() == 39) {
                f39 += s.getAmount();
                sh39 += s.getTaxedamount();
            }
            if(s.getItemid() == 40){
            if (s.getItemid() == 40) {
                f40 += s.getAmount();
                sh40 += s.getTaxedamount();
            }
            if(s.getItemid() == 41){
            if (s.getItemid() == 41) {
                f41 += s.getAmount();
                sh41 += s.getTaxedamount();
            }
            if(s.getItemid() == 42){
            if (s.getItemid() == 42) {
                f42 += s.getAmount();
                sh42 += s.getTaxedamount();
            }
            if(s.getItemid() == 43){
            if (s.getItemid() == 43) {
                f43 += s.getAmount();
                sh43 += s.getTaxedamount();
            }
            if(s.getItemid() == 44){
            if (s.getItemid() == 44) {
                f44 += s.getAmount();
                sh44 += s.getTaxedamount();
            }
            if(s.getItemid() == 45){
            if (s.getItemid() == 45) {
                f45 += s.getAmount();
                sh45 += s.getTaxedamount();
            }
            if(s.getItemid() == 46){
            if (s.getItemid() == 46) {
                f46 += s.getAmount();
                sh46 += s.getTaxedamount();
            }
            if(s.getItemid() == 47){
            if (s.getItemid() == 47) {
                f47 += s.getAmount();
                sh47 += s.getTaxedamount();
            }
            if(s.getItemid() == 48){
            if (s.getItemid() == 48) {
                f48 += s.getAmount();
                sh48 += s.getTaxedamount();
            }
            if(s.getItemid() == 49){
            if (s.getItemid() == 49) {
                f49 += s.getAmount();
                sh49 += s.getTaxedamount();
            }
            if(s.getItemid() == 50){
            if (s.getItemid() == 50) {
                f50 += s.getAmount();
                sh50 += s.getTaxedamount();
            }
            if(s.getItemid() == 52){
            if (s.getItemid() == 52) {
                f52 += s.getAmount();
                sh52 += s.getTaxedamount();
            }
        }
        hj = f1 + f2 + f3 + f4 + f5 + f6 + f7 + f8 + f9 + f10 + f11 + f12 + f13 + f14 + f15 + f16 + f17 + f18 + f19 + f20 + f21 + f22 + f23 + f24 + f25 + f26 + f27 + f28 + f29 + f30 + f31 + f32 + f33 + f34 + f35
                + f36 + f37 + f38 + f39 + f40 + f41 + f42 + f43 + f44 + f45 + f46 + f47 + f48 + f49 + f50 + f51 + f52;
        hj = f1 + f2 + f3 + f4 + f5 + f6 + f7 + f8 + f9 + f10 + f11 + f12 + f13 + f14 + f15 + f16 + f17 + f18 + f19 + f20 + f21 + f22 + f23 + f24 + f25 + f26 + f27 + f28 + f29 + f30 + f31 + f32 + f33 + f34 + f35 + f36 + f37 + f38 + f39 + f40 + f41 + f42 + f43 + f44 + f45 + f46 + f47 + f48 + f49 + f50 + f51 + f52;
        shhj = sh1 + sh2 + sh3 + sh4 + sh5 + sh6 + sh7 + sh8 + sh9 + sh10 + sh11 + sh12 + sh13 + sh14 + sh15 + sh16 + sh17 + sh18 + sh19 + sh20 + sh21 + sh22 + sh23 + sh24 + sh25 + sh26 + sh27 + sh28 + sh29 + sh30 + sh31 + sh32 + sh33 + sh34 + sh35
                + sh36 + sh37 + sh38 + sh39 + sh40 + sh41 + sh42 + sh43 + sh44 + sh45 + sh46 + sh47 + sh48 + sh49 + sh50 + sh51 + sh52;
        shhj = sh1 + sh2 + sh3 + sh4 + sh5 + sh6 + sh7 + sh8 + sh9 + sh10 + sh11 + sh12 + sh13 + sh14 + sh15 + sh16 + sh17 + sh18 + sh19 + sh20 + sh21 + sh22 + sh23 + sh24 + sh25 + sh26 + sh27 + sh28 + sh29 + sh30 + sh31 + sh32 + sh33 + sh34 + sh35 + sh36 + sh37 + sh38 + sh39 + sh40 + sh41 + sh42 + sh43 + sh44 + sh45 + sh46 + sh47 + sh48 + sh49 + sh50 + sh51 + sh52;
        fdvo.setFy1(f1);
        fdvo.setFy2(f2);
@@ -588,8 +620,8 @@
    }
    @Override
    public List<SpFinancialExpensesFundOut> getListBypower(String PAUSERNO, Integer PAFUNDTYPE, String PAAPPLICANT, String PAAPPLICATIONBEGTIME, String PAAPPLICATIONENDTIME, String PADEPARTMENT,Integer CHECKFLAG,Integer APPLYTYPE) {
        return serviceFundMapper.getListBypower(PAUSERNO,  PAFUNDTYPE,  PAAPPLICANT,  PAAPPLICATIONBEGTIME,  PAAPPLICATIONENDTIME,  PADEPARTMENT,CHECKFLAG,APPLYTYPE);
    public List<SpFinancialExpensesFundOut> getListBypower(String PAUSERNO, Integer PAFUNDTYPE, String PAAPPLICANT, String PAAPPLICATIONBEGTIME, String PAAPPLICATIONENDTIME, String PADEPARTMENT, Integer CHECKFLAG, Integer APPLYTYPE) {
        return serviceFundMapper.getListBypower(PAUSERNO, PAFUNDTYPE, PAAPPLICANT, PAAPPLICATIONBEGTIME, PAAPPLICATIONENDTIME, PADEPARTMENT, CHECKFLAG, APPLYTYPE);
    }
    @Override
@@ -597,7 +629,7 @@
        List<ServiceFund> serviceFunds = serviceFundMapper.getInfoByInfoId(infoid);
        int count = 0;
        for(ServiceFund s : serviceFunds){
        for (ServiceFund s : serviceFunds) {
            long fundid = s.getId();
            int l = serviceFunddetailMapper.countItem(fundid, itemid);
            count += l;
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
@@ -20,9 +20,11 @@
import java.util.ArrayList;
import java.util.Map;
import java.util.stream.Collectors;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.project.service.IServiceReimbursementService;
import org.springframework.transaction.annotation.Transactional;
/**
 * 报销申请Service业务层处理
@@ -112,6 +114,7 @@
    }
    @Override
    @Transactional
    public Boolean addSharedData(Long id) {
        ServiceReimbursement serviceReimbursement = serviceReimbursementMapper.selectById(id);
        Map<String, Object> columnMap = new HashMap<>();
@@ -122,11 +125,27 @@
        List<ServiceReimbursementpayee> serviceReimbursementpayees = reimbursementpayeeMapper.selectByMap(columnMap);
        //数据组装
        ServiceReimbursementShared serviceReimbursementShared = DtoConversionUtils.sourceToTarget(serviceReimbursement, ServiceReimbursementShared.class);
        serviceReimbursementShared.setReimid(id);
        serviceReimbursementShared.setId(null);
        List<ServiceReimbursementdetailShared> serviceReimbursementdetailShareds = DtoConversionUtils.sourceToTarget(details, ServiceReimbursementdetailShared.class);
        List<ServiceReimbursementpayeeShared> serviceReimbursementpayeeShareds = DtoConversionUtils.sourceToTarget(serviceReimbursementpayees, ServiceReimbursementpayeeShared.class);
        //将组装好的数据插入到分享表中
        sharedService.save(serviceReimbursementShared);
        //将serviceReimbursementdetail表里的id赋值给Rdid; 将serviceReimbursementShared里的ID赋值给RBID,并将serviceReimbursementdetailShared表里的id置空,由数据库重新生成
        for (int i = 0; i < details.size(); i++) {
            serviceReimbursementdetailShareds.get(i).setRdid(serviceReimbursementdetailShareds.get(i).getId());
            serviceReimbursementdetailShareds.get(i).setRbid(serviceReimbursementShared.getId());
            serviceReimbursementdetailShareds.get(i).setId(null);
        }
        detailSharedService.saveBatch(serviceReimbursementdetailShareds);
        //将serviceReimbursementdetail表里的id赋值给Rpid; 将serviceReimbursementShared里的ID赋值给RBID,并将serviceReimbursementpayeeShared表里的id置空,由数据库重新生成
        for (int i = 0; i < serviceReimbursementpayees.size(); i++) {
            serviceReimbursementpayeeShareds.get(i).setRpid(serviceReimbursementpayeeShareds.get(i).getId());
            serviceReimbursementpayeeShareds.get(i).setRbid(serviceReimbursementShared.getId());
            serviceReimbursementpayeeShareds.get(i).setId(null);
        }
        payeeSharedService.saveBatch(serviceReimbursementpayeeShareds);
        return true;