PDA出库交接修改

This commit is contained in:
秦鸿展
2026-03-14 14:49:23 +08:00
parent 2870e6729f
commit e938b3fedc
@@ -2,6 +2,7 @@ package com.mhd.wms.application.service.handoverTaskOrder;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
@@ -32,6 +33,7 @@ import org.springframework.stereotype.Service;
import java.text.ParseException;
import java.util.List;
import java.util.stream.Collectors;
/**
* 交接作业单ApplicationService
@@ -232,16 +234,39 @@ public class HandoverTaskOrderApplicationService {
handoverTaskOrderDO.setOperatorsName(userPo.getUserName());
}
/**
* PDA端上传图片并完成出库交接(参考PC端完成出库交接逻辑)
* 1. 保存图片到交接作业单、出库单
* 2. 执行库存扣减(xgkc)、交接单状态更新为已交接
*/
public void pictureApp(HandoverTaskOrderDO handoverTaskOrderDO) {
//pda上传图片插入交接作业单
String orderNumber = handoverTaskOrderDO.getOrderNumber();
if (orderNumber == null || orderNumber.trim().isEmpty()) {
throw new ServiceException("出库单号不能为空");
}
// 1. PDA上传图片插入交接作业单
handoverTaskOrderService.update(new LambdaUpdateWrapper<HandoverTaskOrder>()
.eq(HandoverTaskOrder::getOrderNumber,handoverTaskOrderDO.getOrderNumber())
.set(HandoverTaskOrder::getPictureApp,handoverTaskOrderDO.getPictureApp()));
//pda上传图片插入出库管理
.eq(HandoverTaskOrder::getOrderNumber, orderNumber)
.set(HandoverTaskOrder::getPictureApp, handoverTaskOrderDO.getPictureApp()));
// 2. PDA上传图片插入出库管理,状态改为已出库
stockOutOrderService.update(new LambdaUpdateWrapper<StockOutOrder>()
.eq(StockOutOrder::getOutOrderNumber,handoverTaskOrderDO.getOrderNumber())
.set(StockOutOrder::getStatus,"9")//设置为出库
.set(StockOutOrder::getPictureApp,handoverTaskOrderDO.getPictureApp())//多张图片以,逗号隔开
);
.eq(StockOutOrder::getOutOrderNumber, orderNumber)
.set(StockOutOrder::getStatus, "9")
.set(StockOutOrder::getPictureApp, handoverTaskOrderDO.getPictureApp()));
// 3. 参考PC端完成交接:根据orderNumber查询交接单ID,执行库存扣减+交接状态更新
List<HandoverTaskOrder> handoverList = handoverTaskOrderService.list(
new LambdaQueryWrapper<HandoverTaskOrder>()
.eq(HandoverTaskOrder::getOrderNumber, orderNumber));
if (handoverList != null && !handoverList.isEmpty()) {
List<Long> handoverTaskOrderIds = handoverList.stream()
.map(HandoverTaskOrder::getHandoverTaskOrderId)
.filter(id -> id != null)
.collect(Collectors.toList());
if (!handoverTaskOrderIds.isEmpty()) {
HandoverTaskOrderDO completeDO = new HandoverTaskOrderDO();
completeDO.setHandoverTaskOrderIds(handoverTaskOrderIds);
handoverTaskOrderDomainService.completeHandover(completeDO);
}
}
}
}