From a0d082a2cc11dc7b2432d9bb8a3dbf34b3a3ba58 Mon Sep 17 00:00:00 2001 From: zzs Date: Mon, 23 Dec 2024 14:46:31 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E4=BD=BF=E7=94=A8=E8=AE=A2=E8=88=B1?= =?UTF-8?q?=E4=B8=AD=E9=9D=9E=E9=A2=84=E6=94=B6=E9=87=91=E9=A2=9D=E5=90=88?= =?UTF-8?q?=E8=AE=A1=E5=88=A4=E6=96=AD=E6=98=AF=E5=90=A6=E5=9B=9E=E6=AC=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task/ExportPresentWarningTask.java | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/yem/wm/es/exportpresent/task/ExportPresentWarningTask.java b/src/main/java/com/yem/wm/es/exportpresent/task/ExportPresentWarningTask.java index d97e8e19..7a775f27 100644 --- a/src/main/java/com/yem/wm/es/exportpresent/task/ExportPresentWarningTask.java +++ b/src/main/java/com/yem/wm/es/exportpresent/task/ExportPresentWarningTask.java @@ -58,21 +58,24 @@ public class ExportPresentWarningTask extends AbstractTask { DynamicObject order = salesorderEntry.getValue(); salesorderNo.put(order.getString("billno"), orderId); } - Map stOrder = BusinessDataServiceHelper.loadFromCache("yem_es_storagetrans", "id, billno, yem_es_salescontrac_s.yem_rapamt, yem_es_salescontrac_s.yem_contractnumbers_p", new QFilter[]{new QFilter("yem_es_salescontrac_s.yem_contractnumbers_p", "in", salesorderNo.keySet())}); + Map stOrder = BusinessDataServiceHelper.loadFromCache("yem_es_storagetrans", "id, billno, yem_es_salescontrac_s.yem_rapamt, yem_es_salescontrac_s.yem_contractnumbers_p, yem_es_salescontrac_s.yem_ispre", new QFilter[]{new QFilter("yem_es_salescontrac_s.yem_contractnumbers_p", "in", salesorderNo.keySet())}); // 合同号-收汇金额合计 Map receiveAmt = new HashMap<>(); for (DynamicObject stBill : stOrder.values()) { DynamicObjectCollection collection = stBill.getDynamicObjectCollection("yem_es_salescontrac_s"); for (DynamicObject d : collection) { - BigDecimal rapamt = d.getBigDecimal("yem_rapamt"); - String contractnumbers = d.getString("yem_contractnumbers_p"); - BigDecimal calc; - if (receiveAmt.containsKey(contractnumbers)) { - calc = receiveAmt.get(contractnumbers).add(rapamt); - } else { - calc = rapamt; + boolean ispre = d.getBoolean("yem_ispre"); + if (ispre) { + BigDecimal rapamt = d.getBigDecimal("yem_rapamt"); + String contractnumbers = d.getString("yem_contractnumbers_p"); + BigDecimal calc; + if (receiveAmt.containsKey(contractnumbers)) { + calc = receiveAmt.get(contractnumbers).add(rapamt); + } else { + calc = rapamt; + } + receiveAmt.put(contractnumbers, calc); } - receiveAmt.put(contractnumbers, calc); } } for (Map.Entry salesorderEntry : salesorderNo.entrySet()) {