liusheng
2024-03-08 c2600591e819743757f8668d0c684da1e24cb7d4
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonorpaymentServiceImpl.java
@@ -1,15 +1,24 @@
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.ServiceDonorpayment;
import com.ruoyi.project.domain.*;
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.util.List;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
/**
 * 费用收款单Service业务层处理
@@ -18,9 +27,10 @@
 * @date 2024-02-27
 */
@Service
public class ServiceDonorpaymentServiceImpl extends ServiceImpl<ServiceDonorpaymentMapper, ServiceDonorpayment> implements IServiceDonorpaymentService
{
public class ServiceDonorpaymentServiceImpl extends ServiceImpl<ServiceDonorpaymentMapper, ServiceDonorpayment> implements IServiceDonorpaymentService {
    @Autowired
    private ServiceDonorchargeorganMapper serviceDonorchargeorganMapper;
    /**
     * 查询费用收款单列表
@@ -37,6 +47,9 @@
        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());
        }
@@ -45,6 +58,9 @@
        }
        if (StringUtils.isNotBlank(serviceDonorpayment.getHospitalname())){
            wrappers.eq(ServiceDonorpayment::getHospitalname ,serviceDonorpayment.getHospitalname());
        }
        if (StringUtils.isNotBlank(serviceDonorpayment.getHandledPerson())) {
            wrappers.eq(ServiceDonorpayment::getHandledPerson, serviceDonorpayment.getHandledPerson());
        }
        if (StringUtils.isNotBlank(serviceDonorpayment.getHospitalno())){
            wrappers.eq(ServiceDonorpayment::getHospitalno ,serviceDonorpayment.getHospitalno());
@@ -73,4 +89,44 @@
        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.getHandledPerson()) ? "" : serviceDonorpayment.getHandledPerson());
        ServiceDonorchargeorgan serviceDonorchargeorgan = new ServiceDonorchargeorgan();
        serviceDonorchargeorgan.setPaymentid(id);
        List<ServiceDonorchargeorgan> serviceDonorchargeorgans = serviceDonorchargeorganMapper.selectServiceDonorchargeorganList(serviceDonorchargeorgan);
        List<Map<String, Object>> newsList = new ArrayList<Map<String, Object>>();
        int count = 0;
        double hj = 0;
        if (!CollectionUtils.isEmpty(serviceDonorchargeorgans)) {
            for (ServiceDonorchargeorgan serviceDonorchargeorgan1 : serviceDonorchargeorgans) {
                Map<String, Object> map = new HashMap<String, Object>();
                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);
    }
}