WMS出库管理、拣货管理、出库交接、出库异常、拣货作业单的创建人姓名,审核人姓名修改存账号的姓名

This commit is contained in:
秦鸿展
2026-03-03 16:06:40 +08:00
parent 7e3228807b
commit 849b8da2dc
10 changed files with 162 additions and 30 deletions
@@ -307,6 +307,13 @@ public class HandoverTaskOrderDomainService {
private void genDeliveTask(List<HandoverTaskOrder> handoverTaskOrders, HandoverTaskOrderDO handoverTaskOrderDO) { private void genDeliveTask(List<HandoverTaskOrder> handoverTaskOrders, HandoverTaskOrderDO handoverTaskOrderDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); 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<>(); List<DeliveTaskDO> deliveTaskDOList = new ArrayList<>();
for (HandoverTaskOrder handoverTaskOrder : handoverTaskOrders) { for (HandoverTaskOrder handoverTaskOrder : handoverTaskOrders) {
DeliveTaskDO deliveTaskDO = new DeliveTaskDO(); DeliveTaskDO deliveTaskDO = new DeliveTaskDO();
@@ -321,12 +328,12 @@ public class HandoverTaskOrderDomainService {
deliveTaskDO.setTaskType(7); deliveTaskDO.setTaskType(7);
deliveTaskDO.setTaskDistribution(1); deliveTaskDO.setTaskDistribution(1);
deliveTaskDO.setTaskDistributionId(loginUser.getUserid()); deliveTaskDO.setTaskDistributionId(loginUser.getUserid());
deliveTaskDO.setTaskDistributionName(loginUser.getUsername()); deliveTaskDO.setTaskDistributionName(userRealName);
deliveTaskDO.setTaskDistributionTime(new Date()); deliveTaskDO.setTaskDistributionTime(new Date());
deliveTaskDO.setOperatorsBy(handoverTaskOrderDO.getOperatorsBy()); deliveTaskDO.setOperatorsBy(handoverTaskOrderDO.getOperatorsBy());
deliveTaskDO.setOperatorsName(handoverTaskOrderDO.getOperatorsName()); deliveTaskDO.setOperatorsName(handoverTaskOrderDO.getOperatorsName());
deliveTaskDO.setCreateBy(loginUser.getUserid()); deliveTaskDO.setCreateBy(loginUser.getUserid());
deliveTaskDO.setCreateByName(loginUser.getUsername()); deliveTaskDO.setCreateByName(userRealName);
deliveTaskDO.setCreateTime(new Date()); deliveTaskDO.setCreateTime(new Date());
deliveTaskDOList.add(deliveTaskDO); deliveTaskDOList.add(deliveTaskDO);
} }
@@ -153,6 +153,13 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
} }
LoginUser loginUser = SecurityUtils.getLoginUser(); 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<OutMaterialDetail> outMaterialDetailList = new ArrayList<>(); List<OutMaterialDetail> outMaterialDetailList = new ArrayList<>();
for (OutMaterialDetailDO outMaterialDetailDO : outMaterialDetailDOList){ for (OutMaterialDetailDO outMaterialDetailDO : outMaterialDetailDOList){
OutMaterialDetail outMaterialDetail = new OutMaterialDetail(); OutMaterialDetail outMaterialDetail = new OutMaterialDetail();
@@ -163,7 +170,7 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
outMaterialDetail.setOrganizationId(loginUser.getUserPo().getOrganizationId()); outMaterialDetail.setOrganizationId(loginUser.getUserPo().getOrganizationId());
outMaterialDetail.setOrganizationName(loginUser.getUserPo().getOrganizationName()); outMaterialDetail.setOrganizationName(loginUser.getUserPo().getOrganizationName());
outMaterialDetail.setCreateBy(loginUser.getUserid()); outMaterialDetail.setCreateBy(loginUser.getUserid());
outMaterialDetail.setCreateByName(loginUser.getUsername()); outMaterialDetail.setCreateByName(userRealName);
outMaterialDetail.setCreateTime(new Date()); outMaterialDetail.setCreateTime(new Date());
outMaterialDetail.setQuantity(outMaterialDetail.getOutboundQuantity()); outMaterialDetail.setQuantity(outMaterialDetail.getOutboundQuantity());
String materialNo = outMaterialDetail.getMaterialNo(); String materialNo = outMaterialDetail.getMaterialNo();
@@ -139,6 +139,13 @@ public class OutOrderAbnormalImpl extends ServiceImpl<OutOrderAbnormalMapper, Ou
*/ */
private List<OutOrderAbnormal> genPickingOrderMaterialDetailList(OutOrderAbnormalBaseDO OutOrderAbnormalBaseDO, List<PickingMaterialDetail> pickingMaterialDetailList){ private List<OutOrderAbnormal> genPickingOrderMaterialDetailList(OutOrderAbnormalBaseDO OutOrderAbnormalBaseDO, List<PickingMaterialDetail> pickingMaterialDetailList){
LoginUser loginUser = SecurityUtils.getLoginUser(); 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<OutOrderAbnormal> outOrderAbnormalList = new ArrayList<>(); List<OutOrderAbnormal> outOrderAbnormalList = new ArrayList<>();
//BigDecimal actualQuantity = BigDecimal.ZERO; //BigDecimal actualQuantity = BigDecimal.ZERO;
for (PickingMaterialDetail pickingMaterialDetail : pickingMaterialDetailList){ for (PickingMaterialDetail pickingMaterialDetail : pickingMaterialDetailList){
@@ -163,7 +170,7 @@ public class OutOrderAbnormalImpl extends ServiceImpl<OutOrderAbnormalMapper, Ou
} }
outOrderAbnormal.setAbnormalActualQuantity(pickingMaterialDetail.getPickingQuantity().subtract(pickingMaterialDetail.getQuantity())); outOrderAbnormal.setAbnormalActualQuantity(pickingMaterialDetail.getPickingQuantity().subtract(pickingMaterialDetail.getQuantity()));
outOrderAbnormal.setCreateBy(loginUser.getUserid()); outOrderAbnormal.setCreateBy(loginUser.getUserid());
outOrderAbnormal.setCreateByName(loginUser.getUsername()); outOrderAbnormal.setCreateByName(userRealName);
outOrderAbnormal.setCreateTime(new Date()); outOrderAbnormal.setCreateTime(new Date());
outOrderAbnormalList.add(outOrderAbnormal); outOrderAbnormalList.add(outOrderAbnormal);
} }
@@ -181,6 +188,13 @@ public class OutOrderAbnormalImpl extends ServiceImpl<OutOrderAbnormalMapper, Ou
*/ */
private List<OutOrderAbnormal> genCheckOrderMaterialDetailList(OutOrderAbnormalBaseDO OutOrderAbnormalBaseDO, List<OutMaterialDetail> outMaterialDetailList){ private List<OutOrderAbnormal> genCheckOrderMaterialDetailList(OutOrderAbnormalBaseDO OutOrderAbnormalBaseDO, List<OutMaterialDetail> outMaterialDetailList){
LoginUser loginUser = SecurityUtils.getLoginUser(); 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<OutOrderAbnormal> outOrderAbnormalList = new ArrayList<>(); List<OutOrderAbnormal> outOrderAbnormalList = new ArrayList<>();
for (OutMaterialDetail outMaterialDetail : outMaterialDetailList){ for (OutMaterialDetail outMaterialDetail : outMaterialDetailList){
//复核 //复核
@@ -203,7 +217,7 @@ public class OutOrderAbnormalImpl extends ServiceImpl<OutOrderAbnormalMapper, Ou
} }
outOrderAbnormal.setAbnormalActualQuantity(outMaterialDetail.getCheckQuantity().subtract(outMaterialDetail.getPickingQuantity())); outOrderAbnormal.setAbnormalActualQuantity(outMaterialDetail.getCheckQuantity().subtract(outMaterialDetail.getPickingQuantity()));
outOrderAbnormal.setCreateBy(loginUser.getUserid()); outOrderAbnormal.setCreateBy(loginUser.getUserid());
outOrderAbnormal.setCreateByName(loginUser.getUsername()); outOrderAbnormal.setCreateByName(userRealName);
outOrderAbnormal.setCreateTime(new Date()); outOrderAbnormal.setCreateTime(new Date());
outOrderAbnormalList.add(outOrderAbnormal); outOrderAbnormalList.add(outOrderAbnormal);
} }
@@ -61,7 +61,13 @@ public class PickingOrderImpl extends ServiceImpl<PickingOrderMapper, PickingOrd
public Boolean batchInsert(List<PickingOrderDO> pickingOrderDOList) { public Boolean batchInsert(List<PickingOrderDO> pickingOrderDOList) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
Long userId = loginUser.getUserid(); 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(); Date date = new Date();
List<PickingOrder> pickingOrderList = new ArrayList<>(); List<PickingOrder> pickingOrderList = new ArrayList<>();
for (PickingOrderDO pickingOrderDO : pickingOrderDOList){ for (PickingOrderDO pickingOrderDO : pickingOrderDOList){
@@ -69,10 +75,12 @@ public class PickingOrderImpl extends ServiceImpl<PickingOrderMapper, PickingOrd
BeanUtils.copyProperties(pickingOrderDO,pickingOrder, "status","createBy","createByName","createTime", BeanUtils.copyProperties(pickingOrderDO,pickingOrder, "status","createBy","createByName","createTime",
"updateBy","updateByName","updateTime"); "updateBy","updateByName","updateTime");
pickingOrder.setCreateBy(userId); pickingOrder.setCreateBy(userId);
pickingOrder.setCreateByName(userName); // 使用用户真实姓名,而不是账号
pickingOrder.setCreateByName(userRealName);
pickingOrder.setCreateTime(date); pickingOrder.setCreateTime(date);
pickingOrder.setUpdateBy(userId); pickingOrder.setUpdateBy(userId);
pickingOrder.setUpdateByName(userName); // 使用用户真实姓名,而不是账号
pickingOrder.setUpdateByName(userRealName);
pickingOrder.setUpdateTime(date); pickingOrder.setUpdateTime(date);
pickingOrderList.add(pickingOrder); pickingOrderList.add(pickingOrder);
} }
@@ -139,6 +139,31 @@ public class PickingOrderDomainService {
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean batchInsert(List<PickingOrderDO> pickingOrderDOList) { public Boolean batchInsert(List<PickingOrderDO> 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); pickingOrderService.batchInsert(pickingOrderDOList);
List<PickingMaterialDetail> pickingMaterialDetailList = new ArrayList<>(); List<PickingMaterialDetail> pickingMaterialDetailList = new ArrayList<>();
for (PickingOrderDO pickingOrderDO : pickingOrderDOList){ for (PickingOrderDO pickingOrderDO : pickingOrderDOList){
@@ -160,6 +185,13 @@ public class PickingOrderDomainService {
*/ */
private PickingMaterialDetail genPickingMaterialDetail(PickingMaterialDetailDO pickingMaterialDetailDO){ private PickingMaterialDetail genPickingMaterialDetail(PickingMaterialDetailDO pickingMaterialDetailDO){
LoginUser loginUser = SecurityUtils.getLoginUser(); 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(); PickingMaterialDetail pickingMaterialDetail = new PickingMaterialDetail();
BeanUtils.copyProperties(pickingMaterialDetailDO, pickingMaterialDetail, "createBy","createByName","createTime", BeanUtils.copyProperties(pickingMaterialDetailDO, pickingMaterialDetail, "createBy","createByName","createTime",
"updateBy","updateByName","updateTime"); "updateBy","updateByName","updateTime");
@@ -168,7 +200,7 @@ public class PickingOrderDomainService {
pickingMaterialDetail.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); pickingMaterialDetail.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
pickingMaterialDetail.setUniqueId(idGenerator.snowflakeId(SnowFlakeConstants.wmsId)); pickingMaterialDetail.setUniqueId(idGenerator.snowflakeId(SnowFlakeConstants.wmsId));
pickingMaterialDetail.setCreateBy(loginUser.getUserid()); pickingMaterialDetail.setCreateBy(loginUser.getUserid());
pickingMaterialDetail.setCreateByName(loginUser.getUsername()); pickingMaterialDetail.setCreateByName(userRealName);
pickingMaterialDetail.setCreateTime(new Date()); pickingMaterialDetail.setCreateTime(new Date());
return pickingMaterialDetail; return pickingMaterialDetail;
} }
@@ -739,6 +771,13 @@ public class PickingOrderDomainService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void genDeliveTask(PickingOrderDO pickingOrderDO, List<StockOutTaskOrderDO> stockOutTaskOrderDOList){ public void genDeliveTask(PickingOrderDO pickingOrderDO, List<StockOutTaskOrderDO> stockOutTaskOrderDOList){
LoginUser loginUser = SecurityUtils.getLoginUser(); 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<>(); List<DeliveTaskDO> deliveTaskDOList = new ArrayList<>();
for (StockOutTaskOrderDO stockOutTaskOrderDO : stockOutTaskOrderDOList){ for (StockOutTaskOrderDO stockOutTaskOrderDO : stockOutTaskOrderDOList){
DeliveTaskDO deliveTaskDO = new DeliveTaskDO(); DeliveTaskDO deliveTaskDO = new DeliveTaskDO();
@@ -753,12 +792,12 @@ public class PickingOrderDomainService {
deliveTaskDO.setTaskType(3); deliveTaskDO.setTaskType(3);
deliveTaskDO.setTaskDistribution(1); deliveTaskDO.setTaskDistribution(1);
deliveTaskDO.setTaskDistributionId(loginUser.getUserid()); deliveTaskDO.setTaskDistributionId(loginUser.getUserid());
deliveTaskDO.setTaskDistributionName(loginUser.getUsername()); deliveTaskDO.setTaskDistributionName(userRealName);
deliveTaskDO.setTaskDistributionTime(new Date()); deliveTaskDO.setTaskDistributionTime(new Date());
deliveTaskDO.setOperatorsBy(pickingOrderDO.getOperatorsBy()); deliveTaskDO.setOperatorsBy(pickingOrderDO.getOperatorsBy());
deliveTaskDO.setOperatorsName(pickingOrderDO.getOperatorsName()); deliveTaskDO.setOperatorsName(pickingOrderDO.getOperatorsName());
deliveTaskDO.setCreateBy(loginUser.getUserid()); deliveTaskDO.setCreateBy(loginUser.getUserid());
deliveTaskDO.setCreateByName(loginUser.getUsername()); deliveTaskDO.setCreateByName(userRealName);
deliveTaskDO.setCreateTime(new Date()); deliveTaskDO.setCreateTime(new Date());
deliveTaskDOList.add(deliveTaskDO); deliveTaskDOList.add(deliveTaskDO);
} }
@@ -124,11 +124,21 @@ public class ExcelParseService {
} }
//设置创建时间和创建人信息 //设置创建时间和创建人信息
if (loginUser != null) { 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.setCreateBy(loginUser.getUserid());
stockOutOrder.setCreateByName(loginUser.getUsername()); stockOutOrder.setCreateByName(userRealName);
stockOutOrder.setCreateTime(new Date()); stockOutOrder.setCreateTime(new Date());
stockOutOrder.setUpdateBy(loginUser.getUserid()); stockOutOrder.setUpdateBy(loginUser.getUserid());
stockOutOrder.setUpdateByName(loginUser.getUsername()); stockOutOrder.setUpdateByName(userRealName);
stockOutOrder.setUpdateTime(new Date()); stockOutOrder.setUpdateTime(new Date());
stockOutOrder.setDelFlag(1); stockOutOrder.setDelFlag(1);
} }
@@ -519,6 +519,10 @@ public class StockOutOrderDomainService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean auditState(StockOutOrderDO stockOutOrderDO) { public Boolean auditState(StockOutOrderDO stockOutOrderDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); 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<StockOutOrder>().lambda() int count = stockOutOrderService.count(new QueryWrapper<StockOutOrder>().lambda()
.eq(StockOutOrder::getAuditStatus, 3) .eq(StockOutOrder::getAuditStatus, 3)
@@ -532,10 +536,10 @@ public class StockOutOrderDomainService {
.set(StockOutOrder::getAuditStatus, stockOutOrderDO.getAuditStatus()) .set(StockOutOrder::getAuditStatus, stockOutOrderDO.getAuditStatus())
.set(StockOutOrder::getAuditRemark, stockOutOrderDO.getAuditRemark()) .set(StockOutOrder::getAuditRemark, stockOutOrderDO.getAuditRemark())
.set(StockOutOrder::getAuditBy, loginUser.getUserid()) .set(StockOutOrder::getAuditBy, loginUser.getUserid())
.set(StockOutOrder::getAuditByName, loginUser.getUsername()) .set(StockOutOrder::getAuditByName, userRealName)
.set(StockOutOrder::getAuditTime, new Date()) .set(StockOutOrder::getAuditTime, new Date())
.set(StockOutOrder::getUpdateBy, loginUser.getUserid()) .set(StockOutOrder::getUpdateBy, loginUser.getUserid())
.set(StockOutOrder::getUpdateByName, loginUser.getUsername()) .set(StockOutOrder::getUpdateByName, userRealName)
.set(StockOutOrder::getUpdateTime, new Date()) .set(StockOutOrder::getUpdateTime, new Date())
.in(StockOutOrder::getOutOrderId, stockOutOrderDO.getOutOrderIds())); .in(StockOutOrder::getOutOrderId, stockOutOrderDO.getOutOrderIds()));
} }
@@ -1296,8 +1300,12 @@ public class StockOutOrderDomainService {
stockInOrderDO.setOrderTypeName("调拨入库"); stockInOrderDO.setOrderTypeName("调拨入库");
stockInOrderDO.setDirectWarehouse(2); stockInOrderDO.setDirectWarehouse(2);
stockInOrderDO.setMaterialQuantity(mobilizeManageDetailPOList.size()); 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.setCreateBy(loginUser.getUserid());
stockInOrderDO.setCreateByName(loginUser.getUsername()); stockInOrderDO.setCreateByName(userRealName);
stockInOrderDO.setCreateTime(new Date()); stockInOrderDO.setCreateTime(new Date());
//统计总计划数 //统计总计划数
BigDecimal quantity = stockInOrderDO.getMaterialDetailList().stream().map(InMaterialDetailDO::getQuantity).reduce(BigDecimal.ZERO, BigDecimal::add); BigDecimal quantity = stockInOrderDO.getMaterialDetailList().stream().map(InMaterialDetailDO::getQuantity).reduce(BigDecimal.ZERO, BigDecimal::add);
@@ -1333,6 +1341,10 @@ public class StockOutOrderDomainService {
return; return;
} }
LoginUser loginUser = SecurityUtils.getLoginUser(); 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 handoverTaskOrderDO = new HandoverTaskOrderDO();
handoverTaskOrderDO.setOrganizationId(stockOutOrderPO.getOrganizationId()); handoverTaskOrderDO.setOrganizationId(stockOutOrderPO.getOrganizationId());
handoverTaskOrderDO.setOrganizationName(stockOutOrderPO.getOrganizationName()); handoverTaskOrderDO.setOrganizationName(stockOutOrderPO.getOrganizationName());
@@ -1350,7 +1362,7 @@ public class StockOutOrderDomainService {
handoverTaskOrderDO.setExpectTime(stockOutOrderPO.getExpectTime()); handoverTaskOrderDO.setExpectTime(stockOutOrderPO.getExpectTime());
handoverTaskOrderDO.setOrderNumber(stockOutOrderPO.getOutOrderNumber()); handoverTaskOrderDO.setOrderNumber(stockOutOrderPO.getOutOrderNumber());
handoverTaskOrderDO.setCreateBy(loginUser.getUserid()); handoverTaskOrderDO.setCreateBy(loginUser.getUserid());
handoverTaskOrderDO.setCreateByName(loginUser.getUsername()); handoverTaskOrderDO.setCreateByName(userRealName);
handoverTaskOrderDO.setCreateTime(new Date()); handoverTaskOrderDO.setCreateTime(new Date());
handoverTaskOrderService.insert(handoverTaskOrderDO);; handoverTaskOrderService.insert(handoverTaskOrderDO);;
} }
@@ -1401,6 +1413,13 @@ public class StockOutOrderDomainService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void genDeliveTask(List<StockOutOrderPO> stockOutOrderPOList, StockOutOrderDO stockOutOrderDO){ public void genDeliveTask(List<StockOutOrderPO> stockOutOrderPOList, StockOutOrderDO stockOutOrderDO){
LoginUser loginUser = SecurityUtils.getLoginUser(); 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<>(); List<DeliveTaskDO> deliveTaskDOList = new ArrayList<>();
for (StockOutOrderPO stockOutOrderPO : stockOutOrderPOList){ for (StockOutOrderPO stockOutOrderPO : stockOutOrderPOList){
DeliveTaskDO deliveTaskDO = new DeliveTaskDO(); DeliveTaskDO deliveTaskDO = new DeliveTaskDO();
@@ -1415,12 +1434,12 @@ public class StockOutOrderDomainService {
deliveTaskDO.setTaskType(4); deliveTaskDO.setTaskType(4);
deliveTaskDO.setTaskDistribution(1); deliveTaskDO.setTaskDistribution(1);
deliveTaskDO.setTaskDistributionId(loginUser.getUserid()); deliveTaskDO.setTaskDistributionId(loginUser.getUserid());
deliveTaskDO.setTaskDistributionName(loginUser.getUsername()); deliveTaskDO.setTaskDistributionName(userRealName);
deliveTaskDO.setTaskDistributionTime(new Date()); deliveTaskDO.setTaskDistributionTime(new Date());
deliveTaskDO.setOperatorsBy(stockOutOrderDO.getCheckOperatorsBy()); deliveTaskDO.setOperatorsBy(stockOutOrderDO.getCheckOperatorsBy());
deliveTaskDO.setOperatorsName(stockOutOrderDO.getCheckOperatorsName()); deliveTaskDO.setOperatorsName(stockOutOrderDO.getCheckOperatorsName());
deliveTaskDO.setCreateBy(loginUser.getUserid()); deliveTaskDO.setCreateBy(loginUser.getUserid());
deliveTaskDO.setCreateByName(loginUser.getUsername()); deliveTaskDO.setCreateByName(userRealName);
deliveTaskDO.setCreateTime(new Date()); deliveTaskDO.setCreateTime(new Date());
deliveTaskDOList.add(deliveTaskDO); deliveTaskDOList.add(deliveTaskDO);
} }
@@ -107,6 +107,13 @@ public class StockOutTaskOrderImpl extends ServiceImpl<StockOutTaskOrderMapper,
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
List<StockOutTaskOrder> stockOutTaskOrderList = new ArrayList<>(); List<StockOutTaskOrder> stockOutTaskOrderList = new ArrayList<>();
List<TaskPickingMaterialDetail> taskPickingMaterialDetailList = new ArrayList<>(); List<TaskPickingMaterialDetail> 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 -> { stockOutTaskOrderDOList.forEach(stockOutTaskOrderDO -> {
StockOutTaskOrder stockOutTaskOrder = new StockOutTaskOrder(); StockOutTaskOrder stockOutTaskOrder = new StockOutTaskOrder();
BeanUtils.copyProperties(stockOutTaskOrderDO, stockOutTaskOrder, "materialDetailId", "status", "createBy","createByName","createTime", BeanUtils.copyProperties(stockOutTaskOrderDO, stockOutTaskOrder, "materialDetailId", "status", "createBy","createByName","createTime",
@@ -115,10 +122,10 @@ public class StockOutTaskOrderImpl extends ServiceImpl<StockOutTaskOrderMapper,
stockOutTaskOrder.setOrganizationName(loginUser.getUserPo().getOrganizationName()); stockOutTaskOrder.setOrganizationName(loginUser.getUserPo().getOrganizationName());
stockOutTaskOrder.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); stockOutTaskOrder.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
stockOutTaskOrder.setCreateBy(loginUser.getUserid()); stockOutTaskOrder.setCreateBy(loginUser.getUserid());
stockOutTaskOrder.setCreateByName(loginUser.getUsername()); stockOutTaskOrder.setCreateByName(userRealName);
stockOutTaskOrder.setCreateTime(new Date()); stockOutTaskOrder.setCreateTime(new Date());
stockOutTaskOrder.setUpdateBy(loginUser.getUserid()); stockOutTaskOrder.setUpdateBy(loginUser.getUserid());
stockOutTaskOrder.setUpdateByName(loginUser.getUsername()); stockOutTaskOrder.setUpdateByName(userRealName);
stockOutTaskOrder.setUpdateTime(new Date()); stockOutTaskOrder.setUpdateTime(new Date());
stockOutTaskOrder.setOperatorsBy(stockOutTaskOrderDO.getOperatorsBy()); stockOutTaskOrder.setOperatorsBy(stockOutTaskOrderDO.getOperatorsBy());
stockOutTaskOrder.setOperatorsName(stockOutTaskOrderDO.getOperatorsName()); stockOutTaskOrder.setOperatorsName(stockOutTaskOrderDO.getOperatorsName());
@@ -133,10 +140,10 @@ public class StockOutTaskOrderImpl extends ServiceImpl<StockOutTaskOrderMapper,
taskPickingMaterialDetail.setOrganizationName(loginUser.getUserPo().getOrganizationName()); taskPickingMaterialDetail.setOrganizationName(loginUser.getUserPo().getOrganizationName());
taskPickingMaterialDetail.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); taskPickingMaterialDetail.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
taskPickingMaterialDetail.setCreateBy(loginUser.getUserid()); taskPickingMaterialDetail.setCreateBy(loginUser.getUserid());
taskPickingMaterialDetail.setCreateByName(loginUser.getUsername()); taskPickingMaterialDetail.setCreateByName(userRealName);
taskPickingMaterialDetail.setCreateTime(new Date()); taskPickingMaterialDetail.setCreateTime(new Date());
taskPickingMaterialDetail.setUpdateBy(loginUser.getUserid()); taskPickingMaterialDetail.setUpdateBy(loginUser.getUserid());
taskPickingMaterialDetail.setUpdateByName(loginUser.getUsername()); taskPickingMaterialDetail.setUpdateByName(userRealName);
taskPickingMaterialDetail.setUpdateTime(new Date()); taskPickingMaterialDetail.setUpdateTime(new Date());
taskPickingMaterialDetailList.add(taskPickingMaterialDetail); taskPickingMaterialDetailList.add(taskPickingMaterialDetail);
}); });
@@ -48,22 +48,34 @@ public class StockOutOrderAssembler {
if (ObjectUtil.isNull(loginUser)) { if (ObjectUtil.isNull(loginUser)) {
throw new DigitalLogisticsException(UserError.TIMEOUT); throw new DigitalLogisticsException(UserError.TIMEOUT);
} }
String userName = loginUser.getUsername();
// 获取登录人id // 获取登录人id
Long userId = loginUser.getUserid(); 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){ if(stockOutOrderDTO.getOutOrderId() != null){
stockOutOrderDO.setUpdateBy(userId); stockOutOrderDO.setUpdateBy(userId);
stockOutOrderDO.setUpdateByName(userName); stockOutOrderDO.setUpdateByName(userRealName);
stockOutOrderDO.setUpdateTime(new Date()); stockOutOrderDO.setUpdateTime(new Date());
}else { }else {
stockOutOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); stockOutOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId());
stockOutOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); stockOutOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName());
stockOutOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); stockOutOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
stockOutOrderDO.setCreateBy(userId); stockOutOrderDO.setCreateBy(userId);
stockOutOrderDO.setCreateByName(userName); stockOutOrderDO.setCreateByName(userRealName);
stockOutOrderDO.setCreateTime(new Date()); stockOutOrderDO.setCreateTime(new Date());
stockOutOrderDO.setUpdateBy(userId); stockOutOrderDO.setUpdateBy(userId);
stockOutOrderDO.setUpdateByName(userName); stockOutOrderDO.setUpdateByName(userRealName);
stockOutOrderDO.setUpdateTime(new Date()); stockOutOrderDO.setUpdateTime(new Date());
stockOutOrderDO.setDelFlag(1); stockOutOrderDO.setDelFlag(1);
} }
@@ -52,19 +52,28 @@ public class StockOutTaskOrderAssembler {
if (ObjectUtil.isNull(loginUser)) { if (ObjectUtil.isNull(loginUser)) {
throw new DigitalLogisticsException(UserError.TIMEOUT); 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 // 获取登录人id
Long userId = loginUser.getUserid(); Long userId = loginUser.getUserid();
if(stockOutTaskOrderDTO.getOutTaskOrderId() != null){ if(stockOutTaskOrderDTO.getOutTaskOrderId() != null){
stockOutTaskOrderDO.setUpdateBy(userId); stockOutTaskOrderDO.setUpdateBy(userId);
stockOutTaskOrderDO.setUpdateByName(userName); stockOutTaskOrderDO.setUpdateByName(userRealName);
stockOutTaskOrderDO.setUpdateTime(new Date()); stockOutTaskOrderDO.setUpdateTime(new Date());
}else { }else {
stockOutTaskOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); stockOutTaskOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId());
stockOutTaskOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); stockOutTaskOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName());
stockOutTaskOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); stockOutTaskOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
stockOutTaskOrderDO.setCreateBy(userId); stockOutTaskOrderDO.setCreateBy(userId);
stockOutTaskOrderDO.setCreateByName(userName); stockOutTaskOrderDO.setCreateByName(userRealName);
stockOutTaskOrderDO.setCreateTime(new Date()); stockOutTaskOrderDO.setCreateTime(new Date());
stockOutTaskOrderDO.setDelFlag(1); stockOutTaskOrderDO.setDelFlag(1);
} }