diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InCostCenterBackController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InCostCenterBackController.java index c24c9289..14fdcc26 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InCostCenterBackController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InCostCenterBackController.java @@ -9,7 +9,6 @@ import com.nflg.wms.admin.pojo.dto.PdfPageDTO; import com.nflg.wms.admin.repository.InMaterialScanRecordRespository; import com.nflg.wms.admin.service.BasdeSerialNumberControllerService; import com.nflg.wms.admin.service.SapService; -import com.nflg.wms.admin.util.NoUtil; import com.nflg.wms.admin.util.PdfGeneratorUtil; import com.nflg.wms.admin.util.QRCodeUtil; import com.nflg.wms.admin.util.ThymeleafUtil; @@ -20,7 +19,6 @@ import com.nflg.wms.common.pojo.document.InMaterialScanRecord; import com.nflg.wms.common.pojo.dto.C_MaterialReturnDTO; import com.nflg.wms.common.pojo.dto.DepartmentMaterialReturnSlipDTO; import com.nflg.wms.common.pojo.dto.InventoryInDTO; -import com.nflg.wms.common.pojo.dto.MaterialQRCodeContentDTO; import com.nflg.wms.common.pojo.qo.*; import com.nflg.wms.common.pojo.vo.*; import com.nflg.wms.common.util.UserUtil; @@ -81,8 +79,8 @@ public class InCostCenterBackController extends BaseController { @Resource private IWmsQrCodeMasterService qrCodeMasterService; -// @Resource -// private IWmsWarehouseService + @Resource + private IWmsWarehouseService warehouseService; /** * 查询SAP领料订单数据 @@ -186,7 +184,7 @@ public class InCostCenterBackController extends BaseController { vo.setLgort2(CollectionUtil.get(storageService.getWarehouseNo(order.getWerks(), item.getMatnr()), 0)); } vo.setLgpbe(storageService.getBinNo(item.getMatnr(), order.getWerks(), vo.getLgort2())); -// vo.setIsDisableLocation(); + vo.setIsDisableLocation(warehouseService.isEnableLocation(order.getWerks(), order.getLgort())); return vo; }).toList() ) @@ -198,80 +196,83 @@ public class InCostCenterBackController extends BaseController { */ @Transactional @PostMapping("pda/submit") - public ApiResult submit(@Valid @RequestBody InCostcenterBackSubmitQO request) { - WmsInCostcenterBack order = inCostcenterBackService.lambdaQuery().eq(WmsInCostcenterBack::getNo, request.getNo()).one(); + public ApiResult submit(@Valid @RequestBody InventoryInQO request) {//InCostCenterBackSubmitQO + WmsInCostcenterBack order = inCostcenterBackService.getById(request.getId()); VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在"); VUtil.trueThrowBusinessError(Objects.equals(order.getState(), 2)).throwMessage("该订单已完成"); WmsInCostcenterBackTicket ticket = new WmsInCostcenterBackTicket() .setId(IdUtil.getSnowflakeNextId()) .setNo(serialNumberControllerService.generateSerialNumber(11)) .setOrderId(order.getId()) - .setLgort(request.getLgort()) + .setLgort(request.getWarehouseNo()) .setCreateBy(UserUtil.getUserName()) .setCreateTime(LocalDateTime.now()); List datas = inCostcenterBackItemService.getList(order.getId()); List records = new ArrayList<>(); List ticketItems = new ArrayList<>(); - Set allQrCodes = new HashSet<>(); - request.getItems().forEach(it -> { - it.getItems().forEach(item -> { - allQrCodes.addAll(item.getQrCodes()); - }); - }); + Set allQrCodes = request.getItems().stream() + .map(InventoryInItemQO::getQrCodes) + .flatMap(Collection::stream) + .map(InventoryInItemQRCodeQO::getQrCode) + .collect(Collectors.toSet()); List qrCodeMasters = qrCodeMasterService.lambdaQuery() .ne(WmsQrCodeMaster::getProcessStage, BarCodeProcessStage.InBound.getState()) .in(WmsQrCodeMaster::getBarcodeCode, allQrCodes) .list(); request.getItems().forEach(it -> { - WmsInCostcenterBackItem item = datas.stream().filter(d -> Objects.equals(it.getOrderItemId(), d.getId())).findFirst().orElse(null); - VUtil.trueThrowBusinessError(Objects.isNull(item)).throwMessage("订单项无效"); + WmsInCostcenterBackItem item = datas.stream() + .filter(d -> Objects.equals(it.getItemId(), d.getId())) + .findFirst() + .orElse(null); + VUtil.trueThrowBusinessError(Objects.isNull(item)).throwMessage("订单项无效:" + it.getItemId()); WmsInCostcenterBackTicketItem ti = new WmsInCostcenterBackTicketItem() .setId(IdUtil.getSnowflakeNextId()) .setTicketId(ticket.getId()) .setOrderItemId(item.getId()) - .setLgpbe(StrUtil.join(",", it.getItems().stream().map(InCostcenterBackSubmitItemQRQO::getBinNo).toList())) + .setLgpbe(StrUtil.join(",", it.getQrCodes().stream().map(InventoryInItemQRCodeQO::getBinNo).collect(Collectors.toSet()))) .setNum(BigDecimal.ZERO); ticketItems.add(ti); - it.getItems().forEach(iit -> { - iit.getQrCodes().forEach(qrCode -> { - WmsQrCodeMaster qrCodeContent = qrCodeMasterService.getByCode(qrCode); - String materialNo = qrCodeContent.getMaterialCode(); - VUtil.trueThrowBusinessError(!StrUtil.equals(materialNo, item.getMatnr())) - .throwMessage("订单项与物料不符"); - item.setLeft(item.getLeft().subtract(qrCodeContent.getQuantity())); - VUtil.trueThrowBusinessError(item.getLeft().compareTo(BigDecimal.ZERO) < 0) - .throwMessage("物料" + materialNo + "的入库数量超出申请数量"); - ti.setNum(ti.getNum().add(qrCodeContent.getQuantity())); - records.add(new InMaterialScanRecord() - .setSource(2) - .setSourceId(order.getId()) - .setSourceItemId(item.getId()) - .setTicketItemId(ti.getId()) - .setMaterialNo(materialNo) - .setContent(qrCode) - .setBatchNo(qrCodeContent.getBatchNo()) - .setSerialNo(qrCodeContent.getSerialNo()) - .setFactoryNo(order.getWerks()) - .setWarehouseNo(request.getLgort()) - .setBinNo(iit.getBinNo()) - .setUniqNo(qrCodeContent.getBarcodeCode()) - .setNum(qrCodeContent.getQuantity()) - .setCreateBy(UserUtil.getUserName()) - .setCreateTime(Instant.now()) - ); - WmsQrCodeMaster qrCodeMaster = qrCodeMasters.stream() - .filter(q -> StrUtil.equals(q.getBarcodeCode(), qrCode)) - .findFirst() - .orElse(null); - VUtil.trueThrowBusinessError(Objects.isNull(qrCodeMaster)).throwMessage("二维码" + qrCode + "无效"); - qrCodeMaster.setProcessStage(BarCodeProcessStage.InBound.getState()); - qrCodeMaster.setFactoryCode(order.getWerks()); - qrCodeMaster.setStorageLocation(request.getLgort()); - qrCodeMaster.setBinLocation(iit.getBinNo()); - qrCodeMaster.setLastScanBy(UserUtil.getUserId()); - qrCodeMaster.setLastScanByname(UserUtil.getUserName()); - qrCodeMaster.setLastScanTime(LocalDateTime.now()); - }); + it.getQrCodes().forEach(iit -> { + WmsQrCodeMaster qrCodeMaster = qrCodeMasters.stream() + .filter(q -> StrUtil.equals(q.getBarcodeCode(), iit.getQrCode())) + .findFirst() + .orElse(null); + VUtil.trueThrowBusinessError(Objects.isNull(qrCodeMaster)).throwMessage("无效的二维码:"+iit.getQrCode()); + VUtil.trueThrowBusinessError(Objects.equals(qrCodeMaster.getProcessStage(),BarCodeProcessStage.InBound.getState())) + .throwMessage("二维码" + iit.getQrCode() + "已入库"); + String materialNo = qrCodeMaster.getMaterialCode(); + VUtil.trueThrowBusinessError(!StrUtil.equals(materialNo, item.getMatnr())) + .throwMessage("订单项与物料不符"); + VUtil.trueThrowBusinessError(iit.getNum().compareTo(qrCodeMaster.getQuantity())>0) + .throwMessage("二维码" + iit.getQrCode() + "数量"+iit.getNum()+"不能大于实际数量"+qrCodeMaster.getQuantity()); + item.setLeft(item.getLeft().subtract(iit.getNum())); + VUtil.trueThrowBusinessError(item.getLeft().compareTo(BigDecimal.ZERO) < 0) + .throwMessage("物料" + materialNo + "的入库数量超出申请数量"); + ti.setNum(ti.getNum().add(iit.getNum())); + qrCodeMaster.setFactoryCode(order.getWerks()); + qrCodeMaster.setStorageLocation(request.getWarehouseNo()); + qrCodeMaster.setBinLocation(iit.getBinNo()); + qrCodeMaster.setProcessStage(BarCodeProcessStage.InBound.getState()); + qrCodeMaster.setLastScanBy(UserUtil.getUserId()); + qrCodeMaster.setLastScanByname(UserUtil.getUserName()); + qrCodeMaster.setLastScanTime(LocalDateTime.now()); + records.add(new InMaterialScanRecord() + .setSource(2) + .setSourceId(order.getId()) + .setSourceItemId(item.getId()) + .setTicketItemId(ti.getId()) + .setMaterialNo(materialNo) + .setContent(iit.getQrCode()) + .setBatchNo(qrCodeMaster.getBatchNo()) + .setSerialNo(qrCodeMaster.getSerialNo()) + .setFactoryNo(qrCodeMaster.getFactoryCode()) + .setWarehouseNo(qrCodeMaster.getStorageLocation()) + .setBinNo(qrCodeMaster.getBinLocation()) + .setUniqNo(qrCodeMaster.getBarcodeCode()) + .setNum(iit.getNum()) + .setCreateBy(UserUtil.getUserName()) + .setCreateTime(Instant.now()) + ); }); }); inCostcenterBackItemService.updateBatchById(datas); @@ -284,9 +285,9 @@ public class InCostCenterBackController extends BaseController { .set(WmsInCostcenterBack::getState, datas.stream().map(WmsInCostcenterBackItem::getLeft).reduce(BigDecimal.ZERO, BigDecimal::add).compareTo(BigDecimal.ZERO) > 0 ? 1 : 2) .eq(WmsInCostcenterBack::getId, order.getId()) .update(); - qrCodeMasterService.updateBatchById(qrCodeMasters); + qrCodeMasterService.updateBarCode(qrCodeMasters); inventoryService.in(records.stream() - .collect(Collectors.groupingBy(InMaterialScanRecord::getKey)) + .collect(Collectors.groupingBy(InMaterialScanRecord::getKey9)) .values() .stream() .map(list -> new InventoryInDTO() @@ -295,6 +296,7 @@ public class InCostCenterBackController extends BaseController { .setSerialNo(list.get(0).getSerialNo()) .setFactoryNo(order.getWerks()) .setWarehouseNo(order.getLgort()) + .setBinLocation(list.get(0).getBinNo()) .setNum(list.stream().map(InMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) ).toList() ); @@ -307,7 +309,7 @@ public class InCostCenterBackController extends BaseController { .setResbRspos(item.getRspos()) .setResbMatnr(item.getMatnr()) .setMaktx(item.getMaktx()) - .setResbLgort(request.getLgort()) + .setResbLgort(request.getWarehouseNo()) .setResbWerks(order.getWerks()) .setResbMeins(item.getMeins()) .setErfmg(its.stream().map(InMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceBackController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceBackController.java index d1178b68..c13e3801 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceBackController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceBackController.java @@ -294,7 +294,7 @@ public class InProduceBackController extends BaseController { qrCodeMasterService.updateBatchById(qrCodeMasters); inProduceBackTicketItemService.saveBatch(ticketItems); inventoryService.in(records.stream() - .collect(Collectors.groupingBy(InMaterialScanRecord::getKey)) + .collect(Collectors.groupingBy(InMaterialScanRecord::getKey9)) .values() .stream() .map(list -> new InventoryInDTO() @@ -303,6 +303,7 @@ public class InProduceBackController extends BaseController { .setSerialNo(list.get(0).getSerialNo()) .setFactoryNo(order.getDwerk()) .setWarehouseNo(order.getLgort2()) + .setBinLocation(list.get(0).getBinNo()) .setNum(list.stream().map(InMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) ).toList() ); diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceOrderController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceOrderController.java index 5f75d5cb..d4686035 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceOrderController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceOrderController.java @@ -372,6 +372,7 @@ public class InProduceOrderController extends BaseController { child.setMustScan(false); } child.setBinNo(binService.getBinNo(child.getMaterialNo(), child.getFactoryNo(), child.getWarehouseNo())); + child.setIsDisableLocation(warehouseService.isEnableLocation(child.getFactoryNo(), child.getWarehouseNo())); }); datas.addAll(children); }); @@ -379,6 +380,7 @@ public class InProduceOrderController extends BaseController { } else { list.forEach(it -> { it.setBinNo(binService.getBinNo(it.getMaterialNo(), it.getFactoryNo(), it.getWarehouseNo())); + it.setIsDisableLocation(warehouseService.isEnableLocation(it.getFactoryNo(), it.getWarehouseNo())); }); return ApiResult.success(list); } @@ -551,6 +553,7 @@ public class InProduceOrderController extends BaseController { .setWarehouseNo(it.getWarehouseNo()) .setBatchNo(it.getBatchNo()) .setSerialNo(it.getSernr()) + .setBinLocation(it.getBinNo()) ).toList() ); if (CollectionUtil.isNotEmpty(warehouseNoChange)) { diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceOrderSurplusController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceOrderSurplusController.java index 647b0700..83c74e7b 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceOrderSurplusController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/InProduceOrderSurplusController.java @@ -17,7 +17,6 @@ import com.nflg.wms.common.pojo.ApiResult; import com.nflg.wms.common.pojo.PageData; import com.nflg.wms.common.pojo.document.InMaterialScanRecord; import com.nflg.wms.common.pojo.dto.InventoryInDTO; -import com.nflg.wms.common.pojo.dto.MaterialQRCodeContentDTO; import com.nflg.wms.common.pojo.dto.QrCodeMasterPrintDTO; import com.nflg.wms.common.pojo.qo.*; import com.nflg.wms.common.pojo.vo.*; @@ -84,6 +83,9 @@ public class InProduceOrderSurplusController extends BaseController { @Resource private IWmsQrCodeMasterService qrCodeMasterService; + @Resource + private IWmsWarehouseService warehouseService; + /** * 从SAP查询订单信息 */ @@ -210,7 +212,9 @@ public class InProduceOrderSurplusController extends BaseController { .setMaktx2(item.getMaktx2()) .setMatnr(item.getMatnr()) .setMeins(item.getMeins()) - .setNum(item.getLeftNum())) + .setNum(item.getLeftNum()) + .setIsDisableLocation(warehouseService.isEnableLocation(order.getDwerk(), order.getLgort2())) + ) .toList() ) ); @@ -221,7 +225,7 @@ public class InProduceOrderSurplusController extends BaseController { */ @Transactional @PostMapping("pda/submit") - public ApiResult submit(@Valid @RequestBody InCostcenterBackSubmitQO request) { + public ApiResult submit(@Valid @RequestBody InCostCenterBackSubmitQO request) { WmsInProduceOrderSurplus order = inProduceOrderSurplusService.lambdaQuery().eq(WmsInProduceOrderSurplus::getNo, request.getNo()).one(); VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在"); WmsInProduceOrderSurplusTicket ticket = new WmsInProduceOrderSurplusTicket() @@ -241,7 +245,7 @@ public class InProduceOrderSurplusController extends BaseController { .setId(IdUtil.getSnowflakeNextId()) .setTicketId(ticket.getId()) .setOrderItemId(item.getId()) - .setLgpbe(StrUtil.join(",", it.getItems().stream().map(InCostcenterBackSubmitItemQRQO::getBinNo).toList())) + .setLgpbe(StrUtil.join(",", it.getItems().stream().map(InCostCenterBackSubmitItemQRQO::getBinNo).toList())) .setNum(BigDecimal.ZERO); ticketItems.add(ti); it.getItems().forEach(iit -> { @@ -287,7 +291,7 @@ public class InProduceOrderSurplusController extends BaseController { .eq(WmsInProduceOrderSurplus::getId, order.getId()) .update(); inventoryService.in(records.stream() - .collect(Collectors.groupingBy(InMaterialScanRecord::getKey)) + .collect(Collectors.groupingBy(InMaterialScanRecord::getKey9)) .values() .stream() .map(list -> new InventoryInDTO() @@ -297,6 +301,7 @@ public class InProduceOrderSurplusController extends BaseController { .setSerialNo(list.get(0).getSerialNo()) .setFactoryNo(order.getDwerk()) .setWarehouseNo(ticket.getLgort()) + .setBinLocation(list.get(0).getBinNo()) .setNum(list.stream().map(InMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) ).toList() ); 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 f3634f65..239a3c50 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 @@ -472,7 +472,7 @@ public class NormalPGIController extends BaseController { .setLastScanTime(LocalDateTime.now()); qrCodeMasters.add(wmsQrCodeMaster); if (CollectionUtil.isNotEmpty(qo.getItems())) { - InCostcenterBackSubmitItemQRQO qrqo = qo.getItems() + InCostCenterBackSubmitItemQRQO qrqo = qo.getItems() .stream() .filter(iit -> iit.getQrCodes().contains(code.getCodeId())) .findFirst() @@ -1256,7 +1256,7 @@ public class NormalPGIController extends BaseController { .setItems( new ArrayList<>() { { - add(new InCostcenterBackSubmitItemQRQO() + add(new InCostCenterBackSubmitItemQRQO() .setBinNo(item.getStorageLocation()) .setQrCodes( qrCodeMasters.stream() diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TransferCompanyController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TransferCompanyController.java index 7ce18323..ca9cefe7 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TransferCompanyController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TransferCompanyController.java @@ -516,7 +516,7 @@ public class TransferCompanyController extends BaseController { List records = new ArrayList<>(); List qrCodeMasters = new ArrayList<>(); records1.forEach(record -> { - InCostcenterBackSubmitItemQRQO qrqo = qo.getItems() + InCostCenterBackSubmitItemQRQO qrqo = qo.getItems() .stream() .map(InSubmitItemQO::getItems) .flatMap(Collection::stream) @@ -561,7 +561,7 @@ public class TransferCompanyController extends BaseController { .setBinNos1( StrUtil.join(",", q.getItems() .stream() - .map(InCostcenterBackSubmitItemQRQO::getQrCodes) + .map(InCostCenterBackSubmitItemQRQO::getQrCodes) .flatMap(Collection::stream) .toList() ) @@ -571,7 +571,7 @@ public class TransferCompanyController extends BaseController { transferCompanyTicketItemService.updateBatchById(ticketItems); } inventoryService.in(records.stream() - .collect(Collectors.groupingBy(InMaterialScanRecord::getKey)) + .collect(Collectors.groupingBy(InMaterialScanRecord::getKey9)) .values() .stream() .map(list -> new InventoryInDTO() @@ -580,6 +580,7 @@ public class TransferCompanyController extends BaseController { .setSerialNo(list.get(0).getSerialNo()) .setFactoryNo(list.get(0).getFactoryNo()) .setWarehouseNo(list.get(0).getWarehouseNo()) + .setBinLocation(list.get(0).getBinNo()) .setNum(list.stream().map(InMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) ).toList() ); diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TransferFactoryController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TransferFactoryController.java index 7e7967aa..80b8b2c1 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TransferFactoryController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TransferFactoryController.java @@ -11,7 +11,6 @@ import com.nflg.wms.admin.repository.InventoryForOutRepository; import com.nflg.wms.admin.repository.OutMaterialScanRecordRespository; import com.nflg.wms.admin.service.BasdeSerialNumberControllerService; import com.nflg.wms.admin.service.SapService; -import com.nflg.wms.admin.util.NoUtil; import com.nflg.wms.admin.util.PdfGeneratorUtil; import com.nflg.wms.admin.util.QRCodeUtil; import com.nflg.wms.admin.util.ThymeleafUtil; @@ -509,7 +508,14 @@ public class TransferFactoryController extends BaseController { .setSerialNo(record.getSerialNo()) .setFactoryNo(ticket.getWerks()) .setWarehouseNo(qo.getLgort1()) - .setBinNo("") + .setBinNo(qo.getItems().stream() + .map(InSubmitItemQO::getItems) + .flatMap(Collection::stream) + .filter(q -> q.getQrCodes().contains(record.getUniqNo())) + .findFirst() + .map(InCostCenterBackSubmitItemQRQO::getBinNo) + .orElse("") + ) .setUniqNo(record.getUniqNo()) .setRspos(record.getRspos()) .setNum(record.getNum()) @@ -531,7 +537,7 @@ public class TransferFactoryController extends BaseController { // .setBinNos1(it.getBinNos()) // ).toList()); inventoryService.in(records.stream() - .collect(Collectors.groupingBy(InMaterialScanRecord::getKey)) + .collect(Collectors.groupingBy(InMaterialScanRecord::getKey9)) .values() .stream() .map(list -> new InventoryInDTO() @@ -540,6 +546,7 @@ public class TransferFactoryController extends BaseController { .setSerialNo(list.get(0).getSerialNo()) .setFactoryNo(list.get(0).getFactoryNo()) .setWarehouseNo(list.get(0).getWarehouseNo()) + .setBinLocation(list.get(0).getBinNo()) .setNum(list.stream().map(InMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) ).toList() ); diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/document/InMaterialScanRecord.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/document/InMaterialScanRecord.java index a6ea32d1..1ad1305c 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/document/InMaterialScanRecord.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/document/InMaterialScanRecord.java @@ -170,4 +170,11 @@ public class InMaterialScanRecord { public String getKey8() { return batchNo + "|" + factoryNo + "|" + unit + "|" + warehouseNo; } + + @Transient + private String key9; + + public String getKey9() { + return this.materialNo + "|" + this.batchNo + "|" + this.getSerialNo() + "|" + this.factoryNo + "|" + this.warehouseNo + "|" + this.binNo; + } } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitItemQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitItemQO.java similarity index 71% rename from nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitItemQO.java rename to nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitItemQO.java index e291b744..dbeacd0e 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitItemQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitItemQO.java @@ -1,7 +1,6 @@ package com.nflg.wms.common.pojo.qo; import jakarta.validation.Valid; -import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.Data; @@ -9,7 +8,7 @@ import lombok.Data; import java.util.List; @Data -public class InCostcenterBackSubmitItemQO { +public class InCostCenterBackSubmitItemQO { /** * 订单项ID @@ -22,5 +21,5 @@ public class InCostcenterBackSubmitItemQO { */ @Valid @NotEmpty - private List items; + private List items; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitItemQRQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitItemQRQO.java similarity index 89% rename from nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitItemQRQO.java rename to nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitItemQRQO.java index 08d457ad..cb69b43b 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitItemQRQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitItemQRQO.java @@ -8,7 +8,7 @@ import java.util.List; @Data @Accessors(chain = true) -public class InCostcenterBackSubmitItemQRQO { +public class InCostCenterBackSubmitItemQRQO { /** * 实际入库储位编号列表 diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitQO.java similarity index 81% rename from nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitQO.java rename to nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitQO.java index fe87bb7c..f18d5513 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostcenterBackSubmitQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InCostCenterBackSubmitQO.java @@ -8,7 +8,7 @@ import lombok.Data; import java.util.List; @Data -public class InCostcenterBackSubmitQO { +public class InCostCenterBackSubmitQO { @NotBlank private String no; @@ -24,5 +24,5 @@ public class InCostcenterBackSubmitQO { */ @Valid @NotEmpty - private List items; + private List items; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InProduceBackSubmitQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InProduceBackSubmitQO.java index 630a1749..e5d63648 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InProduceBackSubmitQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InProduceBackSubmitQO.java @@ -24,5 +24,5 @@ public class InProduceBackSubmitQO { */ @Valid @NotEmpty - private List items; + private List items; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InProduceOrderReceiveMaterialQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InProduceOrderReceiveMaterialQO.java index 5f3a39b2..d2cc7c35 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InProduceOrderReceiveMaterialQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InProduceOrderReceiveMaterialQO.java @@ -2,7 +2,6 @@ package com.nflg.wms.common.pojo.qo; import jakarta.validation.Valid; import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotEmpty; import lombok.Data; import java.util.List; @@ -26,5 +25,5 @@ public class InProduceOrderReceiveMaterialQO { * 二维码列表 */ @Valid - private List items; + private List items; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InSubmitItemQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InSubmitItemQO.java index 890a10cb..68b8e446 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InSubmitItemQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InSubmitItemQO.java @@ -1,7 +1,6 @@ package com.nflg.wms.common.pojo.qo; import jakarta.validation.Valid; -import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.Data; @@ -20,5 +19,5 @@ public class InSubmitItemQO { * 二维码列表 */ @Valid - private List items; + private List items; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInItemQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInItemQO.java new file mode 100644 index 00000000..2851782a --- /dev/null +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInItemQO.java @@ -0,0 +1,20 @@ +package com.nflg.wms.common.pojo.qo; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +import java.util.List; + +@Data +public class InventoryInItemQO { + + /** + * 项id + */ + @NotNull + private Long itemId; + + @Valid + private List qrCodes; +} diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInItemQRCodeQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInItemQRCodeQO.java new file mode 100644 index 00000000..d21670f3 --- /dev/null +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInItemQRCodeQO.java @@ -0,0 +1,28 @@ +package com.nflg.wms.common.pojo.qo; + +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class InventoryInItemQRCodeQO { + + /** + * 二维码唯一码 + */ + @NotBlank + private String qrCode; + + /** + * 数量 + */ + @NotNull + private BigDecimal num; + + /** + * 储位编号 + */ + private String binNo; +} diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInQO.java new file mode 100644 index 00000000..ccfb42a3 --- /dev/null +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/InventoryInQO.java @@ -0,0 +1,32 @@ +package com.nflg.wms.common.pojo.qo; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +import java.util.List; + +@Data +public class InventoryInQO { + + /** + * 单据id + */ + @NotNull + private Long id; + + /** + * 仓库编号 + */ + @NotBlank + private String warehouseNo; + + /** + * 订单项列表 + */ + @Valid + @NotEmpty + private List items; +} diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/PoReceiveTaskItemConfirmQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/PoReceiveTaskItemConfirmQO.java index 45bed751..0c8a571b 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/PoReceiveTaskItemConfirmQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/PoReceiveTaskItemConfirmQO.java @@ -1,11 +1,9 @@ package com.nflg.wms.common.pojo.qo; import jakarta.validation.Valid; -import jakarta.validation.constraints.NotEmpty; import lombok.Data; import lombok.experimental.Accessors; -import java.math.BigDecimal; import java.util.List; @Data @@ -39,5 +37,5 @@ public class PoReceiveTaskItemConfirmQO { * 二维码列表 */ @Valid - private List items; + private List items; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QCReceiveTaskConfirmQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QCReceiveTaskConfirmQO.java index 8aaef669..32617b22 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QCReceiveTaskConfirmQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QCReceiveTaskConfirmQO.java @@ -1,12 +1,9 @@ package com.nflg.wms.common.pojo.qo; import jakarta.validation.Valid; -import jakarta.validation.constraints.NotEmpty; import lombok.Data; -import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; -import java.math.BigDecimal; import java.util.List; @Data @@ -56,5 +53,5 @@ public class QCReceiveTaskConfirmQO { * 二维码列表 */ @Valid - private List items; + private List items; } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/InProduceOrderItemVO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/InProduceOrderItemVO.java index 391cf1b8..94e8e2f6 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/InProduceOrderItemVO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/InProduceOrderItemVO.java @@ -77,4 +77,10 @@ public class InProduceOrderItemVO { * 是否必须扫码,如果为false的话可以不扫码 */ private boolean mustScan = true; + + /** + * 是否启用储位管理,true为启用,false为不启用 + */ + @JsonProperty("isDisableLocation") + private Boolean isDisableLocation = true; }