diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/web/domain/BaseVOEntity.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/web/domain/BaseVOEntity.java index ab659f2ad..c8cb909a3 100644 --- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/web/domain/BaseVOEntity.java +++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/web/domain/BaseVOEntity.java @@ -32,7 +32,7 @@ public class BaseVOEntity implements Serializable @ApiModelProperty(value = "更新者") private Long updateBy; - @ApiModelProperty(name = "创建者姓名") + @ApiModelProperty(name = "更新人姓名") private String updateByName; @ApiModelProperty(value = "更新时间") diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockInOrder/StockInOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockInOrder/StockInOrderApplicationService.java index 52393333c..175acfb0f 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockInOrder/StockInOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockInOrder/StockInOrderApplicationService.java @@ -1142,7 +1142,20 @@ public class StockInOrderApplicationService { order.setOrganizationName(loginUser.getUserPo().getOrganizationName()); order.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); order.setCreateBy(loginUser.getUserid()); - order.setCreateByName(loginUser.getUsername()); + // 获取用户姓名(优先从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(); + } + order.setCreateByName(userRealName); // 设置创建时间为当前时间 order.setCreateTime(new Date()); diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java index ab54e472b..b4bec23b1 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java @@ -783,15 +783,22 @@ public class StockReceiptOrderApplicationService { receiptMaterialDetailDOList.forEach(receiptMaterialDetailDO -> { List receiptMaterialDetailDOChildrenList1 = receiptMaterialDetailDO.getChildren(); if (receiptMaterialDetailDOChildrenList1 != null && receiptMaterialDetailDOChildrenList1.size() > 0) { - ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 1 == p.getLevel()).collect(Collectors.toList()).get(0); - receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId()); - receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity()); - receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode()); - receiptMaterialDetailDO.setBatchNumber(receiptMaterialDetailDOChildren.getBatchNumber()); - receiptMaterialDetailDO.setContainerId(receiptMaterialDetailDOChildren.getContainerId()); - receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel()); - receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList()); - receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList()); + //ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 1 == p.getLevel()).collect(Collectors.toList()).get(0); + ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = + receiptMaterialDetailDOChildrenList1.stream() + .filter(p -> 1 == p.getLevel()) + .findFirst() // 返回 Optional + .orElse(null); // 没有符合条件的元素时返回null(也可以自定义默认值) + if (receiptMaterialDetailDOChildren != null) { + receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId()); + receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity()); + receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode()); + receiptMaterialDetailDO.setBatchNumber(receiptMaterialDetailDOChildren.getBatchNumber()); + receiptMaterialDetailDO.setContainerId(receiptMaterialDetailDOChildren.getContainerId()); + receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel()); + receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList()); + receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList()); + } //只留二级 List receiptMaterialDetailDOChildrenList2 = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 2 == p.getLevel()).collect(Collectors.toList()); receiptMaterialDetailDO.setChildren(receiptMaterialDetailDOChildrenList2); diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java index 4e49253ba..4b5d188d3 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/handoverTaskOrder/service/HandoverTaskOrderDomainService.java @@ -307,6 +307,13 @@ public class HandoverTaskOrderDomainService { private void genDeliveTask(List handoverTaskOrders, HandoverTaskOrderDO handoverTaskOrderDO) { 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 deliveTaskDOList = new ArrayList<>(); for (HandoverTaskOrder handoverTaskOrder : handoverTaskOrders) { DeliveTaskDO deliveTaskDO = new DeliveTaskDO(); @@ -321,12 +328,12 @@ public class HandoverTaskOrderDomainService { deliveTaskDO.setTaskType(7); deliveTaskDO.setTaskDistribution(1); deliveTaskDO.setTaskDistributionId(loginUser.getUserid()); - deliveTaskDO.setTaskDistributionName(loginUser.getUsername()); + deliveTaskDO.setTaskDistributionName(userRealName); deliveTaskDO.setTaskDistributionTime(new Date()); deliveTaskDO.setOperatorsBy(handoverTaskOrderDO.getOperatorsBy()); deliveTaskDO.setOperatorsName(handoverTaskOrderDO.getOperatorsName()); deliveTaskDO.setCreateBy(loginUser.getUserid()); - deliveTaskDO.setCreateByName(loginUser.getUsername()); + deliveTaskDO.setCreateByName(userRealName); deliveTaskDO.setCreateTime(new Date()); deliveTaskDOList.add(deliveTaskDO); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/persistence/InMaterialDetailImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/persistence/InMaterialDetailImpl.java index 8236b5e2a..f95edc930 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/persistence/InMaterialDetailImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/persistence/InMaterialDetailImpl.java @@ -133,6 +133,10 @@ public class InMaterialDetailImpl extends ServiceImpl inMaterialDetailList = new ArrayList<>(); for (InMaterialDetailDO inMaterialDetailDO : inMaterialDetailDOList){ @@ -145,7 +149,7 @@ public class InMaterialDetailImpl extends ServiceImpl inMaterialDetailDbAllList = inMaterialDetailMapper.selectList(new QueryWrapper().lambda() @@ -218,7 +226,7 @@ public class InMaterialDetailImpl extends ServiceImpl().lambda() .set(InMaterialDetail::getDelFlag, 2) .set(InMaterialDetail::getUpdateBy, loginUser.getUserid()) - .set(InMaterialDetail::getUpdateByName, loginUser.getUsername()) + .set(InMaterialDetail::getUpdateByName, userRealName) .set(InMaterialDetail::getUpdateTime, new Date()) .in(InMaterialDetail::getMaterialDetailId, materialDetailIdsByDb)); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inOrderAbnormal/repository/persistence/InOrderAbnormalImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inOrderAbnormal/repository/persistence/InOrderAbnormalImpl.java index 329da5028..d55be09e2 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/inOrderAbnormal/repository/persistence/InOrderAbnormalImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inOrderAbnormal/repository/persistence/InOrderAbnormalImpl.java @@ -140,6 +140,13 @@ public class InOrderAbnormalImpl extends ServiceImpl genShelfOrderMaterialDetailList(InOrderAbnormalBaseDO inOrderAbnormalBaseDO, List 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 inOrderAbnormalList = new ArrayList<>(); for (ShelfMaterialDetail shelfMaterialDetail : shelfMaterialDetailList){ //上架 @@ -165,7 +172,7 @@ public class InOrderAbnormalImpl extends ServiceImpl genReceiptOrderMaterialDetailList(InOrderAbnormalBaseDO inOrderAbnormalBaseDO, List 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 inOrderAbnormalList = new ArrayList<>(); for (ReceiptMaterialDetail receiptMaterialDetail : receiptMaterialDetailList){ //收货 @@ -203,7 +217,7 @@ public class InOrderAbnormalImpl extends ServiceImpl outMaterialDetailList = new ArrayList<>(); for (OutMaterialDetailDO outMaterialDetailDO : outMaterialDetailDOList){ OutMaterialDetail outMaterialDetail = new OutMaterialDetail(); @@ -163,7 +170,7 @@ public class OutMaterialDetailImpl extends ServiceImpl genPickingOrderMaterialDetailList(OutOrderAbnormalBaseDO OutOrderAbnormalBaseDO, List pickingMaterialDetailList){ 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 outOrderAbnormalList = new ArrayList<>(); //BigDecimal actualQuantity = BigDecimal.ZERO; for (PickingMaterialDetail pickingMaterialDetail : pickingMaterialDetailList){ @@ -163,7 +170,7 @@ public class OutOrderAbnormalImpl extends ServiceImpl genCheckOrderMaterialDetailList(OutOrderAbnormalBaseDO OutOrderAbnormalBaseDO, List outMaterialDetailList){ 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 outOrderAbnormalList = new ArrayList<>(); for (OutMaterialDetail outMaterialDetail : outMaterialDetailList){ //复核 @@ -203,7 +217,7 @@ public class OutOrderAbnormalImpl extends ServiceImpl pickingOrderDOList) { LoginUser loginUser = SecurityUtils.getLoginUser(); Long userId = loginUser.getUserid(); - String userName = loginUser.getUsername(); + // 获取用户姓名(优先从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(); Date date = new Date(); List pickingOrderList = new ArrayList<>(); for (PickingOrderDO pickingOrderDO : pickingOrderDOList){ @@ -69,10 +75,12 @@ public class PickingOrderImpl extends ServiceImpl pickingOrderDOList) { + // 统一设置拣货单的创建人/修改人为当前登录用户(使用用户姓名,而不是账号) + LoginUser loginUser = SecurityUtils.getLoginUser(); + if (loginUser != null && loginUser.getUserPo() != null) { + final Long userId = loginUser.getUserid(); + // 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底) + final String userRealName = (loginUser.getUserPo().getUserName() != null + && !loginUser.getUserPo().getUserName().trim().isEmpty()) + ? loginUser.getUserPo().getUserName() + : (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty()) + ? loginUser.getRealname() + : loginUser.getUsername(); + final Date now = new Date(); + for (PickingOrderDO pickingOrderDO : pickingOrderDOList) { + // 覆盖来源出库单中可能携带的旧的账号型创建人/修改人信息 + pickingOrderDO.setCreateBy(userId); + pickingOrderDO.setCreateByName(userRealName); + if (pickingOrderDO.getCreateTime() == null) { + pickingOrderDO.setCreateTime(now); + } + pickingOrderDO.setUpdateBy(userId); + pickingOrderDO.setUpdateByName(userRealName); + pickingOrderDO.setUpdateTime(now); + } + } + pickingOrderService.batchInsert(pickingOrderDOList); List pickingMaterialDetailList = new ArrayList<>(); for (PickingOrderDO pickingOrderDO : pickingOrderDOList){ @@ -160,6 +185,13 @@ public class PickingOrderDomainService { */ private PickingMaterialDetail genPickingMaterialDetail(PickingMaterialDetailDO pickingMaterialDetailDO){ 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(); PickingMaterialDetail pickingMaterialDetail = new PickingMaterialDetail(); BeanUtils.copyProperties(pickingMaterialDetailDO, pickingMaterialDetail, "createBy","createByName","createTime", "updateBy","updateByName","updateTime"); @@ -168,7 +200,7 @@ public class PickingOrderDomainService { pickingMaterialDetail.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); pickingMaterialDetail.setUniqueId(idGenerator.snowflakeId(SnowFlakeConstants.wmsId)); pickingMaterialDetail.setCreateBy(loginUser.getUserid()); - pickingMaterialDetail.setCreateByName(loginUser.getUsername()); + pickingMaterialDetail.setCreateByName(userRealName); pickingMaterialDetail.setCreateTime(new Date()); return pickingMaterialDetail; } @@ -739,6 +771,13 @@ public class PickingOrderDomainService { @Transactional(rollbackFor = Exception.class) public void genDeliveTask(PickingOrderDO pickingOrderDO, List stockOutTaskOrderDOList){ 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 deliveTaskDOList = new ArrayList<>(); for (StockOutTaskOrderDO stockOutTaskOrderDO : stockOutTaskOrderDOList){ DeliveTaskDO deliveTaskDO = new DeliveTaskDO(); @@ -753,12 +792,12 @@ public class PickingOrderDomainService { deliveTaskDO.setTaskType(3); deliveTaskDO.setTaskDistribution(1); deliveTaskDO.setTaskDistributionId(loginUser.getUserid()); - deliveTaskDO.setTaskDistributionName(loginUser.getUsername()); + deliveTaskDO.setTaskDistributionName(userRealName); deliveTaskDO.setTaskDistributionTime(new Date()); deliveTaskDO.setOperatorsBy(pickingOrderDO.getOperatorsBy()); deliveTaskDO.setOperatorsName(pickingOrderDO.getOperatorsName()); deliveTaskDO.setCreateBy(loginUser.getUserid()); - deliveTaskDO.setCreateByName(loginUser.getUsername()); + deliveTaskDO.setCreateByName(userRealName); deliveTaskDO.setCreateTime(new Date()); deliveTaskDOList.add(deliveTaskDO); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/service/StockInOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/service/StockInOrderDomainService.java index de3cc88a6..f1d320bb4 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/service/StockInOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/service/StockInOrderDomainService.java @@ -373,15 +373,19 @@ public class StockInOrderDomainService { if (stockInOrderDO.getAuditStatus() == 3){ auditApprove(stockInOrderDO); } + // 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底) + String userRealName = loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null + ? loginUser.getUserPo().getUserName() + : (loginUser.getRealname() != null ? loginUser.getRealname() : loginUser.getUsername()); return stockInOrderService.update(null, new UpdateWrapper().lambda() .set(3 == stockInOrderDO.getAuditStatus(), StockInOrder::getStatus, 2) .set(StockInOrder::getAuditStatus, stockInOrderDO.getAuditStatus()) .set(StockInOrder::getAuditRemark, stockInOrderDO.getAuditRemark()) .set(StockInOrder::getAuditBy, loginUser.getUserid()) - .set(StockInOrder::getAuditByName, loginUser.getUsername()) + .set(StockInOrder::getAuditByName, userRealName) .set(StockInOrder::getAuditTime, new Date()) .set(StockInOrder::getUpdateBy, loginUser.getUserid()) - .set(StockInOrder::getUpdateByName, loginUser.getUsername()) + .set(StockInOrder::getUpdateByName, userRealName) .set(StockInOrder::getUpdateTime, new Date()) .in(StockInOrder::getInOrderId, stockInOrderDO.getInOrderIds())); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/listener/ExcelParseService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/listener/ExcelParseService.java index eda236076..7ab56d211 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/listener/ExcelParseService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/repository/listener/ExcelParseService.java @@ -124,11 +124,21 @@ public class ExcelParseService { } //设置创建时间和创建人信息 if (loginUser != null) { + // 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底) + String userRealName = null; + if (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null + && !loginUser.getUserPo().getUserName().trim().isEmpty()) { + userRealName = loginUser.getUserPo().getUserName(); + } else if (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty()) { + userRealName = loginUser.getRealname(); + } else { + userRealName = loginUser.getUsername(); + } stockOutOrder.setCreateBy(loginUser.getUserid()); - stockOutOrder.setCreateByName(loginUser.getUsername()); + stockOutOrder.setCreateByName(userRealName); stockOutOrder.setCreateTime(new Date()); stockOutOrder.setUpdateBy(loginUser.getUserid()); - stockOutOrder.setUpdateByName(loginUser.getUsername()); + stockOutOrder.setUpdateByName(userRealName); stockOutOrder.setUpdateTime(new Date()); stockOutOrder.setDelFlag(1); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/service/StockOutOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/service/StockOutOrderDomainService.java index df229ea4e..d079288fc 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/service/StockOutOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutOrder/service/StockOutOrderDomainService.java @@ -519,6 +519,10 @@ public class StockOutOrderDomainService { @Transactional(rollbackFor = Exception.class) public Boolean auditState(StockOutOrderDO stockOutOrderDO) { LoginUser loginUser = SecurityUtils.getLoginUser(); + // 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底) + String userRealName = loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null + ? loginUser.getUserPo().getUserName() + : (loginUser.getRealname() != null ? loginUser.getRealname() : loginUser.getUsername()); //统计是否已经审核 int count = stockOutOrderService.count(new QueryWrapper().lambda() .eq(StockOutOrder::getAuditStatus, 3) @@ -532,10 +536,10 @@ public class StockOutOrderDomainService { .set(StockOutOrder::getAuditStatus, stockOutOrderDO.getAuditStatus()) .set(StockOutOrder::getAuditRemark, stockOutOrderDO.getAuditRemark()) .set(StockOutOrder::getAuditBy, loginUser.getUserid()) - .set(StockOutOrder::getAuditByName, loginUser.getUsername()) + .set(StockOutOrder::getAuditByName, userRealName) .set(StockOutOrder::getAuditTime, new Date()) .set(StockOutOrder::getUpdateBy, loginUser.getUserid()) - .set(StockOutOrder::getUpdateByName, loginUser.getUsername()) + .set(StockOutOrder::getUpdateByName, userRealName) .set(StockOutOrder::getUpdateTime, new Date()) .in(StockOutOrder::getOutOrderId, stockOutOrderDO.getOutOrderIds())); } @@ -1296,8 +1300,12 @@ public class StockOutOrderDomainService { stockInOrderDO.setOrderTypeName("调拨入库"); stockInOrderDO.setDirectWarehouse(2); stockInOrderDO.setMaterialQuantity(mobilizeManageDetailPOList.size()); + // 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底) + String userRealName = loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null + ? loginUser.getUserPo().getUserName() + : (loginUser.getRealname() != null ? loginUser.getRealname() : loginUser.getUsername()); stockInOrderDO.setCreateBy(loginUser.getUserid()); - stockInOrderDO.setCreateByName(loginUser.getUsername()); + stockInOrderDO.setCreateByName(userRealName); stockInOrderDO.setCreateTime(new Date()); //统计总计划数 BigDecimal quantity = stockInOrderDO.getMaterialDetailList().stream().map(InMaterialDetailDO::getQuantity).reduce(BigDecimal.ZERO, BigDecimal::add); @@ -1333,6 +1341,10 @@ public class StockOutOrderDomainService { return; } LoginUser loginUser = SecurityUtils.getLoginUser(); + // 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底) + String userRealName = loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null + ? loginUser.getUserPo().getUserName() + : (loginUser.getRealname() != null ? loginUser.getRealname() : loginUser.getUsername()); HandoverTaskOrderDO handoverTaskOrderDO = new HandoverTaskOrderDO(); handoverTaskOrderDO.setOrganizationId(stockOutOrderPO.getOrganizationId()); handoverTaskOrderDO.setOrganizationName(stockOutOrderPO.getOrganizationName()); @@ -1350,7 +1362,7 @@ public class StockOutOrderDomainService { handoverTaskOrderDO.setExpectTime(stockOutOrderPO.getExpectTime()); handoverTaskOrderDO.setOrderNumber(stockOutOrderPO.getOutOrderNumber()); handoverTaskOrderDO.setCreateBy(loginUser.getUserid()); - handoverTaskOrderDO.setCreateByName(loginUser.getUsername()); + handoverTaskOrderDO.setCreateByName(userRealName); handoverTaskOrderDO.setCreateTime(new Date()); handoverTaskOrderService.insert(handoverTaskOrderDO);; } @@ -1401,6 +1413,13 @@ public class StockOutOrderDomainService { @Transactional(rollbackFor = Exception.class) public void genDeliveTask(List stockOutOrderPOList, StockOutOrderDO stockOutOrderDO){ 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 deliveTaskDOList = new ArrayList<>(); for (StockOutOrderPO stockOutOrderPO : stockOutOrderPOList){ DeliveTaskDO deliveTaskDO = new DeliveTaskDO(); @@ -1415,12 +1434,12 @@ public class StockOutOrderDomainService { deliveTaskDO.setTaskType(4); deliveTaskDO.setTaskDistribution(1); deliveTaskDO.setTaskDistributionId(loginUser.getUserid()); - deliveTaskDO.setTaskDistributionName(loginUser.getUsername()); + deliveTaskDO.setTaskDistributionName(userRealName); deliveTaskDO.setTaskDistributionTime(new Date()); deliveTaskDO.setOperatorsBy(stockOutOrderDO.getCheckOperatorsBy()); deliveTaskDO.setOperatorsName(stockOutOrderDO.getCheckOperatorsName()); deliveTaskDO.setCreateBy(loginUser.getUserid()); - deliveTaskDO.setCreateByName(loginUser.getUsername()); + deliveTaskDO.setCreateByName(userRealName); deliveTaskDO.setCreateTime(new Date()); deliveTaskDOList.add(deliveTaskDO); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutTaskOrder/repository/persistence/StockOutTaskOrderImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutTaskOrder/repository/persistence/StockOutTaskOrderImpl.java index 05eaf850f..10927c26a 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutTaskOrder/repository/persistence/StockOutTaskOrderImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockOutTaskOrder/repository/persistence/StockOutTaskOrderImpl.java @@ -107,6 +107,13 @@ public class StockOutTaskOrderImpl extends ServiceImpl stockOutTaskOrderList = new ArrayList<>(); List taskPickingMaterialDetailList = new ArrayList<>(); + // 获取用户姓名(优先从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(); stockOutTaskOrderDOList.forEach(stockOutTaskOrderDO -> { StockOutTaskOrder stockOutTaskOrder = new StockOutTaskOrder(); BeanUtils.copyProperties(stockOutTaskOrderDO, stockOutTaskOrder, "materialDetailId", "status", "createBy","createByName","createTime", @@ -115,10 +122,10 @@ public class StockOutTaskOrderImpl extends ServiceImpl 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 stockReceiptOrderList = new ArrayList<>(); List 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().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())); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java index 1943c413d..848c87ecd 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockShelfOrder/service/StockShelfOrderDomainService.java @@ -146,6 +146,13 @@ public class StockShelfOrderDomainService { @Transactional(rollbackFor = Exception.class) public Boolean genStockShelfOrder(List 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 stockShelfOrderList = new ArrayList<>(); List 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 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 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); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/inOrderAbnormal/InOrderAbnormalAssembler.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/inOrderAbnormal/InOrderAbnormalAssembler.java index 99bc3c3c6..771b62ef2 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/inOrderAbnormal/InOrderAbnormalAssembler.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/inOrderAbnormal/InOrderAbnormalAssembler.java @@ -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); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockInOrder/StockInOrderAssembler.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockInOrder/StockInOrderAssembler.java index 2c741d1cf..6ddd1e5cc 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockInOrder/StockInOrderAssembler.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockInOrder/StockInOrderAssembler.java @@ -56,19 +56,32 @@ public class StockInOrderAssembler { 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(stockInOrderDTO.getInOrderId() != null){ stockInOrderDO.setUpdateBy(userId); - stockInOrderDO.setUpdateByName(userName); + stockInOrderDO.setUpdateByName(userRealName); stockInOrderDO.setUpdateTime(new Date()); }else { stockInOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); stockInOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); stockInOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); stockInOrderDO.setCreateBy(userId); - stockInOrderDO.setCreateByName(userName); + // 强制设置创建人姓名为用户真实姓名,确保覆盖前端可能传递的账号 + stockInOrderDO.setCreateByName(userRealName); stockInOrderDO.setCreateTime(new Date()); stockInOrderDO.setDelFlag(1); // 新增入库单时,如果入库单类型为空,默认设置为普通入库 diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockOutOrder/StockOutOrderAssembler.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockOutOrder/StockOutOrderAssembler.java index d7eee2642..eab32d9ca 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockOutOrder/StockOutOrderAssembler.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockOutOrder/StockOutOrderAssembler.java @@ -48,22 +48,34 @@ public class StockOutOrderAssembler { 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(stockOutOrderDTO.getOutOrderId() != null){ stockOutOrderDO.setUpdateBy(userId); - stockOutOrderDO.setUpdateByName(userName); + stockOutOrderDO.setUpdateByName(userRealName); stockOutOrderDO.setUpdateTime(new Date()); }else { stockOutOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); stockOutOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); stockOutOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); stockOutOrderDO.setCreateBy(userId); - stockOutOrderDO.setCreateByName(userName); + stockOutOrderDO.setCreateByName(userRealName); stockOutOrderDO.setCreateTime(new Date()); stockOutOrderDO.setUpdateBy(userId); - stockOutOrderDO.setUpdateByName(userName); + stockOutOrderDO.setUpdateByName(userRealName); stockOutOrderDO.setUpdateTime(new Date()); stockOutOrderDO.setDelFlag(1); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockOutTaskOrder/StockOutTaskOrderAssembler.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockOutTaskOrder/StockOutTaskOrderAssembler.java index 12c8abe44..d88604626 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockOutTaskOrder/StockOutTaskOrderAssembler.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/stockOutTaskOrder/StockOutTaskOrderAssembler.java @@ -52,19 +52,28 @@ public class StockOutTaskOrderAssembler { if (ObjectUtil.isNull(loginUser)) { throw new DigitalLogisticsException(UserError.TIMEOUT); } - String userName = loginUser.getUsername(); + // 获取用户姓名(优先从UserPo获取,如果为空则使用realname,最后使用username作为兜底) + String userRealName = null; + if (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null + && !loginUser.getUserPo().getUserName().trim().isEmpty()) { + userRealName = loginUser.getUserPo().getUserName(); + } else if (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty()) { + userRealName = loginUser.getRealname(); + } else { + userRealName = loginUser.getUsername(); + } // 获取登录人id Long userId = loginUser.getUserid(); if(stockOutTaskOrderDTO.getOutTaskOrderId() != null){ stockOutTaskOrderDO.setUpdateBy(userId); - stockOutTaskOrderDO.setUpdateByName(userName); + stockOutTaskOrderDO.setUpdateByName(userRealName); stockOutTaskOrderDO.setUpdateTime(new Date()); }else { stockOutTaskOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); stockOutTaskOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); stockOutTaskOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); stockOutTaskOrderDO.setCreateBy(userId); - stockOutTaskOrderDO.setCreateByName(userName); + stockOutTaskOrderDO.setCreateByName(userRealName); stockOutTaskOrderDO.setCreateTime(new Date()); stockOutTaskOrderDO.setDelFlag(1); } diff --git a/mhd_wms/src/main/resources/mapper/inventoryAdjustmentRecord/InventoryAdjustmentRecordMapper.xml b/mhd_wms/src/main/resources/mapper/inventoryAdjustmentRecord/InventoryAdjustmentRecordMapper.xml index 1ba2d8ec9..ae082b673 100644 --- a/mhd_wms/src/main/resources/mapper/inventoryAdjustmentRecord/InventoryAdjustmentRecordMapper.xml +++ b/mhd_wms/src/main/resources/mapper/inventoryAdjustmentRecord/InventoryAdjustmentRecordMapper.xml @@ -54,6 +54,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + @@ -67,7 +69,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" a.freeze_after_quantity, a.create_time, a.create_by, a.create_by_name, a.update_time, a.update_by, a.update_by_name, a.del_flag,b.ext_attr_1, b.ext_attr_2, b.ext_attr_3, b.ext_attr_4, b.production_date, b.expiry_date, b.inventory_date, - b.batch_ref_no, b.sheet_ref_no, b.box_pallet_no + b.batch_ref_no, b.sheet_ref_no, b.box_pallet_no,a.ADJUST_ACTION,a.RELATE_NO from inventory_adjustment_record a left join material_inventory b on a.material_inventory_id = b.material_inventory_id where a.del_flag = 1