ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java
@@ -56,6 +56,9 @@ private IServiceReimbursementService serviceReimbursementService; @Autowired private IServiceReimbursementpayeeService reimbursementpayeeService; @Autowired private IServiceReimbursementSharedService serviceReimbursementServiceShare; @Autowired @@ -696,6 +699,8 @@ ServiceReimbursementEo serviceReimbursementEo = new ServiceReimbursementEo(); serviceReimbursementEo.setId(id); List<ServiceReimbursementEo> rdInfoByItem = serviceReimbursementService.getRDInfoByItem(serviceReimbursementEo); //获取报销支付信息 List<ServiceReimbursementpayee> reimbursementpayeeInfo = reimbursementpayeeService.getReimbursementpayeeInfo(serviceReimbursementEo); Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream() .collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype)); @@ -786,25 +791,18 @@ } else { dataMap.put("FYXM3", ""); } // dataMap.put("JEXS", rdInfoByItem.get(0).getAmountrequested()); // 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(rdInfoByItem.get(0).getAmountrequested().doubleValue()) + "整"); dataMap.put("JEDS", convert(allMoney.doubleValue()) + "整"); String remark = ""; remark += rdInfoByItem.get(0).getCosttypename() == null ? "" : rdInfoByItem.get(0).getCosttypename() + "("; remark += rdInfoByItem.get(0).getTravelers() == null ? "" : rdInfoByItem.get(0).getTravelers() + ": "; remark += rdInfoByItem.get(0).getIdcardno() == null ? "" : rdInfoByItem.get(0).getIdcardno() + "; "; remark += rdInfoByItem.get(0).getDepositbank() == null ? "" : rdInfoByItem.get(0).getDepositbank() + ": "; remark += rdInfoByItem.get(0).getBankcardno() == null ? "" : rdInfoByItem.get(0).getBankcardno() + ")"; remark += "\n"; remark += rdInfoByItem.get(0).getRemark() == null ? "" : rdInfoByItem.get(0).getRemark(); for (ServiceReimbursementpayee serviceReimbursementpayee : reimbursementpayeeInfo) { remark += "<w:br/> "+PersonType.getInfoByCode(serviceReimbursementpayee.getPersontype())+ "(" + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount(); remark += " 元; " + serviceReimbursementpayee.getBankname() + ": " + serviceReimbursementpayee.getBankcardno() + ") 备注: " + serviceReimbursementpayee.getRemark(); } dataMap.put("BXBZ", remark); @@ -882,7 +880,7 @@ //hj = Math.round(hj * 100) * 0.01d; // DecimalFormat df = new DecimalFormat("0.00"); // hj = new Double(df.format(hj).toString()); // hj = new Double(df.format(hj).toString()); newsList.add(map); } ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceReimbursementpayeeMapper.java
@@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import java.util.List; import com.ruoyi.project.domain.ServiceReimbursementEo; import com.ruoyi.project.domain.ServiceReimbursementpayee; /** @@ -20,4 +22,14 @@ * @return 差旅报销付款信息集合 */ public List<ServiceReimbursementpayee> selectServiceReimbursementpayeeList(ServiceReimbursementpayee serviceReimbursementpayee); /** * 获取报销支付信息 * @param serviceReimbursementEo * @return */ public List<ServiceReimbursementpayee> getReimbursementpayeeInfo(ServiceReimbursementEo serviceReimbursementEo); } ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceReimbursementpayeeService.java
@@ -2,6 +2,7 @@ import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.project.domain.ServiceReimbursementEo; import com.ruoyi.project.domain.ServiceReimbursementpayee; /** @@ -20,4 +21,11 @@ * @return 差旅报销付款信息集合 */ public List<ServiceReimbursementpayee> queryList(ServiceReimbursementpayee serviceReimbursementpayee); /** * 获取报销支付信息 * @param serviceReimbursementEo * @return */ public List<ServiceReimbursementpayee> getReimbursementpayeeInfo(ServiceReimbursementEo serviceReimbursementEo); } ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementpayeeServiceImpl.java
@@ -1,14 +1,20 @@ package com.ruoyi.project.service.impl; import java.util.List; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.project.domain.ServiceReimbursementEo; import com.ruoyi.project.domain.ServiceReimbursementpayeeShared; 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 java.util.ArrayList; import java.util.Map; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.project.mapper.ServiceReimbursementpayeeMapper; import com.ruoyi.project.domain.ServiceReimbursementpayee; @@ -16,61 +22,69 @@ /** * 差旅报销付款信息Service业务层处理 * * * @author ruoyi * @date 2023-04-20 */ @Service public class ServiceReimbursementpayeeServiceImpl extends ServiceImpl<ServiceReimbursementpayeeMapper, ServiceReimbursementpayee> implements IServiceReimbursementpayeeService { public class ServiceReimbursementpayeeServiceImpl extends ServiceImpl<ServiceReimbursementpayeeMapper, ServiceReimbursementpayee> implements IServiceReimbursementpayeeService { @Autowired private ServiceReimbursementpayeeMapper serviceReimbursementpayeeMapper; /** * 查询差旅报销付款信息列表 * * * @param serviceReimbursementpayee 差旅报销付款信息 * @return 差旅报销付款信息 */ @Override public List<ServiceReimbursementpayee> queryList(ServiceReimbursementpayee serviceReimbursementpayee) { LambdaQueryWrapper<ServiceReimbursementpayee> wrappers = Wrappers.lambdaQuery(); if (serviceReimbursementpayee.getRbid() != null){ wrappers.eq(ServiceReimbursementpayee::getRbid ,serviceReimbursementpayee.getRbid()); if (serviceReimbursementpayee.getRbid() != null) { wrappers.eq(ServiceReimbursementpayee::getRbid, serviceReimbursementpayee.getRbid()); } if (serviceReimbursementpayee.getOrderno() != null){ wrappers.eq(ServiceReimbursementpayee::getOrderno ,serviceReimbursementpayee.getOrderno()); if (serviceReimbursementpayee.getOrderno() != null) { wrappers.eq(ServiceReimbursementpayee::getOrderno, serviceReimbursementpayee.getOrderno()); } if (StringUtils.isNotBlank(serviceReimbursementpayee.getPersontype())){ wrappers.eq(ServiceReimbursementpayee::getPersontype ,serviceReimbursementpayee.getPersontype()); if (StringUtils.isNotBlank(serviceReimbursementpayee.getPersontype())) { wrappers.eq(ServiceReimbursementpayee::getPersontype, serviceReimbursementpayee.getPersontype()); } if (StringUtils.isNotBlank(serviceReimbursementpayee.getPersonname())){ wrappers.like(ServiceReimbursementpayee::getPersonname ,serviceReimbursementpayee.getPersonname()); if (StringUtils.isNotBlank(serviceReimbursementpayee.getPersonname())) { wrappers.like(ServiceReimbursementpayee::getPersonname, serviceReimbursementpayee.getPersonname()); } if (StringUtils.isNotBlank(serviceReimbursementpayee.getBankname())){ wrappers.like(ServiceReimbursementpayee::getBankname ,serviceReimbursementpayee.getBankname()); if (StringUtils.isNotBlank(serviceReimbursementpayee.getBankname())) { wrappers.like(ServiceReimbursementpayee::getBankname, serviceReimbursementpayee.getBankname()); } if (StringUtils.isNotBlank(serviceReimbursementpayee.getBankcardno())){ wrappers.eq(ServiceReimbursementpayee::getBankcardno ,serviceReimbursementpayee.getBankcardno()); if (StringUtils.isNotBlank(serviceReimbursementpayee.getBankcardno())) { wrappers.eq(ServiceReimbursementpayee::getBankcardno, serviceReimbursementpayee.getBankcardno()); } if (serviceReimbursementpayee.getAmount() != null){ wrappers.eq(ServiceReimbursementpayee::getAmount ,serviceReimbursementpayee.getAmount()); if (serviceReimbursementpayee.getAmount() != null) { wrappers.eq(ServiceReimbursementpayee::getAmount, serviceReimbursementpayee.getAmount()); } if (StringUtils.isNotBlank(serviceReimbursementpayee.getPhone())){ wrappers.eq(ServiceReimbursementpayee::getPhone ,serviceReimbursementpayee.getPhone()); if (StringUtils.isNotBlank(serviceReimbursementpayee.getPhone())) { wrappers.eq(ServiceReimbursementpayee::getPhone, serviceReimbursementpayee.getPhone()); } if (StringUtils.isNotBlank(serviceReimbursementpayee.getFamilyrelations())){ wrappers.eq(ServiceReimbursementpayee::getFamilyrelations ,serviceReimbursementpayee.getFamilyrelations()); if (StringUtils.isNotBlank(serviceReimbursementpayee.getFamilyrelations())) { wrappers.eq(ServiceReimbursementpayee::getFamilyrelations, serviceReimbursementpayee.getFamilyrelations()); } if (serviceReimbursementpayee.getPaiddate() != null){ wrappers.eq(ServiceReimbursementpayee::getPaiddate ,serviceReimbursementpayee.getPaiddate()); if (serviceReimbursementpayee.getPaiddate() != null) { wrappers.eq(ServiceReimbursementpayee::getPaiddate, serviceReimbursementpayee.getPaiddate()); } if (StringUtils.isNotBlank(serviceReimbursementpayee.getUploadflag())){ wrappers.eq(ServiceReimbursementpayee::getUploadflag ,serviceReimbursementpayee.getUploadflag()); if (StringUtils.isNotBlank(serviceReimbursementpayee.getUploadflag())) { wrappers.eq(ServiceReimbursementpayee::getUploadflag, serviceReimbursementpayee.getUploadflag()); } if (serviceReimbursementpayee.getUploadtime() != null){ wrappers.eq(ServiceReimbursementpayee::getUploadtime ,serviceReimbursementpayee.getUploadtime()); if (serviceReimbursementpayee.getUploadtime() != null) { wrappers.eq(ServiceReimbursementpayee::getUploadtime, serviceReimbursementpayee.getUploadtime()); } return this.list(wrappers); } @Override public List<ServiceReimbursementpayee> getReimbursementpayeeInfo(ServiceReimbursementEo serviceReimbursementEo) { if (ObjectUtils.isEmpty(serviceReimbursementEo.getId())) { return null; } return serviceReimbursementpayeeMapper.getReimbursementpayeeInfo(serviceReimbursementEo); } } ruoyi-project/src/main/resources/mapper/project/ServiceReimbursementpayeeMapper.xml
@@ -1,51 +1,92 @@ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.project.mapper.ServiceReimbursementpayeeMapper"> <resultMap type="ServiceReimbursementpayee" id="ServiceReimbursementpayeeResult"> <result property="id" column="id" /> <result property="rbid" column="rbid" /> <result property="orderno" column="orderno" /> <result property="persontype" column="persontype" /> <result property="personname" column="personname" /> <result property="bankname" column="bankname" /> <result property="bankcardno" column="bankcardno" /> <result property="amount" column="amount" /> <result property="phone" column="phone" /> <result property="familyrelations" column="familyrelations" /> <result property="paiddate" column="paiddate" /> <result property="remark" column="remark" /> <result property="delFlag" column="del_flag" /> <result property="createBy" column="create_by" /> <result property="createTime" column="create_time" /> <result property="updateBy" column="update_by" /> <result property="updateTime" column="update_time" /> <result property="uploadflag" column="uploadflag" /> <result property="uploadtime" column="uploadtime" /> <result property="id" column="id"/> <result property="rbid" column="rbid"/> <result property="orderno" column="orderno"/> <result property="persontype" column="persontype"/> <result property="personname" column="personname"/> <result property="bankname" column="bankname"/> <result property="bankcardno" column="bankcardno"/> <result property="amount" column="amount"/> <result property="phone" column="phone"/> <result property="familyrelations" column="familyrelations"/> <result property="paiddate" column="paiddate"/> <result property="remark" column="remark"/> <result property="delFlag" column="del_flag"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> <result property="uploadflag" column="uploadflag"/> <result property="uploadtime" column="uploadtime"/> </resultMap> <sql id="selectServiceReimbursementpayeeVo"> select id, rbid, orderno, persontype, personname, bankname, bankcardno, amount, phone, familyrelations, paiddate, remark, del_flag, create_by, create_time, update_by, update_time, uploadflag, uploadtime from service_reimbursementpayee select id, rbid, orderno, persontype, personname, bankname, bankcardno, amount, phone, familyrelations, paiddate, remark, del_flag, create_by, create_time, update_by, update_time, uploadflag, uploadtime from service_reimbursementpayee </sql> <select id="selectServiceReimbursementpayeeList" parameterType="ServiceReimbursementpayee" resultMap="ServiceReimbursementpayeeResult"> <select id="selectServiceReimbursementpayeeList" parameterType="ServiceReimbursementpayee" resultMap="ServiceReimbursementpayeeResult"> <include refid="selectServiceReimbursementpayeeVo"/> <where> <if test="rbid != null "> and rbid = #{rbid}</if> <if test="orderno != null "> and orderno = #{orderno}</if> <if test="persontype != null and persontype != ''"> and persontype = #{persontype}</if> <if test="personname != null and personname != ''"> and personname like concat('%', #{personname}, '%')</if> <if test="bankname != null and bankname != ''"> and bankname like concat('%', #{bankname}, '%')</if> <if test="bankcardno != null and bankcardno != ''"> and bankcardno = #{bankcardno}</if> <if test="amount != null "> and amount = #{amount}</if> <if test="phone != null and phone != ''"> and phone = #{phone}</if> <if test="familyrelations != null and familyrelations != ''"> and familyrelations = #{familyrelations}</if> <if test="paiddate != null "> and paiddate = #{paiddate}</if> <if test="uploadflag != null and uploadflag != ''"> and uploadflag = #{uploadflag}</if> <if test="uploadtime != null "> and uploadtime = #{uploadtime}</if> <if test="rbid != null ">and rbid = #{rbid}</if> <if test="orderno != null ">and orderno = #{orderno}</if> <if test="persontype != null and persontype != ''">and persontype = #{persontype}</if> <if test="personname != null and personname != ''">and personname like concat('%', #{personname}, '%')</if> <if test="bankname != null and bankname != ''">and bankname like concat('%', #{bankname}, '%')</if> <if test="bankcardno != null and bankcardno != ''">and bankcardno = #{bankcardno}</if> <if test="amount != null ">and amount = #{amount}</if> <if test="phone != null and phone != ''">and phone = #{phone}</if> <if test="familyrelations != null and familyrelations != ''">and familyrelations = #{familyrelations}</if> <if test="paiddate != null ">and paiddate = #{paiddate}</if> <if test="uploadflag != null and uploadflag != ''">and uploadflag = #{uploadflag}</if> <if test="uploadtime != null ">and uploadtime = #{uploadtime}</if> </where> </select> <select id="getReimbursementpayeeInfo" resultType="com.ruoyi.project.domain.ServiceReimbursementpayee"> SELECT b.personname as personname,b.bankname as bankname,b.bankcardno as bankcardno,b.amount as amount,b.persontype as persontype,b.paiddate as paiddate,b.Remark as remark from service_reimbursement a,service_reimbursementpayee b where a.id=b.RBID and a.del_flag!=1 and b.del_flag!=1 <if test="id != null"> and a.id = #{id} </if> <if test='username != null and username != ""'> and a.UserName=#{username} </if> <if test='recordstatus != null and recordstatus != ""'> and a.FlowLevel=#{recordstatus} </if> <if test='starttime != null and endtime != ""'> and a.create_time BETWEEN #{starttime} AND #{endtime} </if> ORDER BY a.id desc </select> </mapper>