From d9ef33269856dbeccd1d860e15814b9a74dbd764 Mon Sep 17 00:00:00 2001 From: ljw Date: Wed, 23 Oct 2024 11:14:56 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E8=AE=A2=E8=88=B1=E9=80=9A=E7=9F=A5?= =?UTF-8?q?=E5=8D=95=E6=98=AF=E5=90=A6=E4=BF=A1=E4=BF=9D=E5=90=88=E5=90=8C?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../validator/StorageTransSubmitValid.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/yem/wm/es/storagetrans/validator/StorageTransSubmitValid.java b/src/main/java/com/yem/wm/es/storagetrans/validator/StorageTransSubmitValid.java index 9ec52277..61234b5e 100644 --- a/src/main/java/com/yem/wm/es/storagetrans/validator/StorageTransSubmitValid.java +++ b/src/main/java/com/yem/wm/es/storagetrans/validator/StorageTransSubmitValid.java @@ -23,18 +23,21 @@ public class StorageTransSubmitValid extends AbstractValidator { for (ExtendedDataEntity dataes : dataEntities) { DynamicObject dataEntitie = dataes.getDataEntity(); dataEntitie = BusinessDataServiceHelper.loadSingle(dataEntitie.getPkValue(), dataEntitie.getDynamicObjectType().getName()); + DynamicObjectCollection creditDetails = dataEntitie.getDynamicObjectCollection("yem_creditdetail"); DynamicObject customer = dataEntitie.getDynamicObject("yem_customer"); DynamicObject method = TotalUtil.getSettlementMethod(dataEntitie); DynamicObject company = dataEntitie.getDynamicObject("yem_company.yem_erporg"); String swiftCode = TotalUtil.getSwiftCode(dataEntitie); DynamicObject csrCreditLine = TotalUtil.getCsrCreditLine(customer, method, company, swiftCode); - if (YEM.isNotEmpty(customer) && YEM.isNotEmpty(csrCreditLine)) { - BigDecimal decimal = CreditBackFillUtils.calcRemainingAmount(csrCreditLine); - if (decimal.compareTo(dataEntitie.getBigDecimal("yem_usacreditamt")) < 0) { - this.addMessage(dataes, "当前客户对应的信保额度申请剩余额度小于0,请确认!"); + if (!creditDetails.isEmpty()) { + if (YEM.isNotEmpty(customer) && YEM.isNotEmpty(csrCreditLine)) { + BigDecimal decimal = CreditBackFillUtils.calcRemainingAmount(csrCreditLine); + if (decimal.compareTo(dataEntitie.getBigDecimal("yem_usacreditamt")) < 0) { + this.addMessage(dataes, "当前客户对应的信保额度申请剩余额度小于0,请确认!"); + } + } else { + this.addMessage(dataes, "找不到客户:" + customer.getString("name") + "的客户信保额度申请单"); } - } else { - this.addMessage(dataes, "找不到客户:" + customer.getString("name") + "的客户信保额度申请单"); } } }