diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/IncomingInspectionTaskControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/IncomingInspectionTaskControllerService.java index e79629a2..5d4a5497 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/IncomingInspectionTaskControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/IncomingInspectionTaskControllerService.java @@ -113,6 +113,9 @@ public class IncomingInspectionTaskControllerService { @Resource private List sendMessageServices; + @Resource + private IQmsIncomingInspectionTaskQrService incomingInspectionTaskQrService; + /** * 来料检验申请(对外接口) * 业务规则: @@ -248,6 +251,17 @@ public class IncomingInspectionTaskControllerService { .eq(QmsIncomingInspectionTask::getId, task.getId()) .update(); + if (CollectionUtil.isNotEmpty(request.getQrCodes())) { + incomingInspectionTaskQrService.saveBatch( + request.getQrCodes().stream() + .map(qrCode -> new QmsIncomingInspectionTaskQr() + .setTaskId(task.getId()) + .setMaterialQrCode(qrCode) + ) + .toList() + ); + } + QmsTodoItem qmsTodoItem = new QmsTodoItem() .setTitle("新的IQC来料检测任务" + task.getTaskNo()) .setCode(basdeSerialNumberControllerService.generateSerialNumber(32)) @@ -381,6 +395,17 @@ public class IncomingInspectionTaskControllerService { .eq(QmsIncomingInspectionTask::getId, task.getId()) .update(); + if (CollectionUtil.isNotEmpty(request.getQrCodes())) { + incomingInspectionTaskQrService.saveBatch( + request.getQrCodes().stream() + .map(qrCode -> new QmsIncomingInspectionTaskQr() + .setTaskId(task.getId()) + .setMaterialQrCode(qrCode) + ) + .toList() + ); + } + QmsTodoItem qmsTodoItem = new QmsTodoItem() .setTitle("新的IQC库存检测任务" + task.getTaskNo()) .setCode(basdeSerialNumberControllerService.generateSerialNumber(32)) diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java index b7f5f0a3..80f30362 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java @@ -350,22 +350,22 @@ public class NormalPGIController extends BaseController { .setItem1(new ArrayList<>()) .setItem2(new ArrayList<>()); - SRMInspectionInputDTO srmDto = new SRMInspectionInputDTO(); - srmDto.setCode("WMS_RCV_RECEIVE_TO_SRM"); - SRMInspectionContentDTO content = new SRMInspectionContentDTO(); - content.setSupplierName(order.getSupplierName()); - content.setSupplierNum(order.getSupplierNum()); - content.setReceiveNum(""); - content.setReceiveType("BY_DELIVERY"); - content.setPurchaseGroup(order.getPurchaseGroup()); - content.setLineVOList(new ArrayList<>()); - srmDto.setContent(content); +// SRMInspectionInputDTO_D srmDto = new SRMInspectionInputDTO_D(); +// srmDto.setCode("WMS_RCV_RECEIVE_TO_SRM"); +// SRMInspectionContentDTO content = new SRMInspectionContentDTO(); +// content.setSupplierName(order.getSupplierName()); +// content.setSupplierNum(order.getSupplierNum()); +// content.setReceiveNum(""); +// content.setReceiveType("BY_DELIVERY"); +// content.setPurchaseGroup(order.getPurchaseGroup()); +// content.setLineVOList(new ArrayList<>()); +// srmDto.setContent(content); qcDto = new QCMaterialSyncDTO() .setPoNum(orderItem.getPoNum()) .setReceiptIds(new ArrayList<>()) - .setZwm3A17DTO(sapDto) - .setPushDto(srmDto); + .setZwm3A17DTO(sapDto); +// .setPushDto(srmDto); qcMaterialSyncDTOS.add(qcDto); } @@ -381,21 +381,36 @@ public class NormalPGIController extends BaseController { .setKZKRI(materialInfoInOrder.getKzkri())); // SRM DTO - SRMLineVOListItem srmItem = new SRMLineVOListItem(); - srmItem.setItemCode(item.getMaterialNo()); - srmItem.setItemName(materialInfoInOrder.getMaktx()); - srmItem.setUnit(materialInfoInOrder.getMeins()); - srmItem.setFactory(materialInfoInOrder.getWerks()); - srmItem.setReceivedWarehouse(materialInfoInOrder.getWarehouseNo()); - srmItem.setReceiveBatchNum(""); - srmItem.setReceivedQty(totalQty); - srmItem.setSerialNum(""); - srmItem.setLineNumber(Integer.valueOf(orderItem.getLineNumber())); - srmItem.setNoteNum(order.getNoteNum()); - srmItem.setRequestNo(String.valueOf(qcItem.getId())); - srmItem.setReceivedDate(DateTimeUtil.format(LocalDate.now(), "yyyy-MM-dd")); - srmItem.setInspectionFlag("Y"); - qcDto.getPushDto().getContent().getLineVOList().add(srmItem); +// SRMLineVOListItem srmItem = new SRMLineVOListItem(); +// srmItem.setItemCode(item.getMaterialNo()); +// srmItem.setItemName(materialInfoInOrder.getMaktx()); +// srmItem.setUnit(materialInfoInOrder.getMeins()); +// srmItem.setFactory(materialInfoInOrder.getWerks()); +// srmItem.setReceivedWarehouse(materialInfoInOrder.getWarehouseNo()); +// srmItem.setReceiveBatchNum(""); +// srmItem.setReceivedQty(totalQty); +// srmItem.setSerialNum(""); +// srmItem.setLineNumber(Integer.valueOf(orderItem.getLineNumber())); +// srmItem.setNoteNum(order.getNoteNum()); +// srmItem.setRequestNo(String.valueOf(qcItem.getId())); +// srmItem.setReceivedDate(DateTimeUtil.format(LocalDate.now(), "yyyy-MM-dd")); +// srmItem.setInspectionFlag("Y"); +// qcDto.getPushDto().getContent().getLineVOList().add(srmItem); + qcDto.getIncomingInspectionApplyQOS().add( + new ExternalIncomingInspectionApplyQO() + .setRequestNo(String.valueOf(receiveItemId)) + .setMaterialNo(item.getMaterialNo()) + .setInspectionType(0) + .setSupplierCode(order.getSupplierNum()) + .setSupplierName(order.getSupplierName()) + .setDeliveryOrderNo(order.getNoteNum()) + .setDeliveryOrderLine(String.valueOf(qcItem.getLineNumber())) + .setPurchaseOrderNo(qcItem.getNoteNum()) + .setPurchaseOrderLine(String.valueOf(qcItem.getLineNumber())) + .setFactory(order.getIuCode()) + .setInspectionQty(qcItem.getReceiptNum() != null ? qcItem.getReceiptNum().intValue() : 0) + .setPurchaseGroup(order.getPurchaseGroup()) + ); qcDto.getReceiptIds().add(qcItem.getId()); @@ -1115,52 +1130,75 @@ public class NormalPGIController extends BaseController { } private void setSrmData( - SRMInspectionInputDTO pushDto, +// SRMInspectionInputDTO_D pushDto, + List incomingInspectionApplyQOS, + WmsSrmOrder order, List codes, SrmMaterialReceiptQO item, - SAPSyncParamsDTO materialInfoInOrder + Long receiveItemId ) { - - if (CollectionUtil.isNotEmpty(codes)) { - // 根据 BatchNumber 和 SerialNumbers 分组并汇总 CodeNum - Map batchNumbers = codes.stream() - .collect(Collectors.groupingBy(SrmMaterialReceiptScanCodes::getKey, - Collectors.mapping(SrmMaterialReceiptScanCodes::getCodeNum, Collectors.reducing(BigDecimal.ZERO, BigDecimal::add)))); - for (Map.Entry entry : batchNumbers.entrySet()) { - String[] keys = entry.getKey().split(";", -1); - SRMLineVOListItem srmItem = new SRMLineVOListItem(); - srmItem.setItemCode(item.getItemCode()); - srmItem.setItemName(materialInfoInOrder.getMaktx()); - srmItem.setUnit(materialInfoInOrder.getMeins()); - srmItem.setFactory(materialInfoInOrder.getWerks()); - srmItem.setReceivedWarehouse(materialInfoInOrder.getWarehouseNo()); - srmItem.setReceiveBatchNum(keys[0]); - srmItem.setReceivedQty(entry.getValue()); - srmItem.setSerialNum(keys[1]); - srmItem.setLineNumber(Integer.valueOf(item.getLineNumber())); - srmItem.setNoteNum(item.getNoteNum()); - srmItem.setRequestNo(IdUtil.getSnowflakeNextIdStr()); - srmItem.setReceivedDate(DateTimeUtil.format(LocalDate.now(), "yyyy-MM-dd")); - srmItem.setInspectionFlag("Y"); - pushDto.getContent().getLineVOList().add(srmItem); - } - } else { - SRMLineVOListItem srmItem = new SRMLineVOListItem(); - srmItem.setItemCode(item.getItemCode()); - srmItem.setItemName(materialInfoInOrder.getMaktx()); - srmItem.setUnit(materialInfoInOrder.getMeins()); - srmItem.setFactory(materialInfoInOrder.getWerks()); - srmItem.setReceivedWarehouse(materialInfoInOrder.getWarehouseNo()); - srmItem.setReceiveBatchNum(""); - srmItem.setReceivedQty(item.getReceiptNum()); - srmItem.setSerialNum(""); - srmItem.setLineNumber(Integer.valueOf(item.getLineNumber())); - srmItem.setNoteNum(item.getNoteNum()); - srmItem.setRequestNo(IdUtil.getSnowflakeNextIdStr()); - srmItem.setReceivedDate(DateTimeUtil.format(LocalDate.now(), "yyyy-MM-dd")); - srmItem.setInspectionFlag("Y"); - pushDto.getContent().getLineVOList().add(srmItem); - } +// if (CollectionUtil.isNotEmpty(codes)) { +// // 根据 BatchNumber 和 SerialNumbers 分组并汇总 CodeNum +// Map batchNumbers = codes.stream() +// .collect(Collectors.groupingBy(SrmMaterialReceiptScanCodes::getKey, +// Collectors.mapping(SrmMaterialReceiptScanCodes::getCodeNum, Collectors.reducing(BigDecimal.ZERO, BigDecimal::add)))); +// for (Map.Entry entry : batchNumbers.entrySet()) { +// String[] keys = entry.getKey().split(";", -1); +// SRMLineVOListItem srmItem = new SRMLineVOListItem(); +// srmItem.setItemCode(item.getItemCode()); +// srmItem.setItemName(materialInfoInOrder.getMaktx()); +// srmItem.setUnit(materialInfoInOrder.getMeins()); +// srmItem.setFactory(materialInfoInOrder.getWerks()); +// srmItem.setReceivedWarehouse(materialInfoInOrder.getWarehouseNo()); +// srmItem.setReceiveBatchNum(keys[0]); +// srmItem.setReceivedQty(entry.getValue()); +// srmItem.setSerialNum(keys[1]); +// srmItem.setLineNumber(Integer.valueOf(item.getLineNumber())); +// srmItem.setNoteNum(item.getNoteNum()); +// srmItem.setRequestNo(IdUtil.getSnowflakeNextIdStr()); +// srmItem.setReceivedDate(DateTimeUtil.format(LocalDate.now(), "yyyy-MM-dd")); +// srmItem.setInspectionFlag("Y"); +// pushDto.getContent().getLineVOList().add(srmItem); +// } +// } else { +// SRMLineVOListItem srmItem = new SRMLineVOListItem(); +// srmItem.setItemCode(item.getItemCode()); +// srmItem.setItemName(materialInfoInOrder.getMaktx()); +// srmItem.setUnit(materialInfoInOrder.getMeins()); +// srmItem.setFactory(materialInfoInOrder.getWerks()); +// srmItem.setReceivedWarehouse(materialInfoInOrder.getWarehouseNo()); +// srmItem.setReceiveBatchNum(""); +// srmItem.setReceivedQty(item.getReceiptNum()); +// srmItem.setSerialNum(""); +// srmItem.setLineNumber(Integer.valueOf(item.getLineNumber())); +// srmItem.setNoteNum(item.getNoteNum()); +// srmItem.setRequestNo(IdUtil.getSnowflakeNextIdStr()); +// srmItem.setReceivedDate(DateTimeUtil.format(LocalDate.now(), "yyyy-MM-dd")); +// srmItem.setInspectionFlag("Y"); +// pushDto.getContent().getLineVOList().add(srmItem); +// } + incomingInspectionApplyQOS.add( + new ExternalIncomingInspectionApplyQO() + .setRequestNo(String.valueOf(receiveItemId)) + .setMaterialNo(item.getItemCode()) + .setInspectionType(0) + .setSupplierCode(order.getSupplierNum()) + .setSupplierName(order.getSupplierName()) + .setDeliveryOrderNo(order.getNoteNum()) + .setDeliveryOrderLine(String.valueOf(item.getLineNumber())) + .setPurchaseOrderNo(item.getNoteNum()) + .setPurchaseOrderLine(String.valueOf(item.getLineNumber())) + .setFactory(order.getIuCode()) + .setInspectionQty(item.getReceiptNum() != null ? item.getReceiptNum().intValue() : 0) + .setPurchaseGroup(order.getPurchaseGroup()) + .setQrCodes( + CollectionUtil.isNotEmpty(codes) + ? codes.stream() + .map(SrmMaterialReceiptScanCodes::getCodeId) + .collect(Collectors.toList()) + : Collections.emptyList() + ) + ); } private void setQcMaterialSyncDto(List qcMaterialSyncDTOS, @@ -1174,7 +1212,7 @@ public class NormalPGIController extends BaseController { ) { ZWM3A17DTO zwm3A17DTO = null; QCMaterialSyncDTO qcDto = null; - SRMInspectionInputDTO srmPushDto = null; +// SRMInspectionInputDTO_D srmPushDto = null; qcDto = qcMaterialSyncDTOS.stream() .filter(qcMaterialSyncDTO -> qcMaterialSyncDTO @@ -1199,25 +1237,25 @@ public class NormalPGIController extends BaseController { } zwm3A17DTO = qcDto.getZwm3A17DTO(); - if (Objects.isNull(qcDto.getPushDto())) { - SRMInspectionInputDTO dto = new SRMInspectionInputDTO(); - SRMInspectionContentDTO content = new SRMInspectionContentDTO(); - content.setSupplierName(order.getSupplierName()); - content.setSupplierNum(order.getSupplierNum()); - content.setReceiveNum(""); - content.setReceiveType("BY_DELIVERY"); - content.setPurchaseGroup(order.getPurchaseGroup()); - content.setLineVOList(new ArrayList<>()); - dto.setContent(content); - dto.setCode("WMS_RCV_RECEIVE_TO_SRM"); - qcDto.setPushDto(dto); - } - srmPushDto = qcDto.getPushDto(); +// if (Objects.isNull(qcDto.getPushDto())) { +// SRMInspectionInputDTO_D dto = new SRMInspectionInputDTO_D(); +// SRMInspectionContentDTO content = new SRMInspectionContentDTO(); +// content.setSupplierName(order.getSupplierName()); +// content.setSupplierNum(order.getSupplierNum()); +// content.setReceiveNum(""); +// content.setReceiveType("BY_DELIVERY"); +// content.setPurchaseGroup(order.getPurchaseGroup()); +// content.setLineVOList(new ArrayList<>()); +// dto.setContent(content); +// dto.setCode("WMS_RCV_RECEIVE_TO_SRM"); +// qcDto.setPushDto(dto); +// } +// srmPushDto = qcDto.getPushDto(); //组装SAP的参数 setZWM3A17DTO(zwm3A17DTO, codes, item, materialInfoInOrder); -//组装SRM的参数 - setSrmData(srmPushDto, codes, item, materialInfoInOrder); +////组装SRM的参数 + setSrmData(qcDto.getIncomingInspectionApplyQOS(), order, codes, item, receiveItemId); WmsQcReceiveItem qmsReceiptItem = new WmsQcReceiveItem() .setId(receiveItemId) diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/pojo/dto/QCMaterialSyncDTO.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/pojo/dto/QCMaterialSyncDTO.java index 82062651..9cafc4e9 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/pojo/dto/QCMaterialSyncDTO.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/pojo/dto/QCMaterialSyncDTO.java @@ -1,10 +1,10 @@ package com.nflg.wms.admin.pojo.dto; -import com.nflg.wms.common.pojo.dto.QCReceiptItemDTO; -import com.nflg.wms.common.pojo.dto.SRMInspectionInputDTO; +import com.nflg.wms.common.pojo.qo.ExternalIncomingInspectionApplyQO; import lombok.Data; import lombok.experimental.Accessors; +import java.util.ArrayList; import java.util.List; @Data @@ -13,7 +13,9 @@ public class QCMaterialSyncDTO { private ZWM3A17DTO zwm3A17DTO; - private SRMInspectionInputDTO pushDto; +// private SRMInspectionInputDTO pushDto; + + private List incomingInspectionApplyQOS = new ArrayList<>(); private String poNum; diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/NormalPGIControllerService.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/NormalPGIControllerService.java index 3e99aaa9..26936f42 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/NormalPGIControllerService.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/NormalPGIControllerService.java @@ -3,7 +3,6 @@ package com.nflg.wms.admin.service; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Pair; import cn.hutool.core.util.StrUtil; -import cn.hutool.json.JSONUtil; import com.nflg.wms.admin.pojo.dto.GoodReceiptDTO; import com.nflg.wms.admin.pojo.dto.QCMaterialSyncDTO; import com.nflg.wms.admin.pojo.dto.ZWM3A17DTO; @@ -26,9 +25,7 @@ import jakarta.annotation.Resource; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import org.springframework.beans.factory.annotation.Value; -import org.springframework.core.ParameterizedTypeReference; import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.http.*; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.RequestParam; @@ -38,9 +35,6 @@ import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; import java.util.Objects; -import java.util.concurrent.TimeUnit; - -import static cn.dev33.satoken.SaManager.log; @Component public class NormalPGIControllerService { @@ -273,9 +267,10 @@ public class NormalPGIControllerService { //导入SAP Pair, Pair> zwm3A17ReturnDTO = sapService.zwm3a17(dto.getZwm3A17DTO()); //推入srm - SRMInspectionContentDTO content = dto.getPushDto().getContent(); - content.setReceiveNum(zwm3A17ReturnDTO.getValue().getKey()); - pushInspectionMaterialsToSRM(dto.getPushDto()); +// SRMInspectionContentDTO content = dto.getPushDto().getContent(); +// content.setReceiveNum(zwm3A17ReturnDTO.getValue().getKey()); +// pushInspectionMaterialsToSRM(dto.getPushDto()); + qmsService.pushIQCIncoming(dto.getIncomingInspectionApplyQOS()); //修改收货单的物料凭证和年度物料凭证 List ids = dto.getReceiptIds(); //修改收货单的物料凭证和年度物料凭证 @@ -410,9 +405,10 @@ public class NormalPGIControllerService { //导入SAP Pair, Pair> zwm3A17ReturnDTO = sapService.zwm3a17(dto.getZwm3A17DTO()); //推入srm - SRMInspectionContentDTO content = dto.getPushDto().getContent(); - content.setReceiveNum(zwm3A17ReturnDTO.getValue().getKey()); - pushInspectionMaterialsToSRM(dto.getPushDto()); +// SRMInspectionContentDTO content = dto.getPushDto().getContent(); +// content.setReceiveNum(zwm3A17ReturnDTO.getValue().getKey()); +// pushInspectionMaterialsToSRM(dto.getPushDto()); + qmsService.pushIQCIncoming(dto.getIncomingInspectionApplyQOS()); //修改收货单的物料凭证和年度物料凭证 List ids = dto.getReceiptIds(); //修改收货单的物料凭证和年度物料凭证 @@ -487,9 +483,10 @@ public class NormalPGIControllerService { if (CollectionUtil.isNotEmpty(qcMaterialSyncDTOS)) { for (QCMaterialSyncDTO dto : qcMaterialSyncDTOS) { Pair, Pair> zwm3A17ReturnDTO = sapService.zwm3a17(dto.getZwm3A17DTO()); - SRMInspectionContentDTO content = dto.getPushDto().getContent(); - content.setReceiveNum(zwm3A17ReturnDTO.getValue().getKey()); - pushInspectionMaterialsToSRM(dto.getPushDto()); +// SRMInspectionContentDTO content = dto.getPushDto().getContent(); +// content.setReceiveNum(zwm3A17ReturnDTO.getValue().getKey()); +// pushInspectionMaterialsToSRM(dto.getPushDto()); + qmsService.pushIQCIncoming(dto.getIncomingInspectionApplyQOS()); List ids = dto.getReceiptIds(); if (CollectionUtil.isNotEmpty(ids)) { @@ -579,37 +576,37 @@ public class NormalPGIControllerService { // } } - /** - * 将检验物料信息推送到SRM系统 - * - * @param request SRM检验输入数据传输对象,包含需要推送的检验物料信息 - */ - private void pushInspectionMaterialsToSRM(SRMInspectionInputDTO request) { - SRMInspectionContentDTO content = request.getContent(); - if (content == null || CollectionUtil.isEmpty(content.getLineVOList())) { - return; - } - - List qoList = new ArrayList<>(); - for (SRMLineVOListItem item : content.getLineVOList()) { - ExternalIncomingInspectionApplyQO qo = new ExternalIncomingInspectionApplyQO(); - qo.setRequestNo(item.getRequestNo()); - qo.setMaterialNo(item.getItemCode()); - qo.setInspectionType(0); - qo.setSupplierCode(content.getSupplierNum()); - qo.setSupplierName(content.getSupplierName()); - qo.setDeliveryOrderNo(content.getReceiveNum()); - qo.setDeliveryOrderLine(String.valueOf(item.getLineNumber())); - qo.setPurchaseOrderNo(item.getNoteNum()); - qo.setPurchaseOrderLine(String.valueOf(item.getLineNumber())); - qo.setFactory(item.getFactory()); - qo.setInspectionQty(item.getReceivedQty() != null ? item.getReceivedQty().intValue() : 0); - qo.setPurchaseGroup(content.getPurchaseGroup()); - qoList.add(qo); - } - - qmsService.pushIQCIncoming(qoList); - } +// /** +// * 将检验物料信息推送到SRM系统 +// * +// * @param request SRM检验输入数据传输对象,包含需要推送的检验物料信息 +// */ +// private void pushInspectionMaterialsToSRM(SRMInspectionInputDTO_D request) { +// SRMInspectionContentDTO content = request.getContent(); +// if (content == null || CollectionUtil.isEmpty(content.getLineVOList())) { +// return; +// } +// +// List qoList = new ArrayList<>(); +// for (SRMLineVOListItem item : content.getLineVOList()) { +// ExternalIncomingInspectionApplyQO qo = new ExternalIncomingInspectionApplyQO(); +// qo.setRequestNo(item.getRequestNo()); +// qo.setMaterialNo(item.getItemCode()); +// qo.setInspectionType(0); +// qo.setSupplierCode(content.getSupplierNum()); +// qo.setSupplierName(content.getSupplierName()); +// qo.setDeliveryOrderNo(content.getReceiveNum()); +// qo.setDeliveryOrderLine(String.valueOf(item.getLineNumber())); +// qo.setPurchaseOrderNo(item.getNoteNum()); +// qo.setPurchaseOrderLine(String.valueOf(item.getLineNumber())); +// qo.setFactory(item.getFactory()); +// qo.setInspectionQty(item.getReceivedQty() != null ? item.getReceivedQty().intValue() : 0); +// qo.setPurchaseGroup(content.getPurchaseGroup()); +// qoList.add(qo); +// } +// +// qmsService.pushIQCIncoming(qoList); +// } // /** diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/QmsService.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/QmsService.java index fdf2ba3e..602e2994 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/QmsService.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/QmsService.java @@ -26,8 +26,8 @@ public class QmsService { @Resource private RestTemplate restTemplate; - @Value("${qms.inspection.url:}") - private String qmsUrl; + @Value("${qms.host}") + private String qmsHost; public void pushIQCIncoming(List qoList) { log.info("推送来料检验申请到QMS:{}", JSONUtil.toJsonStr(qoList)); @@ -37,7 +37,7 @@ public class QmsService { HttpEntity> requestEntity = new HttpEntity<>(qoList, headers); ResponseEntity> response = restTemplate.exchange( - qmsUrl + "/external/incoming-inspection-task/incoming-apply", + qmsHost + "/external/incoming-inspection-task/incoming-apply", HttpMethod.POST, requestEntity, new ParameterizedTypeReference>() {} diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/SRMInspectionContentDTO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/SRMInspectionContentDTO.java deleted file mode 100644 index d10a9b45..00000000 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/SRMInspectionContentDTO.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.nflg.wms.common.pojo.dto; - -import jakarta.validation.constraints.NotBlank; -import lombok.Data; - -import java.util.List; - -@Data -public class SRMInspectionContentDTO { - private String supplierName; - private String supplierNum; - private List lineVOList; - private String receiveNum; - private String receiveType; - - /** - * 采购组 - */ - private String purchaseGroup; -} diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/SRMInspectionInputDTO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/SRMInspectionInputDTO.java deleted file mode 100644 index 5a13cbb9..00000000 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/dto/SRMInspectionInputDTO.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.nflg.wms.common.pojo.dto; - -import lombok.Data; - -@Data -public class SRMInspectionInputDTO { - private String code; - private SRMInspectionContentDTO content; -} diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/ExternalIncomingInspectionApplyQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/ExternalIncomingInspectionApplyQO.java index 94fb8be6..4638fec9 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/ExternalIncomingInspectionApplyQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/ExternalIncomingInspectionApplyQO.java @@ -4,11 +4,15 @@ import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.List; /** * 对外接口-来料检验申请 QO */ @Data +@Accessors(chain = true) public class ExternalIncomingInspectionApplyQO { /** @@ -83,4 +87,9 @@ public class ExternalIncomingInspectionApplyQO { */ @NotBlank(message = "采购组不能为空") private String purchaseGroup; + + /** + * 二维码列表 + */ + private List qrCodes; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/ExternalInventoryInspectionApplyQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/ExternalInventoryInspectionApplyQO.java index 5b1bc142..988e9bfa 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/ExternalInventoryInspectionApplyQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/ExternalInventoryInspectionApplyQO.java @@ -5,6 +5,8 @@ import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Data; +import java.util.List; + /** * 对外接口-库存检测申请 QO */ @@ -54,4 +56,9 @@ public class ExternalInventoryInspectionApplyQO { @NotNull(message = "存储时长不能为空") @Min(value = 1, message = "存储时长必须大于0") private Integer storageDays; + + /** + * 二维码列表 + */ + private List qrCodes; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsTodoItemSearchQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsTodoItemSearchQO.java index bf5a13aa..d6c83d1b 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsTodoItemSearchQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsTodoItemSearchQO.java @@ -10,11 +10,6 @@ import lombok.EqualsAndHashCode; @EqualsAndHashCode(callSuper = true) public class QmsTodoItemSearchQO extends SearchBaseQO { - /** - * 来源类型:0=IQC检测任务,1=PDI检测任务,2=巡检 - */ - private Short sourceType; - /** * 标题 */ diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsTodoItemVO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsTodoItemVO.java index 11538ea7..30585acf 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsTodoItemVO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsTodoItemVO.java @@ -32,6 +32,11 @@ public class QmsTodoItemVO { */ private String sourceTypeName; + /** + * 来源类型编码 + */ + private String sourceTypeCode; + /** * 来源ID */ diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsIncomingInspectionTaskQr.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsIncomingInspectionTaskQr.java new file mode 100644 index 00000000..89c21e08 --- /dev/null +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsIncomingInspectionTaskQr.java @@ -0,0 +1,42 @@ +package com.nflg.wms.repository.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + *

+ * 来料检验任务二维码关联表 + *

+ * + * @author 代码生成器生成 + * @since 2026 + */ +@Getter +@Setter +@ToString +@Accessors(chain = true) +@TableName("qms_incoming_inspection_task_qr") +public class QmsIncomingInspectionTaskQr implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.ASSIGN_ID) + private Long id; + + /** + * 检测任务id,关联来料检验任务表 + */ + private Long taskId; + + /** + * 物料二维码唯一编号 + */ + private String materialQrCode; +} diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/mapper/QmsIncomingInspectionTaskQrMapper.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/mapper/QmsIncomingInspectionTaskQrMapper.java new file mode 100644 index 00000000..ec63fa3e --- /dev/null +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/mapper/QmsIncomingInspectionTaskQrMapper.java @@ -0,0 +1,11 @@ +package com.nflg.wms.repository.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.nflg.wms.repository.entity.QmsIncomingInspectionTaskQr; + +/** + * 来料检验任务二维码关联 Mapper + */ +public interface QmsIncomingInspectionTaskQrMapper extends BaseMapper { + +} diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/IQmsIncomingInspectionTaskQrService.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/IQmsIncomingInspectionTaskQrService.java new file mode 100644 index 00000000..f481e5d9 --- /dev/null +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/IQmsIncomingInspectionTaskQrService.java @@ -0,0 +1,11 @@ +package com.nflg.wms.repository.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.nflg.wms.repository.entity.QmsIncomingInspectionTaskQr; + +/** + * 来料检验任务二维码关联 服务类 + */ +public interface IQmsIncomingInspectionTaskQrService extends IService { + +} diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsIncomingInspectionTaskQrServiceImpl.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsIncomingInspectionTaskQrServiceImpl.java new file mode 100644 index 00000000..1b0b56dd --- /dev/null +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsIncomingInspectionTaskQrServiceImpl.java @@ -0,0 +1,15 @@ +package com.nflg.wms.repository.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.nflg.wms.repository.entity.QmsIncomingInspectionTaskQr; +import com.nflg.wms.repository.mapper.QmsIncomingInspectionTaskQrMapper; +import com.nflg.wms.repository.service.IQmsIncomingInspectionTaskQrService; +import org.springframework.stereotype.Service; + +/** + * 来料检验任务二维码关联 服务实现类 + */ +@Service +public class QmsIncomingInspectionTaskQrServiceImpl extends ServiceImpl implements IQmsIncomingInspectionTaskQrService { + +} diff --git a/nflg-wms-repository/src/main/resources/mapper/QmsTodoItemMapper.xml b/nflg-wms-repository/src/main/resources/mapper/QmsTodoItemMapper.xml index bf48061e..52f77dbd 100644 --- a/nflg-wms-repository/src/main/resources/mapper/QmsTodoItemMapper.xml +++ b/nflg-wms-repository/src/main/resources/mapper/QmsTodoItemMapper.xml @@ -3,7 +3,7 @@