This commit is contained in:
王奎兴
2026-09-04 13:55:07 +08:00
parent 77e0c77fbf
commit 12e43080b8
13 changed files with 57 additions and 25 deletions
@@ -1028,7 +1028,9 @@ public class ExecutionStockOutOrderDomainService {
ReservationDeliveryDetailsLink reservationDeliveryDetailsLink = list.get(0);
String orderNumber = reservationDeliveryDetailsLink.getOrderNumber();
Integer bag = reservationDeliveryDetailsLink.getBag();
ExecutionStockOutOrder stockOutOrder = stockOutOrderService.getOne(new QueryWrapper<ExecutionStockOutOrder>().lambda().eq(ExecutionStockOutOrder::getOutOrderNumber, orderNumber), false);
ExecutionStockOutOrder stockOutOrder = stockOutOrderService.getOne(new QueryWrapper<ExecutionStockOutOrder>().lambda()
.eq(ExecutionStockOutOrder::getOutOrderNumber, orderNumber)
.eq(ExecutionStockOutOrder::getDelFlag,1), false);
if (stockOutOrder != null) {
ExecutionStockInOrder reservationStockInOrder = new ExecutionStockInOrder();
reservationStockInOrder.setPictureUrl(pictureUrl);
@@ -1220,7 +1220,9 @@ public class ReservationStockOutOrderDomainService {
ReservationDeliveryDetailsLink reservationDeliveryDetailsLink = list.get(0);
String orderNumber = reservationDeliveryDetailsLink.getOrderNumber();
Integer bag = reservationDeliveryDetailsLink.getBag();
ReservationStockOutOrder stockOutOrder = stockOutOrderService.getOne(new QueryWrapper<ReservationStockOutOrder>().lambda().eq(ReservationStockOutOrder::getOutOrderNumber, orderNumber), false);
ReservationStockOutOrder stockOutOrder = stockOutOrderService.getOne(new QueryWrapper<ReservationStockOutOrder>().lambda()
.eq(ReservationStockOutOrder::getOutOrderNumber, orderNumber)
.eq(ReservationStockOutOrder::getDelFlag,1), false);
if (stockOutOrder != null) {
ReservationStockInOrder reservationStockInOrder = new ReservationStockInOrder();
reservationStockInOrder.setPictureUrl(pictureUrl);
@@ -104,7 +104,8 @@ public class ReservationStockOutOrderApi extends BaseController {
{
// 根据出库单号查询出库单,再按出库单ID查询详情,保证与出库管理页面一致
ReservationStockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<ReservationStockOutOrder>()
.eq(ReservationStockOutOrder::getOutOrderNumber, outOrderNumber));
.eq(ReservationStockOutOrder::getOutOrderNumber, outOrderNumber)
.eq(ReservationStockOutOrder::getDelFlag,1));
if (stockOutOrder == null) {
return AjaxResult.error("出库单不存在");
}
@@ -122,7 +123,8 @@ public class ReservationStockOutOrderApi extends BaseController {
return AjaxResult.error("orderNumber不能为空");
}
ReservationStockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<ReservationStockOutOrder>()
.eq(ReservationStockOutOrder::getOutOrderNumber, orderNumber));
.eq(ReservationStockOutOrder::getOutOrderNumber, orderNumber)
.eq(ReservationStockOutOrder::getDelFlag,1));
if (stockOutOrder == null) {
return AjaxResult.error("出库单不存在");
}
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.mhd.common.core.web.controller.BaseController;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.oms.domain.reservationStockOutOrder.entity.ReservationStockOutOrder;
import com.mhd.oms.domain.reserveOutMaterialDetail.repository.po.ReserveOutMaterialDetailPO;
import com.mhd.oms.domain.reserveStockInOrder.repository.listener.ValidationException;
import com.mhd.oms.domain.reserveStockInOrder.repository.todo.ReserveStockInOrderDO;
@@ -149,7 +150,8 @@ public class ReserveStockOutOrderApi extends BaseController {
{
// 根据出库单号查询出库单,再按出库单ID查询详情,保证与出库管理页面一致
ReserveStockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<ReserveStockOutOrder>()
.eq(ReserveStockOutOrder::getOutOrderNumber, outOrderNumber));
.eq(ReserveStockOutOrder::getOutOrderNumber, outOrderNumber)
.eq(ReserveStockOutOrder::getDelFlag,1));
if (stockOutOrder == null) {
return AjaxResult.error("出库单不存在");
}
@@ -167,7 +169,8 @@ public class ReserveStockOutOrderApi extends BaseController {
return AjaxResult.error("orderNumber不能为空");
}
ReserveStockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<ReserveStockOutOrder>()
.eq(ReserveStockOutOrder::getOutOrderNumber, orderNumber));
.eq(ReserveStockOutOrder::getOutOrderNumber, orderNumber)
.eq(ReserveStockOutOrder::getDelFlag,1));
if (stockOutOrder == null) {
return AjaxResult.error("出库单不存在");
}
@@ -12,6 +12,7 @@ import com.mhd.oms.domain.executionStockOutOrder.repository.todo.ExecutionStockO
import com.mhd.oms.domain.executionStockOutOrder.repository.todo.ExecutionStockOutOrderDTO;
import com.mhd.oms.domain.executionStockOutOrder.service.ExecutionStockOutOrderApplicationService;
import com.mhd.oms.domain.executionStockOutOrder.service.ExecutionStockOutOrderAssembler;
import com.mhd.oms.domain.reservationStockOutOrder.entity.ReservationStockOutOrder;
import com.mhd.system.api.domain.OutMaterialDetailTZPD;
import com.mhd.system.api.domain.StockOutOrderTZPD;
import io.swagger.annotations.ApiOperation;
@@ -102,7 +103,8 @@ public class ExecutionStockOutOrderApi extends BaseController {
{
// 根据出库单号查询出库单,再按出库单ID查询详情,保证与出库管理页面一致
ExecutionStockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<ExecutionStockOutOrder>()
.eq(ExecutionStockOutOrder::getOutOrderNumber, outOrderNumber));
.eq(ExecutionStockOutOrder::getOutOrderNumber, outOrderNumber)
.eq(ExecutionStockOutOrder::getDelFlag,1));
if (stockOutOrder == null) {
return AjaxResult.error("出库单不存在");
}
@@ -120,7 +122,8 @@ public class ExecutionStockOutOrderApi extends BaseController {
return AjaxResult.error("orderNumber不能为空");
}
ExecutionStockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<ExecutionStockOutOrder>()
.eq(ExecutionStockOutOrder::getOutOrderNumber, orderNumber));
.eq(ExecutionStockOutOrder::getOutOrderNumber, orderNumber)
.eq(ExecutionStockOutOrder::getDelFlag,1));
if (stockOutOrder == null) {
return AjaxResult.error("出库单不存在");
}
@@ -120,7 +120,8 @@ public class DeliveTaskImpl extends ServiceImpl<DeliveTaskMapper, DeliveTask> im
String orderNumber = handoverTaskOrder.getOrderNumber();//出库单号
// 已复核数量、出库单信息:直接从出库单获取(需在物料统计前获取,用于判断是否需要复核)
StockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<StockOutOrder>()
.eq(StockOutOrder::getOutOrderNumber, orderNumber));
.eq(StockOutOrder::getOutOrderNumber, orderNumber)
.eq(StockOutOrder::getDelFlag,1));
if (stockOutOrder != null) {
deliveTaskPO.setOutOrderNumber(stockOutOrder.getOutOrderNumber());
deliveTaskPO.setOutOrderStatus(stockOutOrder.getStatus());
@@ -297,4 +298,4 @@ public class DeliveTaskImpl extends ServiceImpl<DeliveTaskMapper, DeliveTask> im
public DeliveTaskPO querySum(DeliveTaskDO deliveTaskDO) {
return deliveTaskMapper.querySum(deliveTaskDO);
}
}
}
@@ -407,6 +407,7 @@ public class HandoverTaskOrderDomainService {
//交接完成节点修改库存
String orderNumber = handoverTaskOrder.getOrderNumber();
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda()
.eq(StockOutOrder::getDelFlag,1)
.eq(StockOutOrder::getOutOrderNumber, orderNumber));
if (stockOutOrder == null) {
continue;
@@ -999,7 +999,9 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
}
private synchronized void qxfp(List<OutMaterialDetailDO> outMaterialDetailList,String outOrderNumber,LoginUser loginUser) {
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda().eq(StockOutOrder::getOutOrderNumber, outOrderNumber));
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda()
.eq(StockOutOrder::getDelFlag,1)
.eq(StockOutOrder::getOutOrderNumber, outOrderNumber));
for (OutMaterialDetailDO outMaterialDetail : outMaterialDetailList) {
Long materialInventoryId = outMaterialDetail.getMaterialInventoryId();
BigDecimal allocationQuantity = outMaterialDetail.getActualQuantity();
@@ -1109,7 +1111,9 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
private synchronized void childrenqxfp(List<OutMaterialDetailDO> outMaterialDetailList,String outOrderNumber,LoginUser loginUser) {
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda().eq(StockOutOrder::getOutOrderNumber, outOrderNumber));
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda()
.eq(StockOutOrder::getDelFlag,1)
.eq(StockOutOrder::getOutOrderNumber, outOrderNumber));
for (OutMaterialDetailDO outMaterialDetail : outMaterialDetailList) {
Long materialInventoryId = outMaterialDetail.getMaterialInventoryId();
BigDecimal allocationQuantity = outMaterialDetail.getActualQuantity();
@@ -1245,11 +1249,13 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
if (StringUtils.isNotBlank(stockOutOrderDO.getBarCode())){
outMaterialDetailDb = outMaterialDetailMapper.selectOne(new QueryWrapper<OutMaterialDetail>().lambda()
.eq(OutMaterialDetail::getOutOrderNumber, stockOutOrderDO.getOutOrderNumber())
.eq(OutMaterialDetail::getDelFlag,1)
.eq(OutMaterialDetail::getBarCode, stockOutOrderDO.getBarCode()));
}else {
OutMaterialDetailSerialNumber outMaterialDetailSerialNumber = outMaterialDetailSerialNumberService.getOne(new QueryWrapper<OutMaterialDetailSerialNumber>().lambda()
.eq(OutMaterialDetailSerialNumber::getSerialNumber, stockOutOrderDO.getSerialNumber()));
outMaterialDetailDb = outMaterialDetailMapper.selectOne(new QueryWrapper<OutMaterialDetail>().lambda()
.eq(OutMaterialDetail::getDelFlag,1)
.eq(OutMaterialDetail::getUniqueId, outMaterialDetailSerialNumber.getMaterialDetailUniqueId()));
}
if(outMaterialDetailDb == null){
@@ -401,7 +401,8 @@ public class PickingOrderDomainService {
// 拣货提交(/pickingOrderApi/picking)一次拣满也会完成拣货,此前仅 completePicking 会生成复核单,此处对齐
if (Boolean.TRUE.equals(updated) && Integer.valueOf(1).equals(pickingOrderPODb.getType())) {
StockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<StockOutOrder>()
.eq(StockOutOrder::getOutOrderNumber, pickingOrderPODb.getOrderNumber()));
.eq(StockOutOrder::getOutOrderNumber, pickingOrderPODb.getOrderNumber())
.eq(StockOutOrder::getDelFlag,1));
if (stockOutOrder != null) {
Long newReviewId = reviewOrderDomainService.tryGenerateReviewOrderAfterPickingComplete(pickingOrderPODb, stockOutOrder);
if (newReviewId != null) {
@@ -493,7 +494,8 @@ public class PickingOrderDomainService {
int status = 6;
//不需要复核的单子 标记出库单完成
StockOutOrder stockOutOrderDb = stockOutOrderService.getOne(new QueryWrapper<StockOutOrder>().lambda()
.eq(StockOutOrder::getOutOrderNumber, pickingOrderPODb.getOrderNumber()));
.eq(StockOutOrder::getOutOrderNumber, pickingOrderPODb.getOrderNumber())
.eq(StockOutOrder::getDelFlag,1));
// 与下发拣货数量比较:只下发部分时用拣货计划数量,否则用出库单总数量
List<PickingOrder> allPickingOrders = pickingOrderService.list(new QueryWrapper<PickingOrder>().lambda()
.eq(PickingOrder::getDelFlag, 1)
@@ -736,7 +738,7 @@ public class PickingOrderDomainService {
throw new ServiceException("拣货单不存在");
}
LambdaQueryWrapper<StockOutOrder> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(StockOutOrder::getOutOrderNumber, pickingOrderPO.getOrderNumber());
queryWrapper.eq(StockOutOrder::getDelFlag,1).eq(StockOutOrder::getOutOrderNumber, pickingOrderPO.getOrderNumber());
StockOutOrder stockOutOrder = stockOutOrderService.getOne(queryWrapper);
if(null == stockOutOrder){
throw new ServiceException("出库单不存在");
@@ -48,7 +48,7 @@ public class PushSyncBmsDomainService {
public void pushInShelfOrder(String inOrderNumber) {
// 根据入库单号查询入库单信息并拼接推送所需参数
LambdaQueryWrapper<StockInOrder> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(StockInOrder::getInOrderNumber, inOrderNumber);
queryWrapper.eq(StockInOrder::getInOrderNumber, inOrderNumber).eq(StockInOrder::getDelFlag,1);
StockInOrder stockInOrder = iStockInOrderService.getOne(queryWrapper);
if(null == stockInOrder){
throw new ServiceException("入库单信息未找到");
@@ -96,7 +96,7 @@ public class PushSyncBmsDomainService {
*/
public void pushOutOrder(String outOrderNumber) {
LambdaQueryWrapper<StockOutOrder> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(StockOutOrder::getOutOrderNumber, outOrderNumber);
queryWrapper.eq(StockOutOrder::getOutOrderNumber, outOrderNumber).eq(StockOutOrder::getDelFlag,1);
StockOutOrder stockOutOrder = iStockOutOrderService.getOne(queryWrapper);
if(null == stockOutOrder){
throw new ServiceException("出库单信息未找到");
@@ -153,4 +153,4 @@ public class PushSyncBmsDomainService {
}
}
}
@@ -233,8 +233,9 @@ public class SowingDistributionDetailsImpl extends ServiceImpl<SowingDistributio
if (outMaterialDetailSerialNumber == null){
throw new ServiceException("序列号不存在");
}
OutMaterialDetail outMaterialDetail = outMaterialDetailMapper.selectOne(new QueryWrapper<OutMaterialDetail>().lambda().
eq(OutMaterialDetail::getUniqueId, outMaterialDetailSerialNumber.getMaterialDetailUniqueId()));
OutMaterialDetail outMaterialDetail = outMaterialDetailMapper.selectOne(new QueryWrapper<OutMaterialDetail>().lambda()
.eq(OutMaterialDetail::getDelFlag,1)
.eq(OutMaterialDetail::getUniqueId, outMaterialDetailSerialNumber.getMaterialDetailUniqueId()));
if (outMaterialDetail == null){
throw new ServiceException("物料不存在");
}
@@ -273,7 +274,9 @@ public class SowingDistributionDetailsImpl extends ServiceImpl<SowingDistributio
*/
@Override
public List<SowingDistributionDetailsPO> allocationByOrder(AllocationByOrderDO allocationByOrderDO) {
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda().eq(StockOutOrder::getOutOrderNumber, allocationByOrderDO.getOutOrderNumber()));
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda()
.eq(StockOutOrder::getOutOrderNumber, allocationByOrderDO.getOutOrderNumber())
.eq(StockOutOrder::getDelFlag,1));
if (stockOutOrder == null){
throw new ServiceException("出库单不存在");
}
@@ -306,7 +309,9 @@ public class SowingDistributionDetailsImpl extends ServiceImpl<SowingDistributio
@Override
@Transactional(rollbackFor = Exception.class)
public SowingDistributionDetailsPO materialScanCodeAllocationByOrder(AllocationByOrderDO allocationByOrderDO) {
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda().eq(StockOutOrder::getOutOrderNumber, allocationByOrderDO.getOutOrderNumber()));
StockOutOrder stockOutOrder = stockOutOrderMapper.selectOne(new QueryWrapper<StockOutOrder>().lambda()
.eq(StockOutOrder::getOutOrderNumber, allocationByOrderDO.getOutOrderNumber())
.eq(StockOutOrder::getDelFlag,1));
if (stockOutOrder == null){
throw new ServiceException("出库单不存在");
}
@@ -356,4 +361,4 @@ public class SowingDistributionDetailsImpl extends ServiceImpl<SowingDistributio
sowingDistributionDetailsPO.setRatioQuantity(ratioQuantity);
return sowingDistributionDetailsPO;
}
}
}
@@ -865,7 +865,9 @@ public class StockOutTaskOrderDomainService {
pickingOrderDO.setUpdateByName(loginUser.getUsername());
pickingOrderDO.setUpdateTime(new Date());
pickingOrderService.addQuantity(pickingOrderDO);
PickingOrder onePickingOrder = pickingOrderService.getOne(new QueryWrapper<PickingOrder>().lambda().eq(PickingOrder::getPickingOrderNumber, stockOutTaskOrderPODb.getPickingOrderNumber()));
PickingOrder onePickingOrder = pickingOrderService.getOne(new QueryWrapper<PickingOrder>().lambda()
.eq(PickingOrder::getPickingOrderNumber, stockOutTaskOrderPODb.getPickingOrderNumber())
.eq(PickingOrder::getDelFlag,1));
PickingOrderPO pickingOrderPODb = pickingOrderService.getInfoByIdAndType(onePickingOrder.getPickingOrderId(), onePickingOrder.getType());
return updateStockOutOrder(pickingOrderPODb);
}
@@ -938,6 +940,7 @@ public class StockOutTaskOrderDomainService {
// PickingOrderDomainService.picking 一致PDA 按物料拣货/作业单路径拣满时只走本方法需触发生成复核单
if (stockOutUpdated) {
StockOutOrder so = stockOutOrderService.getOne(new LambdaQueryWrapper<StockOutOrder>()
.eq(StockOutOrder::getDelFlag,1)
.eq(StockOutOrder::getOutOrderNumber, pickingOrderPODb.getOrderNumber()));
if (so != null) {
Long newReviewId = reviewOrderDomainService.tryGenerateReviewOrderAfterPickingComplete(pickingOrderPODb, so);
@@ -1068,4 +1071,4 @@ public class StockOutTaskOrderDomainService {
}
}
}
}
@@ -208,6 +208,7 @@ public class StockOutOrderApi extends BaseController {
public AjaxResult getInfoOutOrderNumber(String outOrderNumber) {
// 根据出库单号查询出库单再按出库单ID查询详情保证与出库管理页面一致
StockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<StockOutOrder>()
.eq(StockOutOrder::getDelFlag,1)
.eq(StockOutOrder::getOutOrderNumber, outOrderNumber));
if (stockOutOrder == null) {
return AjaxResult.error("出库单不存在");
@@ -226,6 +227,7 @@ public class StockOutOrderApi extends BaseController {
return AjaxResult.error("orderNumber不能为空");
}
StockOutOrder stockOutOrder = stockOutOrderService.getOne(new LambdaQueryWrapper<StockOutOrder>()
.eq(StockOutOrder::getDelFlag,1)
.eq(StockOutOrder::getOutOrderNumber, orderNumber));
if (stockOutOrder == null) {
return AjaxResult.error("出库单不存在");