WMS入库管理的创建人姓名,审核人姓名修改存账号的姓名

This commit is contained in:
秦鸿展
2026-03-03 14:42:35 +08:00
parent 485db7adcc
commit 5c84eb2095
5 changed files with 48 additions and 10 deletions
@@ -32,7 +32,7 @@ public class BaseVOEntity implements Serializable
@ApiModelProperty(value = "更新者")
private Long updateBy;
@ApiModelProperty(name = "创建者姓名")
@ApiModelProperty(name = "更新人姓名")
private String updateByName;
@ApiModelProperty(value = "更新时间")
@@ -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());
@@ -133,6 +133,10 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
throw new ServiceException("物料明细不能为空");
}
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());
// 批量新增或修改
List<InMaterialDetail> inMaterialDetailList = new ArrayList<>();
for (InMaterialDetailDO inMaterialDetailDO : inMaterialDetailDOList){
@@ -145,7 +149,7 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
inMaterialDetail.setInOrderNumber(inOrderNumber);
inMaterialDetail.setLevel(1);
inMaterialDetail.setCreateBy(loginUser.getUserid());
inMaterialDetail.setCreateByName(loginUser.getUsername());
inMaterialDetail.setCreateByName(userRealName);
inMaterialDetail.setCreateTime(new Date());
// 新增入库单明细时,如果计划数量为空,则使用入库数量作为计划数量
if (inMaterialDetail.getQuantity() == null && inMaterialDetailDO.getInboundQuantity() != null) {
@@ -171,6 +175,10 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
throw new ServiceException("物料明细不能为空");
}
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());
// 查询所有记录(包括已删除的),用于判断是否需要恢复已删除的记录
List<InMaterialDetail> inMaterialDetailDbAllList = inMaterialDetailMapper.selectList(new QueryWrapper<InMaterialDetail>().lambda()
@@ -218,7 +226,7 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
}else {
BeanUtils.copyProperties(inMaterialDetailDO, inMaterialDetail);
inMaterialDetail.setUpdateBy(loginUser.getUserid());
inMaterialDetail.setUpdateByName(loginUser.getUsername());
inMaterialDetail.setUpdateByName(userRealName);
inMaterialDetail.setUpdateTime(new Date());
materialDetailIdsByUpdate.add(inMaterialDetailDO.getMaterialDetailId());
}
@@ -234,7 +242,7 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
update(new UpdateWrapper<InMaterialDetail>().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));
}
@@ -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<StockInOrder>().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()));
}
@@ -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);
// 新增入库单时,如果入库单类型为空,默认设置为普通入库