Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
zhou-hongcheng
2026-03-03 16:30:32 +08:00
21 changed files with 299 additions and 66 deletions
@@ -32,7 +32,7 @@ public class BaseVOEntity implements Serializable
@ApiModelProperty(value = "更新者") @ApiModelProperty(value = "更新者")
private Long updateBy; private Long updateBy;
@ApiModelProperty(name = "创建者姓名") @ApiModelProperty(name = "更新人姓名")
private String updateByName; private String updateByName;
@ApiModelProperty(value = "更新时间") @ApiModelProperty(value = "更新时间")
@@ -1142,7 +1142,20 @@ public class StockInOrderApplicationService {
order.setOrganizationName(loginUser.getUserPo().getOrganizationName()); order.setOrganizationName(loginUser.getUserPo().getOrganizationName());
order.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); order.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
order.setCreateBy(loginUser.getUserid()); 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()); order.setCreateTime(new Date());
@@ -783,7 +783,13 @@ public class StockReceiptOrderApplicationService {
receiptMaterialDetailDOList.forEach(receiptMaterialDetailDO -> { receiptMaterialDetailDOList.forEach(receiptMaterialDetailDO -> {
List<ReceiptMaterialDetailDO> receiptMaterialDetailDOChildrenList1 = receiptMaterialDetailDO.getChildren(); List<ReceiptMaterialDetailDO> receiptMaterialDetailDOChildrenList1 = receiptMaterialDetailDO.getChildren();
if (receiptMaterialDetailDOChildrenList1 != null && receiptMaterialDetailDOChildrenList1.size() > 0) { if (receiptMaterialDetailDOChildrenList1 != null && receiptMaterialDetailDOChildrenList1.size() > 0) {
ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 1 == p.getLevel()).collect(Collectors.toList()).get(0); //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<ReceiptMaterialDetailDO>
.orElse(null); // 没有符合条件的元素时返回null(也可以自定义默认值)
if (receiptMaterialDetailDOChildren != null) {
receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId()); receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId());
receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity()); receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity());
receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode()); receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode());
@@ -792,6 +798,7 @@ public class StockReceiptOrderApplicationService {
receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel()); receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel());
receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList()); receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList());
receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList()); receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList());
}
//只留二级 //只留二级
List<ReceiptMaterialDetailDO> receiptMaterialDetailDOChildrenList2 = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 2 == p.getLevel()).collect(Collectors.toList()); List<ReceiptMaterialDetailDO> receiptMaterialDetailDOChildrenList2 = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 2 == p.getLevel()).collect(Collectors.toList());
receiptMaterialDetailDO.setChildren(receiptMaterialDetailDOChildrenList2); receiptMaterialDetailDO.setChildren(receiptMaterialDetailDOChildrenList2);
@@ -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);
} }
@@ -133,6 +133,10 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
throw new ServiceException("物料明细不能为空"); throw new ServiceException("物料明细不能为空");
} }
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());
// 批量新增或修改 // 批量新增或修改
List<InMaterialDetail> inMaterialDetailList = new ArrayList<>(); List<InMaterialDetail> inMaterialDetailList = new ArrayList<>();
for (InMaterialDetailDO inMaterialDetailDO : inMaterialDetailDOList){ for (InMaterialDetailDO inMaterialDetailDO : inMaterialDetailDOList){
@@ -145,7 +149,7 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
inMaterialDetail.setInOrderNumber(inOrderNumber); inMaterialDetail.setInOrderNumber(inOrderNumber);
inMaterialDetail.setLevel(1); inMaterialDetail.setLevel(1);
inMaterialDetail.setCreateBy(loginUser.getUserid()); inMaterialDetail.setCreateBy(loginUser.getUserid());
inMaterialDetail.setCreateByName(loginUser.getUsername()); inMaterialDetail.setCreateByName(userRealName);
inMaterialDetail.setCreateTime(new Date()); inMaterialDetail.setCreateTime(new Date());
// 新增入库单明细时,如果计划数量为空,则使用入库数量作为计划数量 // 新增入库单明细时,如果计划数量为空,则使用入库数量作为计划数量
if (inMaterialDetail.getQuantity() == null && inMaterialDetailDO.getInboundQuantity() != null) { if (inMaterialDetail.getQuantity() == null && inMaterialDetailDO.getInboundQuantity() != null) {
@@ -171,6 +175,10 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
throw new ServiceException("物料明细不能为空"); throw new ServiceException("物料明细不能为空");
} }
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());
// 查询所有记录(包括已删除的),用于判断是否需要恢复已删除的记录 // 查询所有记录(包括已删除的),用于判断是否需要恢复已删除的记录
List<InMaterialDetail> inMaterialDetailDbAllList = inMaterialDetailMapper.selectList(new QueryWrapper<InMaterialDetail>().lambda() List<InMaterialDetail> inMaterialDetailDbAllList = inMaterialDetailMapper.selectList(new QueryWrapper<InMaterialDetail>().lambda()
@@ -218,7 +226,7 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
}else { }else {
BeanUtils.copyProperties(inMaterialDetailDO, inMaterialDetail); BeanUtils.copyProperties(inMaterialDetailDO, inMaterialDetail);
inMaterialDetail.setUpdateBy(loginUser.getUserid()); inMaterialDetail.setUpdateBy(loginUser.getUserid());
inMaterialDetail.setUpdateByName(loginUser.getUsername()); inMaterialDetail.setUpdateByName(userRealName);
inMaterialDetail.setUpdateTime(new Date()); inMaterialDetail.setUpdateTime(new Date());
materialDetailIdsByUpdate.add(inMaterialDetailDO.getMaterialDetailId()); materialDetailIdsByUpdate.add(inMaterialDetailDO.getMaterialDetailId());
} }
@@ -234,7 +242,7 @@ public class InMaterialDetailImpl extends ServiceImpl<InMaterialDetailMapper, In
update(new UpdateWrapper<InMaterialDetail>().lambda() update(new UpdateWrapper<InMaterialDetail>().lambda()
.set(InMaterialDetail::getDelFlag, 2) .set(InMaterialDetail::getDelFlag, 2)
.set(InMaterialDetail::getUpdateBy, loginUser.getUserid()) .set(InMaterialDetail::getUpdateBy, loginUser.getUserid())
.set(InMaterialDetail::getUpdateByName, loginUser.getUsername()) .set(InMaterialDetail::getUpdateByName, userRealName)
.set(InMaterialDetail::getUpdateTime, new Date()) .set(InMaterialDetail::getUpdateTime, new Date())
.in(InMaterialDetail::getMaterialDetailId, materialDetailIdsByDb)); .in(InMaterialDetail::getMaterialDetailId, materialDetailIdsByDb));
} }
@@ -140,6 +140,13 @@ public class InOrderAbnormalImpl extends ServiceImpl<InOrderAbnormalMapper, InOr
*/ */
private List<InOrderAbnormal> genShelfOrderMaterialDetailList(InOrderAbnormalBaseDO inOrderAbnormalBaseDO, List<ShelfMaterialDetail> shelfMaterialDetailList){ private List<InOrderAbnormal> genShelfOrderMaterialDetailList(InOrderAbnormalBaseDO inOrderAbnormalBaseDO, List<ShelfMaterialDetail> shelfMaterialDetailList){
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<InOrderAbnormal> inOrderAbnormalList = new ArrayList<>(); List<InOrderAbnormal> inOrderAbnormalList = new ArrayList<>();
for (ShelfMaterialDetail shelfMaterialDetail : shelfMaterialDetailList){ for (ShelfMaterialDetail shelfMaterialDetail : shelfMaterialDetailList){
//上架 //上架
@@ -165,7 +172,7 @@ public class InOrderAbnormalImpl extends ServiceImpl<InOrderAbnormalMapper, InOr
inOrderAbnormal.setAllowActualQuantity(shelfMaterialDetail.getQuantity()); inOrderAbnormal.setAllowActualQuantity(shelfMaterialDetail.getQuantity());
inOrderAbnormal.setAbnormalActualQuantity(shelfMaterialDetail.getShelvesQuantity().subtract(shelfMaterialDetail.getQuantity())); inOrderAbnormal.setAbnormalActualQuantity(shelfMaterialDetail.getShelvesQuantity().subtract(shelfMaterialDetail.getQuantity()));
inOrderAbnormal.setCreateBy(loginUser.getUserid()); inOrderAbnormal.setCreateBy(loginUser.getUserid());
inOrderAbnormal.setCreateByName(loginUser.getUsername()); inOrderAbnormal.setCreateByName(userRealName);
inOrderAbnormal.setCreateTime(new Date()); inOrderAbnormal.setCreateTime(new Date());
inOrderAbnormal.setType(2); inOrderAbnormal.setType(2);
inOrderAbnormalList.add(inOrderAbnormal); inOrderAbnormalList.add(inOrderAbnormal);
@@ -184,6 +191,13 @@ public class InOrderAbnormalImpl extends ServiceImpl<InOrderAbnormalMapper, InOr
*/ */
private List<InOrderAbnormal> genReceiptOrderMaterialDetailList(InOrderAbnormalBaseDO inOrderAbnormalBaseDO, List<ReceiptMaterialDetail> receiptMaterialDetailList){ private List<InOrderAbnormal> genReceiptOrderMaterialDetailList(InOrderAbnormalBaseDO inOrderAbnormalBaseDO, List<ReceiptMaterialDetail> receiptMaterialDetailList){
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<InOrderAbnormal> inOrderAbnormalList = new ArrayList<>(); List<InOrderAbnormal> inOrderAbnormalList = new ArrayList<>();
for (ReceiptMaterialDetail receiptMaterialDetail : receiptMaterialDetailList){ for (ReceiptMaterialDetail receiptMaterialDetail : receiptMaterialDetailList){
//收货 //收货
@@ -203,7 +217,7 @@ public class InOrderAbnormalImpl extends ServiceImpl<InOrderAbnormalMapper, InOr
lessAbnormalSmallParams(receiptMaterialDetail, inOrderAbnormal); lessAbnormalSmallParams(receiptMaterialDetail, inOrderAbnormal);
} }
inOrderAbnormal.setCreateBy(loginUser.getUserid()); inOrderAbnormal.setCreateBy(loginUser.getUserid());
inOrderAbnormal.setCreateByName(loginUser.getUsername()); inOrderAbnormal.setCreateByName(userRealName);
inOrderAbnormal.setCreateTime(new Date()); inOrderAbnormal.setCreateTime(new Date());
inOrderAbnormal.setType(1); inOrderAbnormal.setType(1);
inOrderAbnormalList.add(inOrderAbnormal); inOrderAbnormalList.add(inOrderAbnormal);
@@ -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);
} }
@@ -373,15 +373,19 @@ public class StockInOrderDomainService {
if (stockInOrderDO.getAuditStatus() == 3){ if (stockInOrderDO.getAuditStatus() == 3){
auditApprove(stockInOrderDO); 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() return stockInOrderService.update(null, new UpdateWrapper<StockInOrder>().lambda()
.set(3 == stockInOrderDO.getAuditStatus(), StockInOrder::getStatus, 2) .set(3 == stockInOrderDO.getAuditStatus(), StockInOrder::getStatus, 2)
.set(StockInOrder::getAuditStatus, stockInOrderDO.getAuditStatus()) .set(StockInOrder::getAuditStatus, stockInOrderDO.getAuditStatus())
.set(StockInOrder::getAuditRemark, stockInOrderDO.getAuditRemark()) .set(StockInOrder::getAuditRemark, stockInOrderDO.getAuditRemark())
.set(StockInOrder::getAuditBy, loginUser.getUserid()) .set(StockInOrder::getAuditBy, loginUser.getUserid())
.set(StockInOrder::getAuditByName, loginUser.getUsername()) .set(StockInOrder::getAuditByName, userRealName)
.set(StockInOrder::getAuditTime, new Date()) .set(StockInOrder::getAuditTime, new Date())
.set(StockInOrder::getUpdateBy, loginUser.getUserid()) .set(StockInOrder::getUpdateBy, loginUser.getUserid())
.set(StockInOrder::getUpdateByName, loginUser.getUsername()) .set(StockInOrder::getUpdateByName, userRealName)
.set(StockInOrder::getUpdateTime, new Date()) .set(StockInOrder::getUpdateTime, new Date())
.in(StockInOrder::getInOrderId, stockInOrderDO.getInOrderIds())); .in(StockInOrder::getInOrderId, stockInOrderDO.getInOrderIds()));
} }
@@ -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);
}); });
@@ -136,16 +136,23 @@ public class StockReceiptOrderDomainService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean batchInsert(List<StockReceiptOrderDO> stockReceiptOrderDOList) { public Boolean batchInsert(List<StockReceiptOrderDO> stockReceiptOrderDOList) {
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<StockReceiptOrder> stockReceiptOrderList = new ArrayList<>(); List<StockReceiptOrder> stockReceiptOrderList = new ArrayList<>();
List<ReceiptMaterialDetail> receiptMaterialDetailList = new ArrayList<>(); List<ReceiptMaterialDetail> receiptMaterialDetailList = new ArrayList<>();
stockReceiptOrderDOList.forEach(stockReceiptOrderDO -> { stockReceiptOrderDOList.forEach(stockReceiptOrderDO -> {
StockReceiptOrder stockReceiptOrder = JSONUtil.toBean(JSONUtil.toJsonStr(stockReceiptOrderDO), StockReceiptOrder.class); StockReceiptOrder stockReceiptOrder = JSONUtil.toBean(JSONUtil.toJsonStr(stockReceiptOrderDO), StockReceiptOrder.class);
stockReceiptOrder.setReceiptOrderNumber(OrderSequence.getOrderCode("SH")); stockReceiptOrder.setReceiptOrderNumber(OrderSequence.getOrderCode("SH"));
stockReceiptOrder.setCreateBy(loginUser.getUserid()); stockReceiptOrder.setCreateBy(loginUser.getUserid());
stockReceiptOrder.setCreateByName(loginUser.getUsername()); stockReceiptOrder.setCreateByName(userRealName);
stockReceiptOrder.setCreateTime(new Date()); stockReceiptOrder.setCreateTime(new Date());
stockReceiptOrder.setUpdateBy(loginUser.getUserid()); stockReceiptOrder.setUpdateBy(loginUser.getUserid());
stockReceiptOrder.setUpdateByName(loginUser.getUsername()); stockReceiptOrder.setUpdateByName(userRealName);
stockReceiptOrder.setUpdateTime(new Date()); stockReceiptOrder.setUpdateTime(new Date());
stockReceiptOrderList.add(stockReceiptOrder); stockReceiptOrderList.add(stockReceiptOrder);
stockReceiptOrderDO.getMaterialDetailList().forEach(materialDetailDO -> { stockReceiptOrderDO.getMaterialDetailList().forEach(materialDetailDO -> {
@@ -159,7 +166,7 @@ public class StockReceiptOrderDomainService {
receiptMaterialDetail.setReceiptOrderNumber(stockReceiptOrder.getReceiptOrderNumber()); receiptMaterialDetail.setReceiptOrderNumber(stockReceiptOrder.getReceiptOrderNumber());
receiptMaterialDetail.setGenStockShelf(2); // 设置需要生成上架单 receiptMaterialDetail.setGenStockShelf(2); // 设置需要生成上架单
receiptMaterialDetail.setCreateBy(loginUser.getUserid()); receiptMaterialDetail.setCreateBy(loginUser.getUserid());
receiptMaterialDetail.setCreateByName(loginUser.getUsername()); receiptMaterialDetail.setCreateByName(userRealName);
receiptMaterialDetail.setCreateTime(new Date()); receiptMaterialDetail.setCreateTime(new Date());
receiptMaterialDetailList.add(receiptMaterialDetail); receiptMaterialDetailList.add(receiptMaterialDetail);
}); });
@@ -665,6 +672,13 @@ public class StockReceiptOrderDomainService {
throw new ServiceException("收货单【" + stockReceiptOrderPO.getReceiptOrderNumber() + "】已完成收货,请重新选择"); throw new ServiceException("收货单【" + stockReceiptOrderPO.getReceiptOrderNumber() + "】已完成收货,请重新选择");
} }
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();
int abnormal = 2; int abnormal = 2;
if (stockReceiptOrderPO.getReceiptQuantity().compareTo(stockReceiptOrderPO.getQuantity()) != 0){ if (stockReceiptOrderPO.getReceiptQuantity().compareTo(stockReceiptOrderPO.getQuantity()) != 0){
abnormal = 1; abnormal = 1;
@@ -678,7 +692,7 @@ public class StockReceiptOrderDomainService {
stockInOrder.setInOrderNumber(stockReceiptOrderPO.getInOrderNumber()); stockInOrder.setInOrderNumber(stockReceiptOrderPO.getInOrderNumber());
stockInOrder.setStatus(4); // 4-上架中 stockInOrder.setStatus(4); // 4-上架中
stockInOrder.setUpdateBy(loginUser.getUserid()); stockInOrder.setUpdateBy(loginUser.getUserid());
stockInOrder.setUpdateByName(loginUser.getUsername()); stockInOrder.setUpdateByName(userRealName);
stockInOrder.setUpdateTime(new Date()); stockInOrder.setUpdateTime(new Date());
stockInOrderService.update(stockInOrder, stockInOrderService.update(stockInOrder,
new QueryWrapper<StockInOrder>().lambda() new QueryWrapper<StockInOrder>().lambda()
@@ -701,7 +715,7 @@ public class StockReceiptOrderDomainService {
//如果没有指定操作人员使用当前登录用户 //如果没有指定操作人员使用当前登录用户
if (stockShelfOrderDO.getOperatorsBy() == null) { if (stockShelfOrderDO.getOperatorsBy() == null) {
stockShelfOrderDO.setOperatorsBy(loginUser.getUserid()); stockShelfOrderDO.setOperatorsBy(loginUser.getUserid());
stockShelfOrderDO.setOperatorsName(loginUser.getUsername()); stockShelfOrderDO.setOperatorsName(userRealName);
} }
//生成上架任务 //生成上架任务
stockShelfOrderDomainService.genDeliveTask(stockShelfOrderPOList, stockShelfOrderDO); stockShelfOrderDomainService.genDeliveTask(stockShelfOrderPOList, stockShelfOrderDO);
@@ -710,7 +724,7 @@ public class StockReceiptOrderDomainService {
.set(StockShelfOrder::getTaskDistribution, 1) .set(StockShelfOrder::getTaskDistribution, 1)
.set(StockShelfOrder::getTaskDistributionTime, new Date()) .set(StockShelfOrder::getTaskDistributionTime, new Date())
.set(StockShelfOrder::getUpdateBy, loginUser.getUserid()) .set(StockShelfOrder::getUpdateBy, loginUser.getUserid())
.set(StockShelfOrder::getUpdateByName, loginUser.getUsername()) .set(StockShelfOrder::getUpdateByName, userRealName)
.set(StockShelfOrder::getUpdateTime, new Date()) .set(StockShelfOrder::getUpdateTime, new Date())
.in(StockShelfOrder::getShelfOrderId, stockShelfOrderDO.getShelfOrderIds())); .in(StockShelfOrder::getShelfOrderId, stockShelfOrderDO.getShelfOrderIds()));
} }
@@ -146,6 +146,13 @@ public class StockShelfOrderDomainService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean genStockShelfOrder(List<StockShelfOrderDO> stockShelfOrderDOList) { public Boolean genStockShelfOrder(List<StockShelfOrderDO> stockShelfOrderDOList) {
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<StockShelfOrder> stockShelfOrderList = new ArrayList<>(); List<StockShelfOrder> stockShelfOrderList = new ArrayList<>();
List<ShelfMaterialDetail> shelfMaterialDetailList = new ArrayList<>(); List<ShelfMaterialDetail> shelfMaterialDetailList = new ArrayList<>();
stockShelfOrderDOList.forEach(stockShelfOrderDO -> { stockShelfOrderDOList.forEach(stockShelfOrderDO -> {
@@ -156,10 +163,10 @@ public class StockShelfOrderDomainService {
stockShelfOrder.setShelfOrderNumber(OrderSequence.getOrderCode("SJ")); stockShelfOrder.setShelfOrderNumber(OrderSequence.getOrderCode("SJ"));
} }
stockShelfOrder.setCreateBy(loginUser.getUserid()); stockShelfOrder.setCreateBy(loginUser.getUserid());
stockShelfOrder.setCreateByName(loginUser.getUsername()); stockShelfOrder.setCreateByName(userRealName);
stockShelfOrder.setCreateTime(new Date()); stockShelfOrder.setCreateTime(new Date());
stockShelfOrder.setUpdateBy(loginUser.getUserid()); stockShelfOrder.setUpdateBy(loginUser.getUserid());
stockShelfOrder.setUpdateByName(loginUser.getUsername()); stockShelfOrder.setUpdateByName(userRealName);
stockShelfOrder.setUpdateTime(new Date()); stockShelfOrder.setUpdateTime(new Date());
stockShelfOrderList.add(stockShelfOrder); stockShelfOrderList.add(stockShelfOrder);
stockShelfOrderDO.getMaterialDetailList().forEach(materialDetailDO -> { stockShelfOrderDO.getMaterialDetailList().forEach(materialDetailDO -> {
@@ -173,7 +180,7 @@ public class StockShelfOrderDomainService {
shelfMaterialDetail.setShelfOrderNumber(stockShelfOrder.getShelfOrderNumber()); shelfMaterialDetail.setShelfOrderNumber(stockShelfOrder.getShelfOrderNumber());
shelfMaterialDetail.setLevel(1); shelfMaterialDetail.setLevel(1);
shelfMaterialDetail.setCreateBy(loginUser.getUserid()); shelfMaterialDetail.setCreateBy(loginUser.getUserid());
shelfMaterialDetail.setCreateByName(loginUser.getUsername()); shelfMaterialDetail.setCreateByName(userRealName);
shelfMaterialDetail.setCreateTime(new Date()); shelfMaterialDetail.setCreateTime(new Date());
shelfMaterialDetailList.add(shelfMaterialDetail); shelfMaterialDetailList.add(shelfMaterialDetail);
}); });
@@ -1080,6 +1087,13 @@ public class StockShelfOrderDomainService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void genDeliveTask(List<StockShelfOrderPO> stockReceiptOrderPOList, StockShelfOrderDO stockReceiptOrderDO){ public void genDeliveTask(List<StockShelfOrderPO> stockReceiptOrderPOList, StockShelfOrderDO stockReceiptOrderDO){
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 (StockShelfOrderPO stockShelfOrderPO : stockReceiptOrderPOList){ for (StockShelfOrderPO stockShelfOrderPO : stockReceiptOrderPOList){
DeliveTaskDO deliveTaskDO = new DeliveTaskDO(); DeliveTaskDO deliveTaskDO = new DeliveTaskDO();
@@ -1094,12 +1108,12 @@ public class StockShelfOrderDomainService {
deliveTaskDO.setTaskType(2); deliveTaskDO.setTaskType(2);
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(stockReceiptOrderDO.getOperatorsBy()); deliveTaskDO.setOperatorsBy(stockReceiptOrderDO.getOperatorsBy());
deliveTaskDO.setOperatorsName(stockReceiptOrderDO.getOperatorsName()); deliveTaskDO.setOperatorsName(stockReceiptOrderDO.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);
} }
@@ -43,19 +43,31 @@ public class InOrderAbnormalAssembler {
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(inOrderAbnormalDTO.getInOrderAbnormalId() != null){ if(inOrderAbnormalDTO.getInOrderAbnormalId() != null){
inOrderAbnormalDO.setUpdateBy(userId); inOrderAbnormalDO.setUpdateBy(userId);
inOrderAbnormalDO.setUpdateByName(userName); inOrderAbnormalDO.setUpdateByName(userRealName);
inOrderAbnormalDO.setUpdateTime(new Date()); inOrderAbnormalDO.setUpdateTime(new Date());
}else { }else {
inOrderAbnormalDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); inOrderAbnormalDO.setOrganizationId(loginUser.getUserPo().getOrganizationId());
inOrderAbnormalDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); inOrderAbnormalDO.setOrganizationName(loginUser.getUserPo().getOrganizationName());
inOrderAbnormalDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); inOrderAbnormalDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
inOrderAbnormalDO.setCreateBy(userId); inOrderAbnormalDO.setCreateBy(userId);
inOrderAbnormalDO.setCreateByName(userName); inOrderAbnormalDO.setCreateByName(userRealName);
inOrderAbnormalDO.setCreateTime(new Date()); inOrderAbnormalDO.setCreateTime(new Date());
inOrderAbnormalDO.setDelFlag(1); inOrderAbnormalDO.setDelFlag(1);
} }
@@ -56,19 +56,32 @@ public class StockInOrderAssembler {
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(stockInOrderDTO.getInOrderId() != null){ if(stockInOrderDTO.getInOrderId() != null){
stockInOrderDO.setUpdateBy(userId); stockInOrderDO.setUpdateBy(userId);
stockInOrderDO.setUpdateByName(userName); stockInOrderDO.setUpdateByName(userRealName);
stockInOrderDO.setUpdateTime(new Date()); stockInOrderDO.setUpdateTime(new Date());
}else { }else {
stockInOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); stockInOrderDO.setOrganizationId(loginUser.getUserPo().getOrganizationId());
stockInOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); stockInOrderDO.setOrganizationName(loginUser.getUserPo().getOrganizationName());
stockInOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); stockInOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
stockInOrderDO.setCreateBy(userId); stockInOrderDO.setCreateBy(userId);
stockInOrderDO.setCreateByName(userName); // 强制设置创建人姓名为用户真实姓名确保覆盖前端可能传递的账号
stockInOrderDO.setCreateByName(userRealName);
stockInOrderDO.setCreateTime(new Date()); stockInOrderDO.setCreateTime(new Date());
stockInOrderDO.setDelFlag(1); stockInOrderDO.setDelFlag(1);
// 新增入库单时如果入库单类型为空默认设置为普通入库 // 新增入库单时如果入库单类型为空默认设置为普通入库
@@ -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);
} }
@@ -54,6 +54,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="batchRefNo" column="batch_ref_no" /> <result property="batchRefNo" column="batch_ref_no" />
<result property="sheetRefNo" column="sheet_ref_no" /> <result property="sheetRefNo" column="sheet_ref_no" />
<result property="boxPalletNo" column="box_pallet_no" /> <result property="boxPalletNo" column="box_pallet_no" />
<result property="adjustAction" column="adjust_action" />
<result property="relateNo" column="relate_no" />
</resultMap> </resultMap>
@@ -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.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, 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.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 from inventory_adjustment_record a left join material_inventory b on a.material_inventory_id = b.material_inventory_id
where a.del_flag = 1 where a.del_flag = 1
</sql> </sql>