From 4874c0ed022e3f8ccde8a32c367c79f68ed61fbd Mon Sep 17 00:00:00 2001 From: Yangk Date: Mon, 12 Jan 2026 17:55:53 +0800 Subject: [PATCH] =?UTF-8?q?feat(AfterSales,=20TimesheetInfo,=20BusinessTri?= =?UTF-8?q?p):=20=E6=B7=BB=E5=8A=A0=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E6=8C=89ID=E5=88=97=E8=A1=A8=E8=BF=87?= =?UTF-8?q?=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/oa/crm/domain/bo/CrmBusinessTripApplyBo.java | 4 ++++ .../service/impl/CrmBusinessTripApplyServiceImpl.java | 4 +++- .../org/dromara/oa/erp/domain/bo/ErpAfterSalesBo.java | 7 ++++++- .../org/dromara/oa/erp/domain/bo/ErpTimesheetInfoBo.java | 5 +++++ .../oa/erp/service/impl/ErpAfterSalesServiceImpl.java | 4 ++++ .../oa/erp/service/impl/ErpTimesheetInfoServiceImpl.java | 9 +++++++-- 6 files changed, 29 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/crm/domain/bo/CrmBusinessTripApplyBo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/crm/domain/bo/CrmBusinessTripApplyBo.java index f70e4ea0..590196ea 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/crm/domain/bo/CrmBusinessTripApplyBo.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/crm/domain/bo/CrmBusinessTripApplyBo.java @@ -162,5 +162,9 @@ public class CrmBusinessTripApplyBo extends BaseEntity { */ private RemoteFlowInstanceBizExt bizExt; + /** + * 导出时指定的ID列表(逗号分隔) + */ + private String tripIds; } diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/crm/service/impl/CrmBusinessTripApplyServiceImpl.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/crm/service/impl/CrmBusinessTripApplyServiceImpl.java index 3b11bc2c..ca86424d 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/crm/service/impl/CrmBusinessTripApplyServiceImpl.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/crm/service/impl/CrmBusinessTripApplyServiceImpl.java @@ -36,7 +36,6 @@ import org.springframework.transaction.annotation.Transactional; import org.dromara.common.tenant.helper.TenantHelper; import cn.hutool.core.convert.Convert; - /** * 出差申请Service业务层处理 * @@ -108,6 +107,9 @@ public class CrmBusinessTripApplyServiceImpl implements ICrmBusinessTripApplySer .selectAs(ErpProjectInfo::getProjectCode, CrmBusinessTripApplyVo::getProjectCode) .leftJoin(ErpProjectInfo.class, ErpProjectInfo::getProjectId, CrmBusinessTripApply::getProjectId) .eq(CrmBusinessTripApply::getDelFlag, "0") + // 按指定ID列表过滤(用于导出选中数据) + .in(StringUtils.isNotBlank(bo.getTripIds()), CrmBusinessTripApply::getTripId, + StringUtils.isNotBlank(bo.getTripIds()) ? List.of(bo.getTripIds().split(",")) : null) .eq(StringUtils.isNotBlank(bo.getApplyCode()), CrmBusinessTripApply::getApplyCode, bo.getApplyCode()) .eq(StringUtils.isNotBlank(bo.getTripType()), CrmBusinessTripApply::getTripType, bo.getTripType()) .eq(bo.getApplicantId() != null, CrmBusinessTripApply::getApplicantId, bo.getApplicantId()) diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpAfterSalesBo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpAfterSalesBo.java index 565caa9f..938bc571 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpAfterSalesBo.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpAfterSalesBo.java @@ -106,7 +106,8 @@ public class ErpAfterSalesBo extends BaseEntity { /** * 客户干系人ID(关联客户联系人表) */ -// @NotBlank(message = "客户干系人ID(关联客户联系人表)不能为空", groups = { AddGroup.class, EditGroup.class }) + // @NotBlank(message = "客户干系人ID(关联客户联系人表)不能为空", groups = { AddGroup.class, + // EditGroup.class }) private String stakeholderId; /** @@ -195,5 +196,9 @@ public class ErpAfterSalesBo extends BaseEntity { */ private RemoteFlowInstanceBizExt bizExt; + /** + * 导出时指定的ID列表(逗号分隔) + */ + private String afterSalesIds; } diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpTimesheetInfoBo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpTimesheetInfoBo.java index 0243988e..e80912e2 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpTimesheetInfoBo.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpTimesheetInfoBo.java @@ -92,6 +92,11 @@ public class ErpTimesheetInfoBo extends BaseEntity { */ private String remark; + /** + * 导出时指定的ID列表(逗号分隔) + */ + private String timesheetIds; + /** * 子表:部门工作明细 */ diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpAfterSalesServiceImpl.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpAfterSalesServiceImpl.java index ca364149..a1b9d4ef 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpAfterSalesServiceImpl.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpAfterSalesServiceImpl.java @@ -138,6 +138,10 @@ public class ErpAfterSalesServiceImpl implements IErpAfterSalesService { MPJLambdaWrapper lqw = JoinWrappers.lambda(ErpAfterSales.class) .selectAll(ErpAfterSales.class) .eq(ErpAfterSales::getDelFlag, "0") + // 按指定ID列表过滤(用于导出选中数据) + .in(StringUtils.isNotBlank(bo.getAfterSalesIds()), ErpAfterSales::getAfterSalesId, + StringUtils.isNotBlank(bo.getAfterSalesIds()) ? List.of(bo.getAfterSalesIds().split(",")) + : null) .eq(StringUtils.isNotBlank(bo.getAfterSalesCode()), ErpAfterSales::getAfterSalesCode, bo.getAfterSalesCode()) .eq(StringUtils.isNotBlank(bo.getAfterSalesSubject()), ErpAfterSales::getAfterSalesSubject, diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpTimesheetInfoServiceImpl.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpTimesheetInfoServiceImpl.java index 0d371eb1..db6211a4 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpTimesheetInfoServiceImpl.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpTimesheetInfoServiceImpl.java @@ -127,12 +127,17 @@ public class ErpTimesheetInfoServiceImpl implements IErpTimesheetInfoService { MPJLambdaWrapper lqw = JoinWrappers.lambda(ErpTimesheetInfo.class) .selectAll(ErpTimesheetInfo.class) .eq(ErpTimesheetInfo::getDelFlag, "0") + // 按指定ID列表过滤(用于导出选中数据) + .in(StringUtils.isNotBlank(bo.getTimesheetIds()), ErpTimesheetInfo::getTimesheetId, + StringUtils.isNotBlank(bo.getTimesheetIds()) ? List.of(bo.getTimesheetIds().split(",")) : null) .eq(StringUtils.isNotBlank(bo.getTimesheetCode()), ErpTimesheetInfo::getTimesheetCode, bo.getTimesheetCode()) .eq(bo.getUserId() != null, ErpTimesheetInfo::getUserId, bo.getUserId()) .eq(bo.getDeptId() != null, ErpTimesheetInfo::getDeptId, bo.getDeptId()) - .eq(bo.getStartTime() != null, ErpTimesheetInfo::getStartTime, bo.getStartTime()) - .eq(bo.getEndTime() != null, ErpTimesheetInfo::getEndTime, bo.getEndTime()) + // 日期范围查询:起始时间之后 + .ge(bo.getStartTime() != null, ErpTimesheetInfo::getStartTime, bo.getStartTime()) + // 日期范围查询:结束时间之前 + .le(bo.getEndTime() != null, ErpTimesheetInfo::getEndTime, bo.getEndTime()) .eq(bo.getTotalHours() != null, ErpTimesheetInfo::getTotalHours, bo.getTotalHours()) .eq(bo.getDeptHours() != null, ErpTimesheetInfo::getDeptHours, bo.getDeptHours()) .eq(bo.getProjectHours() != null, ErpTimesheetInfo::getProjectHours, bo.getProjectHours())