From 84ac2b6b12bc3e5de072661fb25e87877c01d0d7 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期六, 18 七月 2026 13:41:35 +0800
Subject: [PATCH] feat(crm): 添加客户权限过滤功能并实现销售订单客户权限控制
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java | 20 +++++++++++++++-----
1 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java
index d7124e9..a233210 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/salesnotice/MesWmSalesNoticeServiceImpl.java
@@ -17,7 +17,7 @@
import cn.iocoder.yudao.module.mes.enums.wm.MesWmOutStatusEnum;
import cn.iocoder.yudao.module.mes.enums.wm.MesWmProductSalesStatusEnum;
import cn.iocoder.yudao.module.mes.service.md.autocode.MesMdAutoCodeRecordService;
-import cn.iocoder.yudao.module.mes.service.md.client.MesMdClientService;
+import cn.iocoder.yudao.module.crm.api.customer.CrmCustomerApi;
import cn.iocoder.yudao.module.erp.api.sale.ErpSaleOrderApi;
import cn.iocoder.yudao.module.erp.api.sale.dto.ErpSaleOrderItemRespDTO;
import cn.iocoder.yudao.module.erp.api.sale.dto.ErpSaleOrderRespDTO;
@@ -51,7 +51,7 @@
@Resource
private MesWmSalesNoticeLineService salesNoticeLineService;
@Resource
- private MesMdClientService clientService;
+ private CrmCustomerApi customerApi;
@Resource
private ErpSaleOrderApi saleOrderApi;
@@ -103,12 +103,22 @@
@Override
public MesWmSalesNoticeDO getSalesNotice(Long id) {
- return salesNoticeMapper.selectById(id);
+ MesWmSalesNoticeDO notice = salesNoticeMapper.selectById(id);
+ // 鏍¢獙瀹㈡埛鏉冮檺
+ if (notice != null && notice.getClientId() != null) {
+ List<Long> permittedIds = customerApi.getPermittedCustomerIds();
+ if (permittedIds != null && !permittedIds.contains(notice.getClientId())) {
+ return null; // 鏃犳潈闄愬垯杩斿洖 null
+ }
+ }
+ return notice;
}
@Override
public PageResult<MesWmSalesNoticeDO> getSalesNoticePage(MesWmSalesNoticePageReqVO pageReqVO) {
- return salesNoticeMapper.selectPage(pageReqVO);
+ // 鑾峰彇鐢ㄦ埛鏈夋潈闄愮殑瀹㈡埛 ID 鍒楄〃
+ List<Long> permittedClientIds = customerApi.getPermittedCustomerIds();
+ return salesNoticeMapper.selectPage(pageReqVO, permittedClientIds);
}
@Override
@@ -166,7 +176,7 @@
validateNoticeCodeUnique(saveReqVO.getId(), saveReqVO.getCode());
// 鏍¢獙瀹㈡埛瀛樺湪
if (saveReqVO.getClientId() != null) {
- clientService.validateClientExistsAndEnable(saveReqVO.getClientId());
+ customerApi.validateCustomer(saveReqVO.getClientId());
}
}
--
Gitblit v1.9.3