PC复核下发修改
This commit is contained in:
+28
-7
@@ -698,23 +698,37 @@ public class StockOutOrderDomainService {
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean checkTaskDistribution(StockOutOrderDO stockOutOrderDO) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
List<Long> outOrderIds = stockOutOrderDO.getOutOrderIds();
|
||||
if (outOrderIds == null || outOrderIds.size() == 0) {
|
||||
throw new ServiceException("未选择出库单,或出库单不存在");
|
||||
}
|
||||
StockOutOrderDO stockOutOrderDOQuery = new StockOutOrderDO();
|
||||
stockOutOrderDOQuery.setOutOrderIds(stockOutOrderDO.getOutOrderIds());
|
||||
stockOutOrderDOQuery.setOutOrderIds(outOrderIds);
|
||||
stockOutOrderDOQuery.setCheckTaskDistribution(2);
|
||||
List<StockOutOrderPO> stockOutOrderPOList = stockOutOrderService.queryList(stockOutOrderDOQuery);
|
||||
if (CollectionUtils.isEmpty(stockOutOrderPOList)) {
|
||||
throw new ServiceException("复合单已下发,请重新选择");
|
||||
throw new ServiceException("出库单不存在或已下发,请重新选择");
|
||||
}
|
||||
//复核下发任务
|
||||
//复核下发任务(插入 delive_task,PDA 从此表查任务)
|
||||
genDeliveTask(stockOutOrderPOList, stockOutOrderDO);
|
||||
//标记收货单任务已下发
|
||||
//标记出库单任务已下发,并同步复核人信息到 stock_out_order(与 genDeliveTask 中逻辑一致)
|
||||
Long checkOperatorsBy = stockOutOrderDO.getCheckOperatorsBy();
|
||||
String checkOperatorsName = stockOutOrderDO.getCheckOperatorsName();
|
||||
if (checkOperatorsBy == null || checkOperatorsBy == 0) {
|
||||
checkOperatorsBy = loginUser.getUserid();
|
||||
checkOperatorsName = (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();
|
||||
}
|
||||
return stockOutOrderService.update(null, new UpdateWrapper<StockOutOrder>().lambda()
|
||||
.set(StockOutOrder::getCheckTaskDistribution, 1)
|
||||
.set(StockOutOrder::getCheckTaskDistributionTime, new Date())
|
||||
.set(StockOutOrder::getCheckOperatorsBy, checkOperatorsBy)
|
||||
.set(StockOutOrder::getCheckOperatorsName, checkOperatorsName)
|
||||
.set(StockOutOrder::getUpdateBy, loginUser.getUserid())
|
||||
.set(StockOutOrder::getUpdateByName, loginUser.getUsername())
|
||||
.set(StockOutOrder::getUpdateTime, new Date())
|
||||
.in(StockOutOrder::getOutOrderId, stockOutOrderDO.getOutOrderIds()));
|
||||
.in(StockOutOrder::getOutOrderId, outOrderIds));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1436,8 +1450,15 @@ public class StockOutOrderDomainService {
|
||||
deliveTaskDO.setTaskDistributionId(loginUser.getUserid());
|
||||
deliveTaskDO.setTaskDistributionName(userRealName);
|
||||
deliveTaskDO.setTaskDistributionTime(new Date());
|
||||
deliveTaskDO.setOperatorsBy(stockOutOrderDO.getCheckOperatorsBy());
|
||||
deliveTaskDO.setOperatorsName(stockOutOrderDO.getCheckOperatorsName());
|
||||
// 若未指定复核人(null 或 0),默认分配给当前操作用户;前端未选择时可能传 0,0 在 PDA 两个 tab 都查不到
|
||||
Long operatorsBy = stockOutOrderDO.getCheckOperatorsBy();
|
||||
String operatorsName = stockOutOrderDO.getCheckOperatorsName();
|
||||
if (operatorsBy == null || operatorsBy == 0) {
|
||||
operatorsBy = loginUser.getUserid();
|
||||
operatorsName = (operatorsName != null && !operatorsName.isEmpty()) ? operatorsName : userRealName;
|
||||
}
|
||||
deliveTaskDO.setOperatorsBy(operatorsBy);
|
||||
deliveTaskDO.setOperatorsName(operatorsName);
|
||||
deliveTaskDO.setCreateBy(loginUser.getUserid());
|
||||
deliveTaskDO.setCreateByName(userRealName);
|
||||
deliveTaskDO.setCreateTime(new Date());
|
||||
|
||||
Reference in New Issue
Block a user