From 941d93aa4df106b8f32e17a59cf402e40c6b3e62 Mon Sep 17 00:00:00 2001 From: zoujiangtao Date: Mon, 1 Sep 2025 14:57:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E5=86=85=E5=AE=B9=EF=BC=9A?= =?UTF-8?q?=E7=A5=A8=E6=8D=AE=E7=B1=BB=E5=9E=8B=E5=A2=9E=E5=8A=A0=20?= =?UTF-8?q?=E6=97=B6=E9=97=B4=EF=BC=9A2025-09-01=2014=EF=BC=9A54=20?= =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BA=BA=EF=BC=9A=E9=82=B9=E6=B1=9F=E6=B6=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sys/plugin/api/TicketRegistration.java | 63 +++++++++++++------ 1 file changed, 45 insertions(+), 18 deletions(-) diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/api/TicketRegistration.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/api/TicketRegistration.java index 4718719..e35c8b4 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/api/TicketRegistration.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/api/TicketRegistration.java @@ -1,6 +1,7 @@ package shkd.sys.sys.plugin.api; import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.logging.Log; import kd.bos.logging.LogFactory; import kd.bos.openapi.api.plugin.ApiSavePlugin; @@ -9,9 +10,7 @@ import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import java.io.Serializable; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * @Description @@ -47,21 +46,21 @@ public class TicketRegistration implements Serializable, ApiSavePlugin { new QFilter("societycreditcode", QCP.equals, deliver_number).toArray()); if (objects.length > 0) { logger.info("进入收票登记→objects.length > 0"); -// DynamicObjectCollection dynamicObjectCollection = objects[0].getDynamicObjectCollection("entry_bank"); -// -// for (DynamicObject dynamicObject : dynamicObjectCollection) { -// logger.info("进入收票登记→objects.length > 0→dynamicObjectCollection.forEach,\nbankaccount → {}", dynamicObject.getString("bankaccount")); -// if (dynamicObject.getString("bankaccount").equals(deliveraccountbase)) { -// DynamicObject bank = dynamicObject.getDynamicObject("bank"); -// logger.info("进入收票登记→objects.length > 0→dynamicObjectCollection.forEach,bank → {}", bank); -// Map deliveropenbank = new HashMap<>(); -// deliveropenbank.put("number", bank.getString("number")); -// map.put("deliveropenbank", deliveropenbank); -// map.put("deliveropenbanknum", bank.getString("number")); -// // 跳出循环 -// break; -// } -// } +/* DynamicObjectCollection dynamicObjectCollection = objects[0].getDynamicObjectCollection("entry_bank"); + + for (DynamicObject dynamicObject : dynamicObjectCollection) { + logger.info("进入收票登记→objects.length > 0→dynamicObjectCollection.forEach,\nbankaccount → {}", dynamicObject.getString("bankaccount")); + if (dynamicObject.getString("bankaccount").equals(deliveraccountbase)) { + DynamicObject bank = dynamicObject.getDynamicObject("bank"); + logger.info("进入收票登记→objects.length > 0→dynamicObjectCollection.forEach,bank → {}", bank); + Map deliveropenbank = new HashMap<>(); + deliveropenbank.put("number", bank.getString("number")); + map.put("deliveropenbank", deliveropenbank); + map.put("deliveropenbanknum", bank.getString("number")); + // 跳出循环 + break; + } + }*/ Map societycreditcode = new HashMap<>(); societycreditcode.put("number", objects[0].getString("number")); map.put("deliver", societycreditcode); @@ -72,6 +71,32 @@ public class TicketRegistration implements Serializable, ApiSavePlugin { String draftbilltype_number = draftbilltype.get("number").toString(); Map billtype = new HashMap<>(); +/* DynamicObject[] dynamicObjects = BusinessDataServiceHelper.load("shkd_noteandbill", "id,billno,shkd_billtype,shkd_note", new QFilter("billno", QCP.not_equals, "").toArray()); + for (DynamicObject dynamicObject : dynamicObjects) { + // 单据类型 + DynamicObject shkd_billtype = dynamicObject.getDynamicObject("shkd_billtype"); + // 单据类型编码 + String shkd_billtypeNumber = shkd_billtype.getString("number"); + // 单据类型名称 + String billformid_name = shkd_billtype.getDynamicObject("billformid").getString("name"); + if ("收票登记".equals(billformid_name)) { + DynamicObjectCollection dynamicObjectCollection = dynamicObject.getDynamicObjectCollection("shkd_note"); + List arrayList = new ArrayList<>(); + dynamicObjectCollection.forEach(object -> { + DynamicObject noteType = dynamicObject.getDynamicObject("fbasedataid");//票据类型基础资料数据包 + if (noteType != null) { + String noteTypeNumber = noteType.getString("number");//票据类型编码 + long noteTypeId = noteType.getLong("masterid");//票据类型内码 + String noteTypeName = noteType.getString("name");//票据类型名称 + arrayList.add(noteTypeNumber); + } + }); + if (arrayList.contains(draftbilltype_number)) { + billtype.put("number", shkd_billtypeNumber); + break; + } + } + }*/ switch (draftbilltype_number) { //银行承兑汇票 @@ -109,6 +134,7 @@ public class TicketRegistration implements Serializable, ApiSavePlugin { case "CDMT-EA7CA8B1": case "CDMT-F8D0D70F": case "CDMT-FE92FDAF": + case "CDMT-959F454C": billtype.put("number", "cdm_recbill_business_BT_S"); break; //银行本票 @@ -255,6 +281,7 @@ public class TicketRegistration implements Serializable, ApiSavePlugin { case "CDMT-EA7CA8B1": case "CDMT-F8D0D70F": case "CDMT-FE92FDAF": + case "CDMT-959F454C": billtype.put("number", "cdm_paybill_business_elec_BT_S"); acceptercompany = (Map) map.get("acceptercompany");