diff --git a/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/impl/QcPDAServiceImpl.java b/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/impl/QcPDAServiceImpl.java index b8f329d..d0215bb 100644 --- a/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/impl/QcPDAServiceImpl.java +++ b/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/impl/QcPDAServiceImpl.java @@ -10,6 +10,8 @@ import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.DateUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.common.tenant.helper.TenantHelper; +import org.apache.dubbo.rpc.RpcContext; import org.dromara.pda.api.RemotePdaMesApiService; import org.dromara.pda.api.model.ProdQmsPlanDetail; import org.dromara.pda.api.model.bo.GenerateInspectionTaskBo; @@ -345,12 +347,18 @@ public class QcPDAServiceImpl implements IQcPDAService { reviewBo.setProcessInstanceId(processInstanceId);// 流程实例ID qcUnqualifiedReviewService.updateByBo(reviewBo); + // 捕获当前租户ID + final String currentTenantId = TenantHelper.getTenantId(); //异步推动流程 final Long finalTaskId = taskId; - CompletableFuture.runAsync(TtlRunnable.get(() -> { - RemoteCompleteTask completeTask = new RemoteCompleteTask(); - completeTask.setTaskId(finalTaskId); - completeTask.setMessage("启动不合格评审,处置类型: " + dispositionType); + CompletableFuture.runAsync(TtlRunnable.get(() -> { + + // 设置Dubbo附件传递租户ID + RpcContext.getContext().setAttachment("tenantId", currentTenantId); + + RemoteCompleteTask completeTask = new RemoteCompleteTask(); + completeTask.setTaskId(finalTaskId); + completeTask.setMessage("启动不合格评审,处置类型: " + dispositionType); // 设置消息类型 List messageTypes = new ArrayList<>();