package com.ruoyi.project.service.impl;
|
|
import java.time.LocalDate;
|
import java.time.temporal.TemporalAdjusters;
|
import java.util.List;
|
|
import com.ruoyi.project.domain.*;
|
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.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> getDataBybeneficiaryNo(FunddetailReqVo funddetailReqVo) {
|
if (StringUtils.isEmpty(funddetailReqVo.getStarttime())) {
|
// 获取当月第一天日期
|
funddetailReqVo.setStarttime(LocalDate.now().with(TemporalAdjusters.firstDayOfMonth()).toString());
|
}
|
if (StringUtils.isEmpty(funddetailReqVo.getEndtime())) {
|
// 获取当月最后一天日期
|
funddetailReqVo.setEndtime(LocalDate.now().with(TemporalAdjusters.lastDayOfMonth()).toString());
|
}
|
List<ServiceFunddetail> dataBybeneficiaryNo = serviceFunddetailMapper.getDataBybeneficiaryNo(funddetailReqVo);
|
|
return dataBybeneficiaryNo;
|
}
|
|
@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);
|
}
|
|
|
}
|