From 217c71ec8464e881d51a471e6b3c1d2724c2c607 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 8 Jan 2026 11:20:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BA=BA=EF=BC=9A=E9=82=B9?= =?UTF-8?q?=E6=B1=9F=E6=B6=9B=20=E6=8F=90=E4=BA=A4=E6=97=B6=E9=97=B4?= =?UTF-8?q?=EF=BC=9A2026=E5=B9=B401=E6=9C=8808=E6=97=A5=20=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=E5=86=85=E5=AE=B9=EF=BC=9A=E4=B8=8A=E5=88=92=E4=B8=8B?= =?UTF-8?q?=E6=8B=A8=E5=8D=95=E6=8D=AE=E8=BD=AC=E6=8D=A2=E6=8F=92=E4=BB=B6?= =?UTF-8?q?=EF=BC=88=E5=BD=92=E9=9B=86=E7=94=9F=E6=88=90=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sys/plugin/conver/LpzConverPlugin.java | 158 +++++++++--------- 1 file changed, 79 insertions(+), 79 deletions(-) diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/conver/LpzConverPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/conver/LpzConverPlugin.java index 3e2918a..d5d6f77 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/conver/LpzConverPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/conver/LpzConverPlugin.java @@ -34,22 +34,16 @@ public class LpzConverPlugin extends AbstractConvertPlugIn implements Plugin { DynamicObjectCollection entrys; // 账户名称 String accountbankName; - - DynamicObject dynamicObject; - // 贷方 DynamicObject lendersAddNew; // 借方 DynamicObject debitAddNew; - // 记账期间 DynamicObject[] bdPeriods; SimpleDateFormat sdf = new SimpleDateFormat("yyyyMM"); String yearMonth; - // 目标单据 → 记账日期 Date bookdate; - // 类凭证的分录 DynamicObjectCollection tallyentryentity; @@ -75,53 +69,89 @@ public class LpzConverPlugin extends AbstractConvertPlugIn implements Plugin { tallyentryentity = tarData.getDynamicObjectCollection("tallyentryentity"); - lendersAddNew = tallyentryentity.addNew(); - debitAddNew = tallyentryentity.addNew(); - switch (srcMainTypeName) { case "fca_transupbill"://上划 case "fca_transdownbill"://下拨 // 币种 cuscurrency = souData.getDynamicObject("currency"); entrys = souData.getDynamicObjectCollection("entrys"); - DynamicObject entry = entrys.get(0); - DynamicObject subacctCompany = entry.getDynamicObject("subacct_company"); - String subacctCompanyName = subacctCompany.getString("name"); - BigDecimal transamt = entry.getBigDecimal("transamt"); DynamicObject accountbank = souData.getDynamicObject("accountbank"); accountbankName = accountbank.getString("name"); - if ("fca_transupbill".equals(srcMainTypeName)) { - // 摘要 字段赋值 - lendersAddNew.set("tallyabstract", "归集:" + subacctCompanyName); - // 科目 字段赋值 - DynamicObject[] bdAccountviews2 = BusinessDataServiceHelper.load("bd_accountview", "id,number,name", new QFilter("number", QCP.equals, "2241.02.01.01").toArray()); - lendersAddNew.set("account", bdAccountviews2[0]); - // 核算维度 字段赋值 - String gyshswd = "供应商:" + subacctCompanyName; - lendersAddNew.set("shkd_hswd", gyshswd); - // 原币贷方金额 字段赋值 - lendersAddNew.set("loanamount", transamt); - // 贷方金额 字段赋值 - lendersAddNew.set("loanstanamount", transamt); - // 原币金额 字段赋值 - lendersAddNew.set("oriamount", transamt); - // 主表项目 字段赋值 - DynamicObject[] glCashflowitems = BusinessDataServiceHelper.load("gl_cashflowitem", "id.number,name", new QFilter("number", QCP.equals, "CI01.01.03").toArray()); - lendersAddNew.set("maincfitem", glCashflowitems[0]); - // 主表核算维度 字段赋值 - String zbhswd = "组织机构:" + subacctCompanyName; - lendersAddNew.set("shkd_zbhswd", zbhswd); - // 主表项目金额 字段赋值 - lendersAddNew.set("maincfamount", transamt); - // 币种 字段赋值 - lendersAddNew.set("cuscurrency", cuscurrency); - // 汇率 字段赋值 - lendersAddNew.set("exrate", 1); - // 汇率日期 字段赋值 - lendersAddNew.set("ratedate", bookdate); + BigDecimal amount = souData.getBigDecimal("amount"); + for (DynamicObject entry : entrys) { + DynamicObject subacctCompany = entry.getDynamicObject("subacct_company"); + String subacctCompanyName = subacctCompany.getString("name"); + BigDecimal transamt = entry.getBigDecimal("transamt"); + if ("fca_transupbill".equals(srcMainTypeName)) { + lendersAddNew = tallyentryentity.addNew(); + // 摘要 字段赋值 + lendersAddNew.set("tallyabstract", "归集:" + subacctCompanyName); + // 科目 字段赋值 + DynamicObject[] bdAccountviews2 = BusinessDataServiceHelper.load("bd_accountview", "id,number,name", new QFilter("number", QCP.equals, "2241.02.01.01").toArray()); + lendersAddNew.set("account", bdAccountviews2[0]); + // 核算维度 字段赋值 + String gyshswd = "供应商:" + subacctCompanyName; + lendersAddNew.set("shkd_hswd", gyshswd); + // 原币贷方金额 字段赋值 + lendersAddNew.set("loanamount", transamt); + // 贷方金额 字段赋值 + lendersAddNew.set("loanstanamount", transamt); + // 原币金额 字段赋值 + lendersAddNew.set("oriamount", transamt); + // 主表项目 字段赋值 + DynamicObject[] glCashflowitems = BusinessDataServiceHelper.load("gl_cashflowitem", "id.number,name", new QFilter("number", QCP.equals, "CI01.01.03").toArray()); + lendersAddNew.set("maincfitem", glCashflowitems[0]); + // 主表核算维度 字段赋值 + String zbhswd = "组织机构:" + subacctCompanyName; + lendersAddNew.set("shkd_zbhswd", zbhswd); + // 主表项目金额 字段赋值 + lendersAddNew.set("maincfamount", transamt); + // 币种 字段赋值 + lendersAddNew.set("cuscurrency", cuscurrency); + // 汇率 字段赋值 + lendersAddNew.set("exrate", 1); + // 汇率日期 字段赋值 + lendersAddNew.set("ratedate", bookdate); + } + if ("fca_transdownbill".equals(srcMainTypeName)) { + debitAddNew = tallyentryentity.addNew(); + // 摘要 字段赋值 + debitAddNew.set("tallyabstract", "下拨:" + subacctCompanyName); + // 科目 字段赋值 + DynamicObject[] bdAccountviews2 = BusinessDataServiceHelper.load("bd_accountview", + "id,number,name", new QFilter("number", QCP.equals, "2241.02.01.01").toArray()); + debitAddNew.set("account", bdAccountviews2[0]); + // 核算维度 字段赋值 + String gyshswd = "供应商:" + subacctCompanyName; + debitAddNew.set("shkd_hswd", gyshswd); + // 原币借方金额 字段赋值 + debitAddNew.set("tallyamount", transamt); + // 借方金额 字段赋值 + debitAddNew.set("standardamount", transamt); + // 原币金额 字段赋值 + debitAddNew.set("oriamount", transamt); + // 主表项目 字段赋值 + DynamicObject[] glCashflowitems = BusinessDataServiceHelper.load("gl_cashflowitem", + "id.number,name", new QFilter("number", QCP.equals, "CI01.02.04").toArray()); + debitAddNew.set("maincfitem", glCashflowitems[0]); + // 主表核算维度 字段赋值 + String zbhswd = "组织机构:" + subacctCompanyName; + debitAddNew.set("shkd_zbhswd", zbhswd); + // 主表项目金额 字段赋值 + debitAddNew.set("maincfamount", transamt); + // 币种 字段赋值 + debitAddNew.set("cuscurrency", cuscurrency); + // 汇率 字段赋值 + debitAddNew.set("exrate", 1); + // 汇率日期 字段赋值 + debitAddNew.set("ratedate", bookdate); + } + } + if ("fca_transupbill".equals(srcMainTypeName)) { + debitAddNew = tallyentryentity.addNew(); // 摘要 字段赋值 debitAddNew.set("tallyabstract", accountbankName + "账户资金明细"); // 科目 字段赋值 @@ -137,11 +167,11 @@ public class LpzConverPlugin extends AbstractConvertPlugIn implements Plugin { String yhhswd = "银行账户:" + accountbank.getString("bankaccountnumber"); debitAddNew.set("shkd_hswd", yhhswd); // 原币借方金额 字段赋值 - debitAddNew.set("tallyamount", transamt); + debitAddNew.set("tallyamount", amount); // 借方金额 字段赋值 - debitAddNew.set("standardamount", transamt); + debitAddNew.set("standardamount", amount); // 原币金额 字段赋值 - debitAddNew.set("oriamount", transamt); + debitAddNew.set("oriamount", amount); // 币种 字段赋值 debitAddNew.set("cuscurrency", cuscurrency); // 汇率 字段赋值 @@ -151,6 +181,7 @@ public class LpzConverPlugin extends AbstractConvertPlugIn implements Plugin { } if ("fca_transdownbill".equals(srcMainTypeName)) { + lendersAddNew = tallyentryentity.addNew(); // 摘要 字段赋值 lendersAddNew.set("tallyabstract", accountbankName + "账户资金明细"); // 科目 字段赋值 @@ -167,48 +198,17 @@ public class LpzConverPlugin extends AbstractConvertPlugIn implements Plugin { lendersAddNew.set("shkd_hswd", yhhswd); // 原币贷方金额 字段赋值 - lendersAddNew.set("loanamount", transamt); + lendersAddNew.set("loanamount", amount); // 贷方金额 字段赋值 - lendersAddNew.set("loanstanamount", transamt); + lendersAddNew.set("loanstanamount", amount); // 原币金额 字段赋值 - lendersAddNew.set("oriamount", transamt); + lendersAddNew.set("oriamount", amount); // 币种 字段赋值 lendersAddNew.set("cuscurrency", cuscurrency); // 汇率 字段赋值 lendersAddNew.set("exrate", 1); // 汇率日期 字段赋值 lendersAddNew.set("ratedate", bookdate); - - // 摘要 字段赋值 - debitAddNew.set("tallyabstract", "下拨:" + subacctCompanyName); - // 科目 字段赋值 - DynamicObject[] bdAccountviews2 = BusinessDataServiceHelper.load("bd_accountview", - "id,number,name", new QFilter("number", QCP.equals, "2241.02.01.01").toArray()); - debitAddNew.set("account", bdAccountviews2[0]); - // 核算维度 字段赋值 - String gyshswd = "供应商:" + subacctCompanyName; - debitAddNew.set("shkd_hswd", gyshswd); - // 原币借方金额 字段赋值 - debitAddNew.set("tallyamount", transamt); - // 借方金额 字段赋值 - debitAddNew.set("standardamount", transamt); - // 原币金额 字段赋值 - debitAddNew.set("oriamount", transamt); - // 主表项目 字段赋值 - DynamicObject[] glCashflowitems = BusinessDataServiceHelper.load("gl_cashflowitem", - "id.number,name", new QFilter("number", QCP.equals, "CI01.02.04").toArray()); - debitAddNew.set("maincfitem", glCashflowitems[0]); - // 主表核算维度 字段赋值 - String zbhswd = "组织机构:" + subacctCompanyName; - debitAddNew.set("shkd_zbhswd", zbhswd); - // 主表项目金额 字段赋值 - debitAddNew.set("maincfamount", transamt); - // 币种 字段赋值 - debitAddNew.set("cuscurrency", cuscurrency); - // 汇率 字段赋值 - debitAddNew.set("exrate", 1); - // 汇率日期 字段赋值 - debitAddNew.set("ratedate", bookdate); } } }