From 764d430322d04766e9bbc8c30dea5ade0f3e3b4d Mon Sep 17 00:00:00 2001 From: qiuyt Date: Thu, 21 Nov 2024 17:04:23 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=B7=A5=E4=BD=8D=E4=B8=8A=E8=B4=A7?= =?UTF-8?q?=E5=A4=A7=E7=A0=81=E5=8C=85=E8=A3=85=E5=8F=AA=E5=8A=A0=E5=85=A5?= =?UTF-8?q?=E4=B8=8B=E9=9D=A2=E4=B8=80=E7=BA=A7=E7=A0=81=20=E4=B8=80?= =?UTF-8?q?=E7=BA=A7=E7=A0=81=E5=B0=B1=E7=9B=B4=E6=8E=A5=E5=8A=A0=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inout/IoCodeTempController.java | 20 +++++++++++++--- .../service/collect/RelCodeDetailService.java | 24 +++++++++++++++++++ 2 files changed, 41 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java index 97a9637bf..18d988e43 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -129,6 +129,7 @@ public class IoCodeTempController extends BaseController { @Resource IoCollectOrderBackupService ioCollectOrderBackupService; + /** * PDA-----单据上传 */ @@ -2836,14 +2837,27 @@ public class IoCodeTempController extends BaseController { } }); - addOrderCodeRequest.setCodeList(codeList); + List codeOnelist = new ArrayList(); + // 检查该码的所有一级码并且加入进去 + for (String code : codeList) { + List list = relCodeDetailService.getAllNextOne(code); + if(list!=null && list.size() >0){ + for (RelCodeDetail relCodeDetail : list) { + codeOnelist.add(relCodeDetail.getCurCode()); + } + }else { + codeOnelist.add(code); + } + } + + addOrderCodeRequest.setCodeList(codeOnelist); addOrderCodeRequest.setCorpOrderId(orderFinishBillNo); AddCodeResult addCodeResult = new AddCodeResult(); - if (CollUtil.isEmpty(codeList)) + if (CollUtil.isEmpty(codeOnelist)) return ResultVOUtils.error(500, "追溯码不能为空"); List vailCodeResultResponses = new ArrayList<>(); - for (String code : codeList) { + for (String code : codeOnelist) { VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse(); AddOrderRequest addOrderRequest = new AddOrderRequest(); BeanUtils.copyProperties(addOrderCodeRequest, addOrderRequest); diff --git a/src/main/java/com/glxp/api/service/collect/RelCodeDetailService.java b/src/main/java/com/glxp/api/service/collect/RelCodeDetailService.java index 89ab04da9..3e2f74c84 100644 --- a/src/main/java/com/glxp/api/service/collect/RelCodeDetailService.java +++ b/src/main/java/com/glxp/api/service/collect/RelCodeDetailService.java @@ -173,6 +173,30 @@ public class RelCodeDetailService extends ServiceImpl list) { + List relCodeDetails = this.baseMapper.selectList( + new LambdaQueryWrapper().eq(RelCodeDetail::getParentCode, code)); + + if (CollUtil.isNotEmpty(relCodeDetails)) { + Integer packLayer = relCodeDetails.get(0).getPackLayer(); + if(packLayer == 1){ + list.addAll(relCodeDetails); + } + for (RelCodeDetail relCodeDetail : relCodeDetails) { + fetchAllChildrenOne(relCodeDetail.getCurCode(), list); + } + } + } + /** + * 获取下级所有一级码 + * + * @return + */ + public List getAllNextOne(String code) { + List list = new ArrayList<>(); + fetchAllChildrenOne(code, list); + return list; + } }