From defe1e1c3ade87de0a7990f565f08f93aeb2decc Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期日, 08 十一月 2026 19:31:46 +0800
Subject: [PATCH] fix(bpm): 统一审批标题单号并收紧各模块提交校验
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnsales/MesWmReturnSalesLineServiceImpl.java | 24 +++++++++++++++++++++---
1 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnsales/MesWmReturnSalesLineServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnsales/MesWmReturnSalesLineServiceImpl.java
index c80507d..3841671 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnsales/MesWmReturnSalesLineServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/returnsales/MesWmReturnSalesLineServiceImpl.java
@@ -4,6 +4,8 @@
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.StrUtil;
import cn.iocoder.yudao.module.erp.api.sale.ErpSaleOrderApi;
+import cn.iocoder.yudao.module.aftersales.api.AfterSaleTicketApi;
+import cn.iocoder.yudao.module.aftersales.api.dto.AfterSaleWarehouseReturnStageReqDTO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.controller.admin.wm.returnsales.vo.line.MesWmReturnSalesLinePageReqVO;
@@ -42,6 +44,9 @@
@Service
@Validated
public class MesWmReturnSalesLineServiceImpl implements MesWmReturnSalesLineService {
+
+ @Resource
+ private AfterSaleTicketApi afterSaleTicketApi;
@Resource
private MesWmReturnSalesLineMapper returnSalesLineMapper;
@@ -113,6 +118,12 @@
MesWmProductSalesStatusEnum.FINISHED.getStatus()) == 0) {
throw exception(WM_RETURN_SALES_BATCH_NOT_SHIPPED);
}
+ // 鎵嬪伐鍏ュ簱鎵规鍙兘娌℃湁瀹㈡埛锛涗粎鍦ㄨ鍗曠洏鍙峰強宸插畬鎴愬嚭搴撻兘宸查獙璇佸悗鍏佽閫�璐с��
+ if (batch != null && (batch.getClientId() != null || reelNumbers.isEmpty())) {
+ batchService.validateBatchExists(batch.getId(), reqVO.getItemId(), returnSales.getClientId(), null);
+ }
+ } else if (batch != null) {
+ batchService.validateBatchExists(batch.getId(), reqVO.getItemId(), returnSales.getClientId(), null);
}
}
@@ -179,7 +190,7 @@
/**
* 鏍¢獙鐗╂枡鎵规绠$悊
*
- * @param returnId 閫�璐у崟ID
+ * @param returnSales 閫�璐у崟
* @param itemId 鐗╂枡ID
* @param batchId 鎵规ID
*/
@@ -191,8 +202,7 @@
}
// 鏍¢獙鎵规瀛樺湪涓斿睘浜庡綋鍓嶇墿鏂欏拰瀹㈡埛
if (batchId != null) {
- // 浠庣埗鍗曡幏鍙栧鎴稩D锛屾牎楠屾壒娆″綊灞�
- return batchService.validateBatchExists(batchId, itemId, returnSales.getClientId(), null);
+ return batchService.validateBatchExists(batchId, itemId);
}
return null;
}
@@ -241,6 +251,14 @@
line -> Objects.equals(line.getQualityStatus(), MesWmQualityStatusEnum.PENDING.getStatus()));
if (allInspected) {
returnSalesService.updateReturnSalesStatus(sourceDocId, MesWmReturnSalesStatusEnum.APPROVING.getStatus());
+ MesWmReturnSalesDO returnSales = returnSalesService.getReturnSales(sourceDocId);
+ if (returnSales != null && returnSales.getSaleOrderId() != null) {
+ afterSaleTicketApi.onWarehouseReturnQualityFinished(new AfterSaleWarehouseReturnStageReqDTO()
+ .setSaleOrderId(returnSales.getSaleOrderId())
+ .setReturnSalesId(returnSales.getId())
+ .setReturnSalesCode(returnSales.getCode())
+ .setQualityResult("鍏ㄩ儴寰呮琛屽凡瀹屾垚妫�楠�"));
+ }
}
}
}
--
Gitblit v1.9.3