提交内容:调整收开票登记推送API扩展接口代码(单据类型、承兑人判断)
时间:2025-07-16 18:19 提交人:邹江涛
This commit is contained in:
parent
b1e2cc42a8
commit
50f1a56d7b
|
@ -1,7 +1,6 @@
|
|||
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;
|
||||
|
@ -67,6 +66,63 @@ public class TicketRegistration implements Serializable, ApiSavePlugin {
|
|||
societycreditcode.put("number", objects[0].getString("number"));
|
||||
map.put("deliver", societycreditcode);
|
||||
}
|
||||
|
||||
// 票据类型编码
|
||||
Map<String, Object> draftbilltype = (Map<String, Object>) map.get("draftbilltype");
|
||||
String draftbilltype_number = draftbilltype.get("number").toString();
|
||||
|
||||
Map<String, Object> billtype = new HashMap<>();
|
||||
|
||||
switch (draftbilltype_number) {
|
||||
//银行承兑汇票
|
||||
case "101":
|
||||
case "102":
|
||||
billtype.put("number", "cdm_recbill_bank_BT_S");
|
||||
|
||||
DynamicObject[] bd_bebank = BusinessDataServiceHelper.load("bd_bebank", "id,number,name", new QFilter("number", QCP.equals, map.get("acceptername")).toArray());
|
||||
if (bd_bebank.length > 0) {
|
||||
map.put("acceptername", bd_bebank[0].getString("name"));
|
||||
} else {
|
||||
logger.info("进入收票登记 → 票据号:{},星空推送联行号:{},未查到司库行名行号", map.get("draftbillno"), map.get("acceptername"));
|
||||
}
|
||||
|
||||
Map<String, Object> accepterbebank = new HashMap<>();
|
||||
accepterbebank.put("number", map.get("acceptername"));
|
||||
map.put("accepterbebank", accepterbebank);
|
||||
break;
|
||||
//商业承兑汇票
|
||||
case "103":
|
||||
case "104":
|
||||
case "CDMT-005D63A9":
|
||||
case "CDMT-08B7B711":
|
||||
case "CDMT-16FEE117":
|
||||
case "CDMT-23C7A4D1":
|
||||
case "CDMT-491D50C5":
|
||||
case "CDMT-4980CF6D":
|
||||
case "CDMT-550FDEAC":
|
||||
case "CDMT-5CD7302F":
|
||||
case "CDMT-6B2CEDA4":
|
||||
case "CDMT-8C2B298B":
|
||||
case "CDMT-A452A1B3":
|
||||
case "CDMT-A773567D":
|
||||
case "CDMT-C16F2F43":
|
||||
case "CDMT-D5D6C225":
|
||||
case "CDMT-DF3B089B":
|
||||
case "CDMT-F8D0D70F":
|
||||
case "CDMT-FE92FDAF":
|
||||
billtype.put("number", "cdm_recbill_business_BT_S");
|
||||
break;
|
||||
//银行本票
|
||||
case "106":
|
||||
billtype.put("number", "cdm_recbill_check_BT_S");
|
||||
break;
|
||||
//支票
|
||||
case "105":
|
||||
case "CDMT-F7ABAB34":
|
||||
billtype.put("number", "cdm_recbill_promissory_BT_S");
|
||||
break;
|
||||
}
|
||||
map.put("billtype", billtype);
|
||||
}
|
||||
|
||||
if (map.get("receiver") != null) {//receiver_number
|
||||
|
@ -100,6 +156,122 @@ public class TicketRegistration implements Serializable, ApiSavePlugin {
|
|||
societycreditcode.put("number", objects[0].getString("number"));
|
||||
map.put("receiver", societycreditcode);
|
||||
}
|
||||
|
||||
// 票据类型编码
|
||||
Map<String, Object> draftbilltype = (Map<String, Object>) map.get("draftbilltype");
|
||||
String draftbilltype_number = draftbilltype.get("number").toString();
|
||||
|
||||
Map<String, Object> billtype = new HashMap<>();
|
||||
|
||||
// 承兑人全称.编码(合作金融机构)accepterfinorg_number
|
||||
Map<String, Object> accepterfinorg;
|
||||
|
||||
// 承兑人全称.星空组织编码(组织)acceptercompany_shkd_xkorgnumber
|
||||
Map<String, Object> acceptercompany;
|
||||
|
||||
switch (draftbilltype_number) {
|
||||
//银行承兑汇票
|
||||
case "101":
|
||||
billtype.put("number", "cdm_paybill_bank_BT_S");
|
||||
|
||||
accepterfinorg = (Map<String, Object>) map.get("accepterfinorg");
|
||||
if (accepterfinorg != null && accepterfinorg.get("number") != null) {
|
||||
String accepterfinorg_number = accepterfinorg.get("number").toString();
|
||||
|
||||
DynamicObject[] bd_finorginfo = BusinessDataServiceHelper.load("bd_finorginfo", "id,number,name", new QFilter("number", QCP.equals, accepterfinorg_number).toArray());
|
||||
if (bd_finorginfo.length > 0) {
|
||||
map.put("acceptername", bd_finorginfo[0].getString("name"));
|
||||
} else {
|
||||
logger.info("进入开票登记 → 票据号:{},星空推送联行号:{},未查到司库行名行号", map.get("draftbillno"), accepterfinorg_number);
|
||||
}
|
||||
} else {
|
||||
logger.info("进入开票登记 → 票据号:{},星空未推送合作金融机构联行号", map.get("draftbillno"));
|
||||
}
|
||||
break;
|
||||
|
||||
//银行承兑汇票-电票
|
||||
case "102":
|
||||
billtype.put("number", "cdm_paybill_bank_elect_BT_S");
|
||||
|
||||
accepterfinorg = (Map<String, Object>) map.get("accepterfinorg");
|
||||
if (accepterfinorg != null && accepterfinorg.get("number") != null) {
|
||||
String accepterfinorg_number = accepterfinorg.get("number").toString();
|
||||
DynamicObject[] bd_finorginfo = BusinessDataServiceHelper.load("bd_finorginfo", "id,number,name", new QFilter("number", QCP.equals, accepterfinorg_number).toArray());
|
||||
if (bd_finorginfo.length > 0) {
|
||||
map.put("acceptername", bd_finorginfo[0].getString("name"));
|
||||
} else {
|
||||
logger.info("进入开票登记 → 票据号:{},星空推送联行号:{},未查到司库行名行号", map.get("draftbillno"), accepterfinorg_number);
|
||||
}
|
||||
} else {
|
||||
logger.info("进入开票登记 → 票据号:{},星空未推送合作金融机构联行号", map.get("draftbillno"));
|
||||
}
|
||||
break;
|
||||
|
||||
//商业承兑汇票 纸票
|
||||
case "103":
|
||||
billtype.put("number", "cdm_paybill_business_BT_S");
|
||||
|
||||
acceptercompany = (Map<String, Object>) map.get("acceptercompany");
|
||||
if (acceptercompany != null && acceptercompany.get("shkd_xkorgnumber") != null) {
|
||||
String acceptercompany_shkd_xkorgnumber = acceptercompany.get("shkd_xkorgnumber").toString();
|
||||
DynamicObject[] bos_adminorg = BusinessDataServiceHelper.load("bos_adminorg", "id,number,name,shkd_xkorgnumber", new QFilter("shkd_xkorgnumber", QCP.equals, acceptercompany_shkd_xkorgnumber).toArray());
|
||||
if (bos_adminorg.length > 0) {
|
||||
map.put("acceptername", bos_adminorg[0].getString("name"));
|
||||
} else {
|
||||
logger.info("进入开票登记 → 票据号:{},星空推送星空组织编码:{},未查到司库行名行号", map.get("draftbillno"), acceptercompany_shkd_xkorgnumber);
|
||||
}
|
||||
} else {
|
||||
logger.info("进入开票登记 → 票据号:{},星空未推送星空组织编码", map.get("draftbillno"));
|
||||
}
|
||||
break;
|
||||
|
||||
//银行本票
|
||||
case "106":
|
||||
billtype.put("number", "cdm_paybill_check_BT_S");
|
||||
break;
|
||||
|
||||
//支票
|
||||
case "105":
|
||||
case "CDMT-F7ABAB34":
|
||||
billtype.put("number", "cdm_paybill_promissory_BT_S");
|
||||
break;
|
||||
|
||||
//商业承兑电票
|
||||
case "104":
|
||||
case "CDMT-005D63A9":
|
||||
case "CDMT-08B7B711":
|
||||
case "CDMT-16FEE117":
|
||||
case "CDMT-23C7A4D1":
|
||||
case "CDMT-491D50C5":
|
||||
case "CDMT-4980CF6D":
|
||||
case "CDMT-550FDEAC":
|
||||
case "CDMT-5CD7302F":
|
||||
case "CDMT-6B2CEDA4":
|
||||
case "CDMT-8C2B298B":
|
||||
case "CDMT-A452A1B3":
|
||||
case "CDMT-A773567D":
|
||||
case "CDMT-C16F2F43":
|
||||
case "CDMT-D5D6C225":
|
||||
case "CDMT-DF3B089B":
|
||||
case "CDMT-F8D0D70F":
|
||||
case "CDMT-FE92FDAF":
|
||||
billtype.put("number", "cdm_paybill_business_elec_BT_S");
|
||||
|
||||
acceptercompany = (Map<String, Object>) map.get("acceptercompany");
|
||||
if (acceptercompany != null && acceptercompany.get("shkd_xkorgnumber") != null) {
|
||||
String acceptercompany_shkd_xkorgnumber = acceptercompany.get("shkd_xkorgnumber").toString();
|
||||
DynamicObject[] bos_adminorg = BusinessDataServiceHelper.load("bos_adminorg", "id,number,name,shkd_xkorgnumber", new QFilter("shkd_xkorgnumber", QCP.equals, acceptercompany_shkd_xkorgnumber).toArray());
|
||||
if (bos_adminorg.length > 0) {
|
||||
map.put("acceptername", bos_adminorg[0].getString("name"));
|
||||
} else {
|
||||
logger.info("进入开票登记 → 票据号:{},星空推送星空组织编码:{},未查到司库行名行号", map.get("draftbillno"), acceptercompany_shkd_xkorgnumber);
|
||||
}
|
||||
} else {
|
||||
logger.info("进入开票登记 → 票据号:{},星空未推送星空组织编码", map.get("draftbillno"));
|
||||
}
|
||||
break;
|
||||
}
|
||||
map.put("billtype", billtype);
|
||||
}
|
||||
} else if ("bos_org".equals(payeetype)) {
|
||||
|
||||
|
|
Loading…
Reference in New Issue