package com.ruoyi.project.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.constant.HttpStatus; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.project.domain.ServiceDonorchargeorgan; import com.ruoyi.project.domain.ServiceDonorpayment; import com.ruoyi.project.mapper.ServiceDonorchargeorganMapper; import com.ruoyi.project.mapper.ServiceDonorpaymentMapper; import com.ruoyi.project.service.IServiceDonorpaymentService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.*; /** * 费用收款单Service业务层处理 * * @author ruoyi * @date 2024-02-27 */ @Service public class ServiceDonorpaymentServiceImpl extends ServiceImpl implements IServiceDonorpaymentService { @Autowired private ServiceDonorchargeorganMapper serviceDonorchargeorganMapper; /** * 查询费用收款单列表 * * @param serviceDonorpayment 费用收款单 * @return 费用收款单 */ @Override public List queryList(ServiceDonorpayment serviceDonorpayment) { LambdaQueryWrapper wrappers = Wrappers.lambdaQuery(); if (StringUtils.isNotBlank(serviceDonorpayment.getPaymentno())) { wrappers.eq(ServiceDonorpayment::getPaymentno, serviceDonorpayment.getPaymentno()); } if (serviceDonorpayment.getPaymenttime() != null) { wrappers.eq(ServiceDonorpayment::getPaymenttime, serviceDonorpayment.getPaymenttime()); } if (serviceDonorpayment.getId() != null) { wrappers.eq(ServiceDonorpayment::getId, serviceDonorpayment.getId()); } if (StringUtils.isNotBlank(serviceDonorpayment.getPaystatus())) { wrappers.eq(ServiceDonorpayment::getPaystatus, serviceDonorpayment.getPaystatus()); } if (StringUtils.isNotBlank(serviceDonorpayment.getContactinfo())) { wrappers.eq(ServiceDonorpayment::getContactinfo, serviceDonorpayment.getContactinfo()); } if (StringUtils.isNotBlank(serviceDonorpayment.getHospitalname())) { wrappers.eq(ServiceDonorpayment::getHospitalname, serviceDonorpayment.getHospitalname()); } if (StringUtils.isNotBlank(serviceDonorpayment.getUserName())) { wrappers.eq(ServiceDonorpayment::getUserName, serviceDonorpayment.getUserName()); } if (StringUtils.isNotBlank(serviceDonorpayment.getUserNo())) { wrappers.eq(ServiceDonorpayment::getUserNo, serviceDonorpayment.getUserNo()); } if (StringUtils.isNotBlank(serviceDonorpayment.getHospitalno())) { wrappers.eq(ServiceDonorpayment::getHospitalno, serviceDonorpayment.getHospitalno()); } if (StringUtils.isNotBlank(serviceDonorpayment.getHospitalcontactinfo())) { wrappers.eq(ServiceDonorpayment::getHospitalcontactinfo, serviceDonorpayment.getHospitalcontactinfo()); } if (serviceDonorpayment.getReceivableamount() != null) { wrappers.eq(ServiceDonorpayment::getReceivableamount, serviceDonorpayment.getReceivableamount()); } if (StringUtils.isNotBlank(serviceDonorpayment.getBeneficiary())) { wrappers.eq(ServiceDonorpayment::getBeneficiary, serviceDonorpayment.getBeneficiary()); } if (StringUtils.isNotBlank(serviceDonorpayment.getBeneficiarybank())) { wrappers.eq(ServiceDonorpayment::getBeneficiarybank, serviceDonorpayment.getBeneficiarybank()); } if (StringUtils.isNotBlank(serviceDonorpayment.getBeneficiaryaccount())) { wrappers.eq(ServiceDonorpayment::getBeneficiaryaccount, serviceDonorpayment.getBeneficiaryaccount()); } if (serviceDonorpayment.getReceivedamount() != null) { wrappers.eq(ServiceDonorpayment::getReceivedamount, serviceDonorpayment.getReceivedamount()); } if (serviceDonorpayment.getReceivedtime() != null) { wrappers.eq(ServiceDonorpayment::getReceivedtime, serviceDonorpayment.getReceivedtime()); } return this.list(wrappers); } @Override public void getDataById(Map dataMap, Long id) { ServiceDonorpayment serviceDonorpayment = getById(id); if (ObjectUtils.isEmpty(serviceDonorpayment)) { throw new ServiceException("下载失败,没有对应信息", HttpStatus.NO_CONTENT); } SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日"); dataMap.put("RQ", simpleDateFormat.format(new Date())); dataMap.put("FKDW", serviceDonorpayment.getHospitalname()); dataMap.put("JBR", StringUtils.isEmpty(serviceDonorpayment.getUserName()) ? "" : serviceDonorpayment.getUserName()); ServiceDonorchargeorgan serviceDonorchargeorgan = new ServiceDonorchargeorgan(); serviceDonorchargeorgan.setPaymentid(id); List serviceDonorchargeorgans = serviceDonorchargeorganMapper.selectServiceDonorchargeorganList(serviceDonorchargeorgan); List> newsList = new ArrayList>(); int count = 0; double hj = 0; if (!CollectionUtils.isEmpty(serviceDonorchargeorgans)) { for (ServiceDonorchargeorgan serviceDonorchargeorgan1 : serviceDonorchargeorgans) { Map map = new HashMap(); count++; map.put("XH", count); map.put("JXZ", StringUtils.isEmpty(serviceDonorchargeorgan1.getDonorname()) ? "" : serviceDonorchargeorgan1.getDonorname()); map.put("XM", StringUtils.isEmpty(serviceDonorchargeorgan1.getOrganname()) ? "" : serviceDonorchargeorgan1.getOrganname()); map.put("XTBH", StringUtils.isEmpty(serviceDonorchargeorgan1.getCaseno()) ? "" : serviceDonorchargeorgan1.getCaseno()); map.put("ST", StringUtils.isEmpty(serviceDonorchargeorgan1.getName()) ? "" : serviceDonorchargeorgan1.getName()); map.put("JE", serviceDonorchargeorgan1.getOrgancharge() == BigDecimal.ZERO ? "" : serviceDonorchargeorgan1.getOrgancharge()); hj += serviceDonorchargeorgan1.getOrgancharge().doubleValue(); newsList.add(map); } } dataMap.put("items", newsList); dataMap.put("BYHJ", hj); } }