From 5d837270abf682e216c94a11893f29950cb69968 Mon Sep 17 00:00:00 2001 From: furongxin <419481438@qq.com> Date: Wed, 2 Jul 2025 17:03:59 +0800 Subject: [PATCH] =?UTF-8?q?feat(bpm):=20=E4=BC=98=E5=8C=96=E6=8A=A5?= =?UTF-8?q?=E9=94=80=E5=8D=95=E4=BF=A1=E6=81=AF=E8=8E=B7=E5=8F=96=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加付款公司名称字段 - 优化部门信息获取逻辑,提高代码复用性 - 使用 Set 替代 List 存储部门 ID,提高查询效率 --- .../service/oa/BpmOAReimbursementServiceImpl.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAReimbursementServiceImpl.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAReimbursementServiceImpl.java index 40bdaddc..9d70dc63 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAReimbursementServiceImpl.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/BpmOAReimbursementServiceImpl.java @@ -38,10 +38,7 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; @@ -356,13 +353,19 @@ public class BpmOAReimbursementServiceImpl extends BpmOABaseService implements B data.setDeptId(userRespDTO.getDeptId()); } + Set deptIds = convertSet(reimbursements, BpmOAReimbursementItemDO::getDeptId); + if (reimbursementDO.getPaymentCompany() != null) { + deptIds.add(reimbursementDO.getPaymentCompany()); + } //获取部门信息map - Map deptMap = deptApi.getDeptMap(convertSet(reimbursements, BpmOAReimbursementItemDO::getDeptId)); + Map deptMap = deptApi.getDeptMap(deptIds); List reimbursementDTOS = BeanUtils.toBean(reimbursements, ReimbursementDTO.class); BpmOAReimbursementRespVO bpmOAReimbursementRespVO = BeanUtils.toBean(reimbursementDO, BpmOAReimbursementRespVO.class); bpmOAReimbursementRespVO.setReimbursements(BpmOAReimbursementConvert.INSTANCE.convertList(reimbursementDTOS, deptMap)); //拼接数据 + // 设置付款公司名称 + bpmOAReimbursementRespVO.setPaymentCompanyName(deptMap.get(reimbursementDO.getPaymentCompany()) == null ? null : deptMap.get(reimbursementDO.getPaymentCompany()).getName()); return bpmOAReimbursementRespVO; }