WMS收货管理、上架管理、入库异常的创建人姓名,审核人姓名修改存账号的姓名

This commit is contained in:
秦鸿展
2026-03-03 15:10:24 +08:00
parent 5c84eb2095
commit e720d006ce
4 changed files with 70 additions and 16 deletions
@@ -140,6 +140,13 @@ public class InOrderAbnormalImpl extends ServiceImpl<InOrderAbnormalMapper, InOr
*/
private List<InOrderAbnormal> genShelfOrderMaterialDetailList(InOrderAbnormalBaseDO inOrderAbnormalBaseDO, List<ShelfMaterialDetail> shelfMaterialDetailList){
LoginUser loginUser = SecurityUtils.getLoginUser();
// 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底)
final String userRealName = (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
&& !loginUser.getUserPo().getUserName().trim().isEmpty())
? loginUser.getUserPo().getUserName()
: (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty())
? loginUser.getRealname()
: loginUser.getUsername();
List<InOrderAbnormal> inOrderAbnormalList = new ArrayList<>();
for (ShelfMaterialDetail shelfMaterialDetail : shelfMaterialDetailList){
//上架
@@ -165,7 +172,7 @@ public class InOrderAbnormalImpl extends ServiceImpl<InOrderAbnormalMapper, InOr
inOrderAbnormal.setAllowActualQuantity(shelfMaterialDetail.getQuantity());
inOrderAbnormal.setAbnormalActualQuantity(shelfMaterialDetail.getShelvesQuantity().subtract(shelfMaterialDetail.getQuantity()));
inOrderAbnormal.setCreateBy(loginUser.getUserid());
inOrderAbnormal.setCreateByName(loginUser.getUsername());
inOrderAbnormal.setCreateByName(userRealName);
inOrderAbnormal.setCreateTime(new Date());
inOrderAbnormal.setType(2);
inOrderAbnormalList.add(inOrderAbnormal);
@@ -184,6 +191,13 @@ public class InOrderAbnormalImpl extends ServiceImpl<InOrderAbnormalMapper, InOr
*/
private List<InOrderAbnormal> genReceiptOrderMaterialDetailList(InOrderAbnormalBaseDO inOrderAbnormalBaseDO, List<ReceiptMaterialDetail> receiptMaterialDetailList){
LoginUser loginUser = SecurityUtils.getLoginUser();
// 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底)
final String userRealName = (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
&& !loginUser.getUserPo().getUserName().trim().isEmpty())
? loginUser.getUserPo().getUserName()
: (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty())
? loginUser.getRealname()
: loginUser.getUsername();
List<InOrderAbnormal> inOrderAbnormalList = new ArrayList<>();
for (ReceiptMaterialDetail receiptMaterialDetail : receiptMaterialDetailList){
//收货
@@ -203,7 +217,7 @@ public class InOrderAbnormalImpl extends ServiceImpl<InOrderAbnormalMapper, InOr
lessAbnormalSmallParams(receiptMaterialDetail, inOrderAbnormal);
}
inOrderAbnormal.setCreateBy(loginUser.getUserid());
inOrderAbnormal.setCreateByName(loginUser.getUsername());
inOrderAbnormal.setCreateByName(userRealName);
inOrderAbnormal.setCreateTime(new Date());
inOrderAbnormal.setType(1);
inOrderAbnormalList.add(inOrderAbnormal);
@@ -136,16 +136,23 @@ public class StockReceiptOrderDomainService {
@Transactional(rollbackFor = Exception.class)
public Boolean batchInsert(List<StockReceiptOrderDO> stockReceiptOrderDOList) {
LoginUser loginUser = SecurityUtils.getLoginUser();
// 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底)
final String userRealName = (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
&& !loginUser.getUserPo().getUserName().trim().isEmpty())
? loginUser.getUserPo().getUserName()
: (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty())
? loginUser.getRealname()
: loginUser.getUsername();
List<StockReceiptOrder> stockReceiptOrderList = new ArrayList<>();
List<ReceiptMaterialDetail> receiptMaterialDetailList = new ArrayList<>();
stockReceiptOrderDOList.forEach(stockReceiptOrderDO -> {
StockReceiptOrder stockReceiptOrder = JSONUtil.toBean(JSONUtil.toJsonStr(stockReceiptOrderDO), StockReceiptOrder.class);
stockReceiptOrder.setReceiptOrderNumber(OrderSequence.getOrderCode("SH"));
stockReceiptOrder.setCreateBy(loginUser.getUserid());
stockReceiptOrder.setCreateByName(loginUser.getUsername());
stockReceiptOrder.setCreateByName(userRealName);
stockReceiptOrder.setCreateTime(new Date());
stockReceiptOrder.setUpdateBy(loginUser.getUserid());
stockReceiptOrder.setUpdateByName(loginUser.getUsername());
stockReceiptOrder.setUpdateByName(userRealName);
stockReceiptOrder.setUpdateTime(new Date());
stockReceiptOrderList.add(stockReceiptOrder);
stockReceiptOrderDO.getMaterialDetailList().forEach(materialDetailDO -> {
@@ -159,7 +166,7 @@ public class StockReceiptOrderDomainService {
receiptMaterialDetail.setReceiptOrderNumber(stockReceiptOrder.getReceiptOrderNumber());
receiptMaterialDetail.setGenStockShelf(2); // 设置需要生成上架单
receiptMaterialDetail.setCreateBy(loginUser.getUserid());
receiptMaterialDetail.setCreateByName(loginUser.getUsername());
receiptMaterialDetail.setCreateByName(userRealName);
receiptMaterialDetail.setCreateTime(new Date());
receiptMaterialDetailList.add(receiptMaterialDetail);
});
@@ -665,6 +672,13 @@ public class StockReceiptOrderDomainService {
throw new ServiceException("收货单【" + stockReceiptOrderPO.getReceiptOrderNumber() + "】已完成收货,请重新选择");
}
LoginUser loginUser = SecurityUtils.getLoginUser();
// 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底)
final String userRealName = (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
&& !loginUser.getUserPo().getUserName().trim().isEmpty())
? loginUser.getUserPo().getUserName()
: (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty())
? loginUser.getRealname()
: loginUser.getUsername();
int abnormal = 2;
if (stockReceiptOrderPO.getReceiptQuantity().compareTo(stockReceiptOrderPO.getQuantity()) != 0){
abnormal = 1;
@@ -678,7 +692,7 @@ public class StockReceiptOrderDomainService {
stockInOrder.setInOrderNumber(stockReceiptOrderPO.getInOrderNumber());
stockInOrder.setStatus(4); // 4-上架中
stockInOrder.setUpdateBy(loginUser.getUserid());
stockInOrder.setUpdateByName(loginUser.getUsername());
stockInOrder.setUpdateByName(userRealName);
stockInOrder.setUpdateTime(new Date());
stockInOrderService.update(stockInOrder,
new QueryWrapper<StockInOrder>().lambda()
@@ -701,7 +715,7 @@ public class StockReceiptOrderDomainService {
//如果没有指定操作人员,使用当前登录用户
if (stockShelfOrderDO.getOperatorsBy() == null) {
stockShelfOrderDO.setOperatorsBy(loginUser.getUserid());
stockShelfOrderDO.setOperatorsName(loginUser.getUsername());
stockShelfOrderDO.setOperatorsName(userRealName);
}
//生成上架任务
stockShelfOrderDomainService.genDeliveTask(stockShelfOrderPOList, stockShelfOrderDO);
@@ -710,7 +724,7 @@ public class StockReceiptOrderDomainService {
.set(StockShelfOrder::getTaskDistribution, 1)
.set(StockShelfOrder::getTaskDistributionTime, new Date())
.set(StockShelfOrder::getUpdateBy, loginUser.getUserid())
.set(StockShelfOrder::getUpdateByName, loginUser.getUsername())
.set(StockShelfOrder::getUpdateByName, userRealName)
.set(StockShelfOrder::getUpdateTime, new Date())
.in(StockShelfOrder::getShelfOrderId, stockShelfOrderDO.getShelfOrderIds()));
}
@@ -146,6 +146,13 @@ public class StockShelfOrderDomainService {
@Transactional(rollbackFor = Exception.class)
public Boolean genStockShelfOrder(List<StockShelfOrderDO> stockShelfOrderDOList) {
LoginUser loginUser = SecurityUtils.getLoginUser();
// 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底)
final String userRealName = (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
&& !loginUser.getUserPo().getUserName().trim().isEmpty())
? loginUser.getUserPo().getUserName()
: (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty())
? loginUser.getRealname()
: loginUser.getUsername();
List<StockShelfOrder> stockShelfOrderList = new ArrayList<>();
List<ShelfMaterialDetail> shelfMaterialDetailList = new ArrayList<>();
stockShelfOrderDOList.forEach(stockShelfOrderDO -> {
@@ -156,10 +163,10 @@ public class StockShelfOrderDomainService {
stockShelfOrder.setShelfOrderNumber(OrderSequence.getOrderCode("SJ"));
}
stockShelfOrder.setCreateBy(loginUser.getUserid());
stockShelfOrder.setCreateByName(loginUser.getUsername());
stockShelfOrder.setCreateByName(userRealName);
stockShelfOrder.setCreateTime(new Date());
stockShelfOrder.setUpdateBy(loginUser.getUserid());
stockShelfOrder.setUpdateByName(loginUser.getUsername());
stockShelfOrder.setUpdateByName(userRealName);
stockShelfOrder.setUpdateTime(new Date());
stockShelfOrderList.add(stockShelfOrder);
stockShelfOrderDO.getMaterialDetailList().forEach(materialDetailDO -> {
@@ -173,7 +180,7 @@ public class StockShelfOrderDomainService {
shelfMaterialDetail.setShelfOrderNumber(stockShelfOrder.getShelfOrderNumber());
shelfMaterialDetail.setLevel(1);
shelfMaterialDetail.setCreateBy(loginUser.getUserid());
shelfMaterialDetail.setCreateByName(loginUser.getUsername());
shelfMaterialDetail.setCreateByName(userRealName);
shelfMaterialDetail.setCreateTime(new Date());
shelfMaterialDetailList.add(shelfMaterialDetail);
});
@@ -1080,6 +1087,13 @@ public class StockShelfOrderDomainService {
@Transactional(rollbackFor = Exception.class)
public void genDeliveTask(List<StockShelfOrderPO> stockReceiptOrderPOList, StockShelfOrderDO stockReceiptOrderDO){
LoginUser loginUser = SecurityUtils.getLoginUser();
// 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底)
final String userRealName = (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
&& !loginUser.getUserPo().getUserName().trim().isEmpty())
? loginUser.getUserPo().getUserName()
: (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty())
? loginUser.getRealname()
: loginUser.getUsername();
List<DeliveTaskDO> deliveTaskDOList = new ArrayList<>();
for (StockShelfOrderPO stockShelfOrderPO : stockReceiptOrderPOList){
DeliveTaskDO deliveTaskDO = new DeliveTaskDO();
@@ -1094,12 +1108,12 @@ public class StockShelfOrderDomainService {
deliveTaskDO.setTaskType(2);
deliveTaskDO.setTaskDistribution(1);
deliveTaskDO.setTaskDistributionId(loginUser.getUserid());
deliveTaskDO.setTaskDistributionName(loginUser.getUsername());
deliveTaskDO.setTaskDistributionName(userRealName);
deliveTaskDO.setTaskDistributionTime(new Date());
deliveTaskDO.setOperatorsBy(stockReceiptOrderDO.getOperatorsBy());
deliveTaskDO.setOperatorsName(stockReceiptOrderDO.getOperatorsName());
deliveTaskDO.setCreateBy(loginUser.getUserid());
deliveTaskDO.setCreateByName(loginUser.getUsername());
deliveTaskDO.setCreateByName(userRealName);
deliveTaskDO.setCreateTime(new Date());
deliveTaskDOList.add(deliveTaskDO);
}
@@ -43,19 +43,31 @@ public class InOrderAbnormalAssembler {
if (ObjectUtil.isNull(loginUser)) {
throw new DigitalLogisticsException(UserError.TIMEOUT);
}
String userName = loginUser.getUsername();
// 获取登录人id
Long userId = loginUser.getUserid();
// 获取用户姓名优先从UserPo获取如果为空则使用realname最后使用username作为兜底
String userRealName = null;
if (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
&& !loginUser.getUserPo().getUserName().trim().isEmpty()) {
// 优先使用UserPo中的userName用户真实姓名
userRealName = loginUser.getUserPo().getUserName();
} else if (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty()) {
// 其次使用realname
userRealName = loginUser.getRealname();
} else {
// 最后使用username账号作为兜底
userRealName = loginUser.getUsername();
}
if(inOrderAbnormalDTO.getInOrderAbnormalId() != null){
inOrderAbnormalDO.setUpdateBy(userId);
inOrderAbnormalDO.setUpdateByName(userName);
inOrderAbnormalDO.setUpdateByName(userRealName);
inOrderAbnormalDO.setUpdateTime(new Date());
}else {
inOrderAbnormalDO.setOrganizationId(loginUser.getUserPo().getOrganizationId());
inOrderAbnormalDO.setOrganizationName(loginUser.getUserPo().getOrganizationName());
inOrderAbnormalDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
inOrderAbnormalDO.setCreateBy(userId);
inOrderAbnormalDO.setCreateByName(userName);
inOrderAbnormalDO.setCreateByName(userRealName);
inOrderAbnormalDO.setCreateTime(new Date());
inOrderAbnormalDO.setDelFlag(1);
}