From aeb7ec5f1b97eb39a975bd692ad76a77112094a5 Mon Sep 17 00:00:00 2001 From: zhaoyf <1783123481@qq.com> Date: Wed, 15 Jul 2026 15:05:41 +0800 Subject: [PATCH] =?UTF-8?q?opt=EF=BC=9Aeas=E5=90=8C=E6=AD=A5=E5=8D=95?= =?UTF-8?q?=E6=8D=AE=E9=94=99=E5=A1=AB=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/InboundEasSyncServiceImpl.java | 70 +++++++++++++++++-- 1 file changed, 65 insertions(+), 5 deletions(-) diff --git a/nladmin-system/wms-server/src/main/java/org/nl/wms/ext_manage/purchase/service/impl/InboundEasSyncServiceImpl.java b/nladmin-system/wms-server/src/main/java/org/nl/wms/ext_manage/purchase/service/impl/InboundEasSyncServiceImpl.java index 9b6a90c..44bc06c 100644 --- a/nladmin-system/wms-server/src/main/java/org/nl/wms/ext_manage/purchase/service/impl/InboundEasSyncServiceImpl.java +++ b/nladmin-system/wms-server/src/main/java/org/nl/wms/ext_manage/purchase/service/impl/InboundEasSyncServiceImpl.java @@ -69,12 +69,24 @@ public class InboundEasSyncServiceImpl implements InboundEasSyncService { if (easMst == null) { throw new BadRequestException("EAS采购单同步失败:EAS系统中未找到单据: " + billId); } + //判断是否因为填错仓库号保证中鼎一致 + List purchasedtlList = purchasedtlMapper.selectList(new LambdaQueryWrapper() + .eq(Purchasedtl::getBill_id, billId)); + List easDtlList = easQueryService.queryDtlList(billId); + boolean hasZDEas = easDtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (!purchasedtlList.isEmpty() &&!hasZDEas){ //不包含立库则判断是否是填错仓库单据 + boolean hasZD = purchasedtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (hasZD){//原来单据包含中鼎立库 + billChangeDto.setStatus(3);//删除中鼎异常单据 + wmsToZDWmdService.syncPurchaseReceiving(billChangeDto); + } + } + purchasedtlMapper.delete(new LambdaQueryWrapper() .eq(Purchasedtl::getBill_id, billId)); purchasemstMapper.delete(new LambdaQueryWrapper() .eq(Purchasemst::getBill_id, billId)); //更新单据 - List easDtlList = easQueryService.queryDtlList(billId); Boolean allZD = true; for (Purchasedtl dtl : easDtlList) { if (ZD_STOR_SET.contains(dtl.getHouse_code())){ @@ -133,12 +145,24 @@ public class InboundEasSyncServiceImpl implements InboundEasSyncService { if (easMst == null) { throw new BadRequestException("EAS采购单同步失败:EAS系统中未找到单据: " + billId); } + //判断是否因为填错仓库号保证中鼎一致 + List purchasedtlList = purchasedtlMapper.selectList(new LambdaQueryWrapper() + .eq(Purchasedtl::getBill_id, billId)); + List easDtlList = easQueryService.queryDtlListByTransfer(billId); + boolean hasZDEas = easDtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (!purchasedtlList.isEmpty() &&!hasZDEas){ //不包含立库则判断是否是填错仓库单据 + boolean hasZD = purchasedtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (hasZD){//原来单据包含中鼎立库 + billChangeDto.setStatus(3);//删除中鼎异常单据 + wmsToZDWmdService.syncPurchaseReceiving(billChangeDto); + } + } + purchasedtlMapper.delete(new LambdaQueryWrapper() .eq(Purchasedtl::getBill_id, billId)); purchasemstMapper.delete(new LambdaQueryWrapper() .eq(Purchasemst::getBill_id, billId)); //更新单据 - List easDtlList = easQueryService.queryDtlListByTransfer(billId); Boolean allZD = true; for (Purchasedtl dtl : easDtlList) { if (ZD_STOR_SET.contains(dtl.getHouse_code())){ @@ -197,12 +221,24 @@ public class InboundEasSyncServiceImpl implements InboundEasSyncService { if (easMst == null) { throw new BadRequestException("EAS采购单同步失败:EAS系统中未找到单据: " + billId); } + //判断是否因为填错仓库号保证中鼎一致 + List purchasedtlList = purchasedtlMapper.selectList(new LambdaQueryWrapper() + .eq(Purchasedtl::getBill_id, billId)); + List easDtlList = easQueryService.queryDtlListByOther(billId); + boolean hasZDEas = easDtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (!purchasedtlList.isEmpty() &&!hasZDEas){ //不包含立库则判断是否是填错仓库单据 + boolean hasZD = purchasedtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (hasZD){//原来单据包含中鼎立库 + billChangeDto.setStatus(3);//删除中鼎异常单据 + wmsToZDWmdService.syncPurchaseReceiving(billChangeDto); + } + } + purchasedtlMapper.delete(new LambdaQueryWrapper() .eq(Purchasedtl::getBill_id, billId)); purchasemstMapper.delete(new LambdaQueryWrapper() .eq(Purchasemst::getBill_id, billId)); //更新单据 - List easDtlList = easQueryService.queryDtlListByOther(billId); Boolean allZD = true; for (Purchasedtl dtl : easDtlList) { if (ZD_STOR_SET.contains(dtl.getHouse_code())){ @@ -261,12 +297,24 @@ public class InboundEasSyncServiceImpl implements InboundEasSyncService { if (easMst == null) { throw new BadRequestException("EAS采购单同步失败:EAS系统中未找到单据: " + billId); } + //判断是否因为填错仓库号保证中鼎一致 + List purchasedtlList = purchasedtlMapper.selectList(new LambdaQueryWrapper() + .eq(Purchasedtl::getBill_id, billId)); + List easDtlList = easQueryService.queryDtlListByTransferOut(billId); + boolean hasZDEas = easDtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (!purchasedtlList.isEmpty() &&!hasZDEas){ //不包含立库则判断是否是填错仓库单据 + boolean hasZD = purchasedtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (hasZD){//原来单据包含中鼎立库 + billChangeDto.setStatus(3);//删除中鼎异常单据 + wmsToZDWmdService.syncPurchaseReceiving(billChangeDto); + } + } + purchasedtlMapper.delete(new LambdaQueryWrapper() .eq(Purchasedtl::getBill_id, billId)); purchasemstMapper.delete(new LambdaQueryWrapper() .eq(Purchasemst::getBill_id, billId)); //更新单据 - List easDtlList = easQueryService.queryDtlListByTransferOut(billId); Boolean allZD = true; for (Purchasedtl dtl : easDtlList) { if (ZD_STOR_SET.contains(dtl.getHouse_code())){ @@ -325,12 +373,24 @@ public class InboundEasSyncServiceImpl implements InboundEasSyncService { if (easMst == null) { throw new BadRequestException("EAS采购单同步失败:EAS系统中未找到单据: " + billId); } + //判断是否因为填错仓库号保证中鼎一致 + List purchasedtlList = purchasedtlMapper.selectList(new LambdaQueryWrapper() + .eq(Purchasedtl::getBill_id, billId)); + List easDtlList = easQueryService.queryDtlListByOtherOut(billId); + boolean hasZDEas = easDtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (!purchasedtlList.isEmpty() &&!hasZDEas){ //不包含立库则判断是否是填错仓库单据 + boolean hasZD = purchasedtlList.stream().anyMatch((item) -> ZD_STOR_SET.contains(item.getHouse_code())); + if (hasZD){//原来单据包含中鼎立库 + billChangeDto.setStatus(3);//删除中鼎异常单据 + wmsToZDWmdService.syncPurchaseReceiving(billChangeDto); + } + } + purchasedtlMapper.delete(new LambdaQueryWrapper() .eq(Purchasedtl::getBill_id, billId)); purchasemstMapper.delete(new LambdaQueryWrapper() .eq(Purchasemst::getBill_id, billId)); //更新单据 - List easDtlList = easQueryService.queryDtlListByOtherOut(billId); Boolean allZD = true; for (Purchasedtl dtl : easDtlList) { if (ZD_STOR_SET.contains(dtl.getHouse_code())){