From 55bb4dd1c34e58027f6b1ccb95e1a4466d692b65 Mon Sep 17 00:00:00 2001 From: "zhenghaiyang@ele-cloud.com" Date: Wed, 17 May 2023 17:52:51 +0800 Subject: [PATCH] =?UTF-8?q?feature=201.=E4=BF=AE=E5=A4=8D=E5=A4=9A?= =?UTF-8?q?=E7=A8=8E=E7=9B=98=E5=BC=80=E7=A5=A8=E7=82=B9=E4=BD=BF=E7=94=A8?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/PollInvoiceServiceImpl.java | 25 ++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/PollInvoiceServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/PollInvoiceServiceImpl.java index bec02a1d..01ee7151 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/PollInvoiceServiceImpl.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/PollInvoiceServiceImpl.java @@ -418,6 +418,7 @@ public class PollInvoiceServiceImpl implements PollInvoiceService { if (loop) { if (StringUtils.isBlank(kpd) || StringUtils.isBlank(fjh) || StringUtils.isBlank(kpdMc)) { + log.info("调用底层开票传入的KPD:{},FJH:{},KPDMC:{}",kpd,fjh,kpdMc); //如果开票点,分机号,开票点名称为空,需要获取开票点, //1表示成品油,0表示非成品油,空为全部 String cpylx = ""; @@ -426,14 +427,26 @@ public class PollInvoiceServiceImpl implements PollInvoiceService { } Set sldList = null; try { + Boolean sldBo = Boolean.TRUE; sldList = unifyService.getSldList(orderInfo.getXhfNsrsbh(), orderInfo.getFpzlDm(), cpylx, fjh, kpd, terminalCode, ""); - - //如果为空不需要处理,如果不为空,取一个赋值,调用底层开票. - Optional optionalSearchSld = sldList.stream().findFirst(); - if (optionalSearchSld.isPresent()) { - sldList = new HashSet<>(); - sldList.add(optionalSearchSld.get()); + if(sldList != null && !sldList.isEmpty() && StringUtils.isNotBlank(kpd)){ + for (SearchSld searchSld : sldList) { + if(kpd.equals(searchSld.getJqbh())){ + sldList = new HashSet<>(); + sldList.add(searchSld); + sldBo = Boolean.FALSE; + } + } } + if(sldBo){ + //如果为空不需要处理,如果不为空,取一个赋值,调用底层开票. + Optional optionalSearchSld = sldList.stream().findFirst(); + if (optionalSearchSld.isPresent()) { + sldList = new HashSet<>(); + sldList.add(optionalSearchSld.get()); + } + } + } catch (OrderReceiveException e) {