From 71dda4d73cf891ef83759925855c3a88fa4fc6b8 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期二, 12 五月 2026 10:05:10 +0800
Subject: [PATCH] 解决user不存在问题
---
src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java | 33 +++++++++++++++++++++------------
1 files changed, 21 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
index d22f0f4..d9c4031 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -16,6 +16,7 @@
import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum;
import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.procurementrecord.utils.StockUtils;
import com.ruoyi.production.dto.ProductStructureDto;
@@ -169,8 +170,14 @@
}
String productNo = String.format("%s%03d", datePrefix, sequenceNumber);
productionProductMain.setProductNo(productNo);
- productionProductMain.setUserId(dto.getUserId());
- productionProductMain.setUserName(dto.getUserName());
+ Long userId = dto.getUserId();
+ String userName = dto.getUserName();
+ if (userId == null) {
+ userId = SecurityUtils.getLoginUser().getUserId();
+ userName = SecurityUtils.getLoginUser().getNickName();
+ }
+ productionProductMain.setUserId(userId);
+ productionProductMain.setUserName(userName);
productionProductMain.setProductProcessRouteItemId(dto.getProductProcessRouteItemId());
productionProductMain.setWorkOrderId(dto.getWorkOrderId());
productionProductMain.setStatus(0);
@@ -188,13 +195,15 @@
.map(ProductStructureDto::getParentId)
.filter(Objects::nonNull)
.collect(Collectors.toSet());
- Map<Long, ProductStructureDto> parentMap =
- productStructureMapper.selectByIds(parentIds)
- .stream()
- .collect(Collectors.toMap(
- ProductStructureDto::getId,
- Function.identity()
- ));
+ Map<Long, ProductStructureDto> parentMap = new HashMap<>();
+ if (!parentIds.isEmpty()) {
+ parentMap = productStructureMapper.selectByIds(parentIds)
+ .stream()
+ .collect(Collectors.toMap(
+ ProductStructureDto::getId,
+ Function.identity()
+ ));
+ }
for (ProductStructureDto productStructureDto : productStructureDtos) {
ProductionProductInput productionProductInput = new ProductionProductInput();
productionProductInput.setProductModelId(productStructureDto.getProductModelId());
@@ -308,8 +317,8 @@
/*娣诲姞鐢熶骇鏍哥畻*/
SalesLedgerProductionAccounting salesLedgerProductionAccounting = SalesLedgerProductionAccounting.builder()
.productMainId(productionProductMain.getId())
- .schedulingUserId(user.getUserId())
- .schedulingUserName(user.getNickName())
+ .schedulingUserId(userId)
+ .schedulingUserName(userName)
.finishedNum(productQty)
.workHours(productProcess.getSalaryQuota())
.process(productProcess.getName())
@@ -474,4 +483,4 @@
return productionProductMainDtos;
}
-}
+}
\ No newline at end of file
--
Gitblit v1.9.3