pdi回调修改

This commit is contained in:
yf001217 2026-06-17 11:34:46 +08:00
parent 82b8a1fe07
commit fae4abfedd
1 changed files with 14 additions and 6 deletions

View File

@ -237,13 +237,21 @@ public class QmsController extends BaseController {
@PostMapping("/pdi")
public ApiResult<Void> pdi(@RequestBody @NotNull PdiInspectionTaskCallbackQO qo) {
log.info("PDI检测回调, 单号: {}, 是否合格: {}", qo.getOrderNo(), qo.isPass());
WmsInProduceOrder order = produceOrderService.getByNo(qo.getOrderNo());
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
WmsInProduceOrderItem item = produceOrderItemService.lambdaQuery()
.eq(WmsInProduceOrderItem::getOrderId, order.getId())
.eq(WmsInProduceOrderItem::getModelNo, qo.getModelNo())
List<WmsInProduceOrder> orders = produceOrderService.lambdaQuery()
.eq(WmsInProduceOrder::getOrderNo, qo.getOrderNo())
.list();
VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(orders)).throwMessage("订单不存在");
List<Long> orderIds = orders.stream().map(WmsInProduceOrder::getId).toList();
List<WmsInProduceOrderItem> items = produceOrderItemService.lambdaQuery()
.in(WmsInProduceOrderItem::getOrderId, orderIds)
.eq(WmsInProduceOrderItem::getWorkbenchNo, qo.getDeviceNo())
.one();
.eq(WmsInProduceOrderItem::getModelNo, qo.getModelNo())
.list();
VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(items)).throwMessage("订单明细不存在");
VUtil.trueThrowBusinessError(items.size() > 1).throwMessage("订单明细不唯一");
WmsInProduceOrderItem item = items.get(0);
item.setInspectionStatus(qo.isPass() ? 1 : 2);
produceOrderItemService.updateById(item);
return ApiResult.success();