yxh
2023-03-13 28c168589258f36b31fdb39add938e564804b3b1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
package com.ruoyi.project.service.impl;
 
import java.util.List;
 
import com.ruoyi.project.domain.ServiceFund;
import com.ruoyi.project.domain.ServiceReimbursement;
import com.ruoyi.project.domain.ServiceReimbursementdetail;
import com.ruoyi.project.mapper.ServiceFundMapper;
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.ServiceFunddetailMapper;
import com.ruoyi.project.domain.ServiceFunddetail;
import com.ruoyi.project.service.IServiceFunddetailService;
 
/**
 * 费用申请明细Service业务层处理
 * 
 * @author ruoyi
 * @date 2022-01-25
 */
@Service
public class ServiceFunddetailServiceImpl extends ServiceImpl<ServiceFunddetailMapper, ServiceFunddetail> implements IServiceFunddetailService 
{
 
    @Autowired
    ServiceFunddetailMapper serviceFunddetailMapper;
 
    @Autowired
    ServiceFundMapper serviceFundMapper;
 
 
    /**
     * 查询费用申请明细列表
     * 
     * @param serviceFunddetail 费用申请明细
     * @return 费用申请明细
     */
    @Override
    public List<ServiceFunddetail> queryList(ServiceFunddetail serviceFunddetail) {
        LambdaQueryWrapper<ServiceFunddetail> wrappers = Wrappers.lambdaQuery();
        if (StringUtils.isNotBlank(serviceFunddetail.getBeneficiaryname())){
            wrappers.like(ServiceFunddetail::getBeneficiaryname ,serviceFunddetail.getBeneficiaryname());
        }
        if (StringUtils.isNotBlank(serviceFunddetail.getUnitname())){
            wrappers.like(ServiceFunddetail::getUnitname ,serviceFunddetail.getUnitname());
        }
        if (StringUtils.isNotBlank(serviceFunddetail.getApplytype())){
            wrappers.eq(ServiceFunddetail::getApplytype ,serviceFunddetail.getApplytype());
        }
        if (StringUtils.isNotBlank(serviceFunddetail.getItemname())){
            wrappers.like(ServiceFunddetail::getItemname ,serviceFunddetail.getItemname());
        }
        if (StringUtils.isNotBlank(serviceFunddetail.getItemtype())){
            wrappers.eq(ServiceFunddetail::getItemtype ,serviceFunddetail.getItemtype());
        }
        if (StringUtils.isNotBlank(serviceFunddetail.getRecordstatus())){
            wrappers.eq(ServiceFunddetail::getRecordstatus ,serviceFunddetail.getRecordstatus());
        }
        if (StringUtils.isNotBlank(serviceFunddetail.getCreateBy())){
            wrappers.eq(ServiceFunddetail::getCreateBy ,serviceFunddetail.getCreateBy());
        }
        if (serviceFunddetail.getCreateTime() != null){
            wrappers.eq(ServiceFunddetail::getCreateTime ,serviceFunddetail.getCreateTime());
        }
        if (StringUtils.isNotBlank(serviceFunddetail.getUploadflag())){
            wrappers.eq(ServiceFunddetail::getUploadflag ,serviceFunddetail.getUploadflag());
        }
        if (serviceFunddetail.getUploadtime() != null){
            wrappers.eq(ServiceFunddetail::getUploadtime ,serviceFunddetail.getUploadtime());
        }
        return this.list(wrappers);
    }
 
    @Override
    public List<ServiceFunddetail> getAllDetailsByFDIDLW(Long id) {
        return serviceFunddetailMapper.getAllDetailsByFDIDLW(id);
    }
 
    @Override
    public List<ServiceFunddetail> getAllDetailsByFDIDSH(Long id) {
        return serviceFunddetailMapper.getAllDetailsByFDIDSH(id);
    }
 
    @Override
    public List<ServiceFunddetail> getAllDetailsByFDIDSS(Long id) {
        return serviceFunddetailMapper.getAllDetailsByFDIDSS(id);
    }
 
    @Override
    public List<ServiceFunddetail> getAllDetailsByFDIDYX(Long id) {
        return serviceFunddetailMapper.getAllDetailsByFDIDYX(id);
    }
 
    @Override
    public List<ServiceFunddetail> getAllDetailsByFDIDHZ(Long id) {
        return serviceFunddetailMapper.getAllDetailsByFDIDHZ(id);
    }
 
    @Override
    public List<ServiceFunddetail> getAllDetailsByFDIDLWF(Long id) {
        return serviceFunddetailMapper.getAllDetailsByFDIDLWF(id);
    }
 
    @Override
    public List<ServiceFunddetail> selectServiceFunddetailList(ServiceFunddetail serviceFunddetail) {
        return serviceFunddetailMapper.selectServiceFunddetailList(serviceFunddetail);
    }
 
    @Override
    public int deleteDetail(Long id) {
        ServiceFunddetail serviceFunddetail = serviceFunddetailMapper.selectById(id);
        Long fundid = serviceFunddetail.getFundid();
        ServiceFund serviceFund = serviceFundMapper.selectById(fundid);
 
        Double pretax = serviceFund.getPretaxcost();
        Double aftertax = serviceFund.getTaxedcost();
        pretax = pretax - serviceFunddetail.getAmount();
        aftertax = aftertax - serviceFunddetail.getTaxedamount();
        Double amount = pretax + aftertax;
 
        serviceFund.setPretaxcost(pretax);
        serviceFund.setTaxedcost(aftertax);
        serviceFund.setAmountrequested(amount);
        int updateAmount = serviceFundMapper.updateById(serviceFund);
 
        return serviceFunddetailMapper.deleteById(id);
    }
 
 
}