diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/config/SAPConfig.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/config/SAPConfig.java index bb7d6d96..72e2d917 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/config/SAPConfig.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/config/SAPConfig.java @@ -12,7 +12,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Lazy; import java.util.HashMap; import java.util.Map; @@ -92,13 +91,11 @@ public class SAPConfig { } @Bean(destroyMethod = "") - @Lazy public JCoDestination jcoDestination() throws JCoException { return JCoDestinationManager.getDestination(ABAP_AS_POOLED); } @Bean - @Lazy public JCoRepository getJCoRepository() throws JCoException { return jcoDestination().getRepository(); } diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutAssistanceController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutAssistanceController.java index 0f66d8cf..f7e103d6 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutAssistanceController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutAssistanceController.java @@ -301,11 +301,11 @@ public class OutAssistanceController extends BaseController { }); outAssistanceItemService.updateBatchById(datas); outAssistanceTicketItemService.saveBatch(ticketItems); + outAssistanceTicketService.save(ticket); if (!request.getNeedAudit()) { //不需要审核 submitSap(order, ticket, records, datas); } else { - outAssistanceTicketService.save(ticket); inventoryForOutRepository.saveAll(request.getRecommendBatch() .stream() .map(item -> { @@ -360,9 +360,11 @@ public class OutAssistanceController extends BaseController { }).toList() ) ); - ticket.setMatDoc(dto.getMatDoc()); - ticket.setDocYear(dto.getDocYear()); - outAssistanceTicketService.save(ticket); + outAssistanceTicketService.lambdaUpdate() + .set(WmsOutAssistanceTicket::getMatDoc, dto.getMatDoc()) + .set(WmsOutAssistanceTicket::getDocYear, dto.getDocYear()) + .eq(WmsOutAssistanceTicket::getId, ticket.getId()) + .update(); } /** diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutCostCenterController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutCostCenterController.java index f91131b9..fa8386e1 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutCostCenterController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutCostCenterController.java @@ -289,11 +289,11 @@ public class OutCostCenterController extends BaseController { }); outCostcenterItemService.updateBatchById(datas); outCostcenterTicketItemService.saveBatch(ticketItems); + outCostcenterTicketService.save(ticket); if (!request.getNeedAudit()) { //不需要审核 submitSap(order, ticket, records, datas); } else { - outCostcenterTicketService.save(ticket); inventoryForOutRepository.saveAll(request.getRecommendBatch() .stream() .map(item -> { @@ -347,9 +347,11 @@ public class OutCostCenterController extends BaseController { }).toList() ) ); - ticket.setMatDoc(vo.getEMblnr()); - ticket.setDocYear(vo.getEMJahr()); - outCostcenterTicketService.save(ticket); + outCostcenterTicketService.lambdaUpdate() + .set(WmsOutCostcenterTicket::getMatDoc, vo.getEMblnr()) + .set(WmsOutCostcenterTicket::getDocYear, vo.getEMJahr()) + .eq(WmsOutCostcenterTicket::getId, ticket.getId()) + .update(); } /** diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutProduceController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutProduceController.java index e46cdf83..0baaf971 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutProduceController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutProduceController.java @@ -418,11 +418,11 @@ public class OutProduceController extends BaseController { }); outProduceItemService.updateBatchById(datas); outProduceTicketItemService.saveBatch(ticketItems); + outProduceTicketService.save(ticket); if (!request.getNeedAudit()) { //不需要审核 submitSap(order, ticket, records, datas); } else { - outProduceTicketService.save(ticket); inventoryForOutRepository.saveAll(request.getRecommendBatch() .stream() .map(ifo -> { @@ -472,9 +472,11 @@ public class OutProduceController extends BaseController { }).toList() ) ); - ticket.setMatDoc(vo.getMat_doc()); - ticket.setDocYear(vo.getDocYear()); - outProduceTicketService.save(ticket); + outProduceTicketService.lambdaUpdate() + .set(WmsOutProduceTicket::getMatDoc, vo.getMat_doc()) + .set(WmsOutProduceTicket::getDocYear, vo.getDocYear()) + .eq(WmsOutProduceTicket::getId, ticket.getId()) + .update(); } /** diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/ScanRecordController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/ScanRecordController.java index bd12cbac..d2710bcd 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/ScanRecordController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/ScanRecordController.java @@ -102,13 +102,16 @@ public class ScanRecordController extends BaseController { dto.getItems().forEach(item -> { OutDifferenceItemVO itemVO = new OutDifferenceItemVO() .setRecommendbatchNo(item.getBatchNo()) + .setRecommendSerialNo(item.getSerialNo()) .setRecommendNum(item.getNum()); List mrecords = records.stream() .filter(r -> StrUtil.equals(r.getMaterialNo(), dto.getMaterialNo()) - && StrUtil.equals(r.getBatchNo(), item.getBatchNo())) + && StrUtil.equals(r.getBatchNo(), item.getBatchNo()) + && StrUtil.equals(r.getSerialNo(), item.getSerialNo())) .toList(); if (CollectionUtil.isNotEmpty(mrecords)) { itemVO.setScanBatchNo(item.getBatchNo()); + itemVO.setScanSerialNo(item.getSerialNo()); itemVO.setScanNum(mrecords.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)); records.removeAll(mrecords); } @@ -120,18 +123,18 @@ public class ScanRecordController extends BaseController { records.stream() .collect(Collectors.groupingBy(OutMaterialScanRecord::getMaterialNo)) .forEach((k, v) -> { - OutDifferenceVO vo = new OutDifferenceVO() - .setMaterialNo(k); + OutDifferenceVO vo = vos.stream().filter(it -> StrUtil.equals(it.getMaterialNo(), k)).findFirst().get(); v.stream() - .collect(Collectors.groupingBy(OutMaterialScanRecord::getBatchNo)) - .forEach((batchNo, vv) -> { + .collect(Collectors.groupingBy(OutMaterialScanRecord::getKey8)) + .forEach((key, vv) -> { vo.getItems().add(new OutDifferenceItemVO() .setRecommendbatchNo("") + .setRecommendSerialNo("") .setRecommendNum(BigDecimal.ZERO) - .setScanBatchNo(batchNo) + .setScanBatchNo(StrUtil.split(key, "|").get(1)) + .setScanSerialNo(StrUtil.split(key, "|").get(2)) .setScanNum(vv.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add))); }); - vos.add(vo); }); } return ApiResult.success(vos); 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 84ca2508..19c2c4c5 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 @@ -339,11 +339,11 @@ public class TransferCompanyController extends BaseController { .eq(WmsTransferCompany::getId, order.getId()) .update(); transferCompanyTicketItemService.saveBatch(ticketItems); + transferCompanyTicketService.save(ticket); if (!request.getNeedAudit()) { //不需要审核 submitSap(order, ticket, records, datas, ticketItems); } else { - transferCompanyTicketService.save(ticket); inventoryForOutRepository.saveAll(request.getRecommendBatch() .stream() .map(item -> { @@ -399,9 +399,11 @@ public class TransferCompanyController extends BaseController { ).toList() ) ); - ticket.setDocYear(vo.getMjahr()); - ticket.setMatDoc(vo.getMblnr()); - transferCompanyTicketService.save(ticket); + transferCompanyTicketService.lambdaUpdate() + .set(WmsTransferCompanyTicket::getMatDoc, vo.getMblnr()) + .set(WmsTransferCompanyTicket::getDocYear, vo.getMjahr()) + .eq(WmsTransferCompanyTicket::getId, ticket.getId()) + .update(); } /** diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/SapService.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/SapService.java index 6e5febd0..584b4579 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/SapService.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/SapService.java @@ -21,7 +21,6 @@ import com.nflg.wms.common.util.VUtil; import com.sap.conn.jco.*; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; -import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; import java.math.BigDecimal; @@ -33,11 +32,9 @@ import java.util.stream.Collectors; public class SapService { @Resource - @Lazy private JCoDestination destination; @Resource - @Lazy private JCoRepository repository; /** diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/document/OutMaterialScanRecord.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/document/OutMaterialScanRecord.java index 8400aac5..e6b8d56a 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/document/OutMaterialScanRecord.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/document/OutMaterialScanRecord.java @@ -164,4 +164,11 @@ public class OutMaterialScanRecord { public String getKey7() { return materialNo + "|" + batchNo; } + + @Transient + private String key8; + + public String getKey8() { + return materialNo + "|" + batchNo + "|" + this.serialNo; + } } diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/OutDifferenceItemVO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/OutDifferenceItemVO.java index 02b28748..994cd8f1 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/OutDifferenceItemVO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/OutDifferenceItemVO.java @@ -14,6 +14,11 @@ public class OutDifferenceItemVO { */ private String recommendbatchNo; + /** + * 推荐序列号 + */ + private String recommendSerialNo; + /** * 推荐数量 */ @@ -24,6 +29,11 @@ public class OutDifferenceItemVO { */ private String scanBatchNo; + /** + * 扫码序列号 + */ + private String scanSerialNo; + /** * 扫码数量 */ diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/WmsInventoryServiceImpl.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/WmsInventoryServiceImpl.java index 35e2978d..8e28163e 100644 --- a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/WmsInventoryServiceImpl.java +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/WmsInventoryServiceImpl.java @@ -60,14 +60,14 @@ public class WmsInventoryServiceImpl extends ServiceImpl 0) { errorMaterialNos.add(inventory.getMaterialNo());