✨ 新增BFI资金收款接口(A301-1/A301-2/A301-3)参数与返回实体

This commit is contained in:
刘泉佳
2026-09-16 18:33:40 +08:00
parent a67a3ed8b6
commit e55e72c5e2
10 changed files with 1517 additions and 0 deletions
@@ -0,0 +1,59 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.dto;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 业财融合(BFI)A301-2 收款认领公告查询参数
* <p>
* 请求示例:
* <pre>{@code
* GET /ierp/kapi/v2/awrp/cas/cas_claimannounce/query?claimusers=苏浩晖&pageSize=10&pageNo=1
* }</pre>
*
* @author Chill
*/
@Data
public class BfiClaimAnnounceQueryDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 参与认领用户名
*/
private String claimusers;
/**
* 页码,从1开始
*/
private Integer pageNo;
/**
* 页数
*/
private Integer pageSize;
}
@@ -0,0 +1,47 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.dto;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
/**
* 业财融合(BFI)A301-3 收款认领结果推送请求体,结构为 data 数组
*
* @author Chill
*/
@Data
public class BfiClaimPushBodyDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 认领结果数据
*/
private List<BfiClaimPushDTO> data;
}
@@ -0,0 +1,102 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.dto;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* 业财融合(BFI)A301-3 收款认领结果推送参数
* <p>
* 请求示例:
* <pre>{@code
* {
* "data": [
* {
* "awrp_src_sys": "WCCKTEST",
* "awrp_src_code": "RLCLTEST01",
* "billid": 2398805822369971200,
* "recpaytype_number": "101",
* "paymenttype": "bd_supplier",
* "recviewpayer": "柳州卓尔汽车服务有限公司",
* "recpayer": "1398800445421388800",
* "entryentity": [
* {
* "e_receivableamt": 10.0
* }
* ]
* }
* ]
* }
* }</pre>
*
* @author Chill
*/
@Data
public class BfiClaimPushDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 认领公告id
*/
private Long billid;
/**
* 来源系统编码
*/
@JsonProperty("awrp_src_sys")
private String awrpSrcSys;
/**
* 来源系统单据编码
*/
@JsonProperty("awrp_src_code")
private String awrpSrcCode;
/**
* 收款类型.编码,如 101
*/
@JsonProperty("recpaytype_number")
private String recpaytypeNumber;
/**
* 付款人类型,如 bd_supplier
*/
private String paymenttype;
/**
* 付款人名称
*/
private String recviewpayer;
/**
* 付款人id
*/
private String recpayer;
/**
* 单据体分录
*/
private List<BfiClaimPushEntryDTO> entryentity;
}
@@ -0,0 +1,68 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.dto;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 业财融合(BFI)A301-3 收款认领结果推送 单据体分录
*
* @author Chill
*/
@Data
public class BfiClaimPushEntryDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 应收金额
*/
@JsonProperty("e_receivableamt")
private BigDecimal eReceivableamt;
/**
* 核心单据类型[ar_finarbill:财务应收单, sm_salorder:销售订单, conm_salcontract:销售合同, fr_glreim_paybill:总账付款单, fr_glreim_recbill:总账收款单, mscon_performplanin:收入履约单, cas_agentpaybill:代发处理, cas_paybill:付款处理, cdm_drafttradebill:业务处理]
*/
@JsonProperty("e_corebilltype")
private String eCorebilltype;
/**
* 核心单据编号
*/
@JsonProperty("e_corebillno")
private String eCorebillno;
/**
* 分录行号
*/
private Integer seq;
/**
* 收款类型.编码
*/
@JsonProperty("e_receivingtype_number")
private String eReceivingtypeNumber;
}
@@ -0,0 +1,76 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.dto;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
/**
* 业财融合(BFI)A301-1 收款单查询(收款处理查询)参数
* <p>
* 请求示例:
* <pre>{@code
* GET /ierp/kapi/v2/awrp/cas/cas_recbill/queryRecBill?begin_bizdate=2021-09-08&end_bizdate=2026-09-08&org_number=01.01.20.02.04.01&pageSize=10&pageNo=1
* }</pre>
*
* @author Chill
*/
@Data
public class BfiRecBillQueryDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 页码,从1开始
*/
private Integer pageNo;
/**
* 页数
*/
private Integer pageSize;
/**
* 开始业务日期,格式:yyyy-MM-dd,限定时间范围不可超过1个月
*/
@JsonProperty("begin_bizdate")
private String beginBizdate;
/**
* 结束业务日期,格式:yyyy-MM-dd
*/
@JsonProperty("end_bizdate")
private String endBizdate;
/**
* 单据编号
*/
private List<String> billno;
/**
* 收款人(公司).编码
*/
@JsonProperty("org_number")
private List<String> orgNumber;
}
@@ -0,0 +1,158 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 业财融合(BFI)A301-2 收款认领公告查询返回结果
* <p>
* 成功响应示例:
* <pre>{@code
* {
* "data": {
* "filter": "[claimusers LIKE '%苏浩晖%']", "lastPage": true, "pageNo": 1, "pageSize": 10,
* "rows": [
* {
* "billno": "RLTZ-20251217-0002", "id": "2371903479531716608", "claimusers": "苏浩晖",
* "claimme": false, "bizdate": "2025-12-15 09:55:23", "reamount": 2735.32,
* "oppunit": "通联支付网络服务股份有限公司", "claimstatus": "0",
* "claimedamount": 0.0, "unclaimamount": 2735.32, "description": "TL20251212SGRXLF7.68"
* }
* ],
* "totalCount": 2
* },
* "errorCode": "0", "message": null, "status": true
* }
* }</pre>
*
* @author Chill
*/
@Data
public class BfiClaimAnnounceVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 认领通知单
*/
private String billno;
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 参与认领用户
*/
private String claimusers;
/**
* 我已认领
*/
private Boolean claimme;
/**
* 业务日期
*/
private String bizdate;
/**
* 付款人
*/
private String recpayer;
/**
* 手续费
*/
private BigDecimal fee;
/**
* 确认认领时间
*/
private String confirmdate;
/**
* 交易明细编号
*/
private String tradedetailno;
/**
* 收款金额
*/
private BigDecimal reamount;
/**
* 对方户名
*/
private String oppunit;
/**
* 对方账号
*/
private String oppbanknumber;
/**
* 对方开户行
*/
private String oppbank;
/**
* 交易时间
*/
private String tradetime;
/**
* 明细流水号
*/
private String detailid;
/**
* 认领通知单状态
*/
private String claimstatus;
/**
* 已认领金额
*/
private BigDecimal claimedamount;
/**
* 未认领金额
*/
private BigDecimal unclaimamount;
/**
* 摘要
*/
private String description;
/**
* 付款金额
*/
private BigDecimal payamount;
/**
* 收款人
*/
private String recpayee;
/**
* 银行流水号
*/
private String bankdetailno;
/**
* 收款人(展示名)
*/
private String recviewpayer;
}
@@ -0,0 +1,89 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 业财融合(BFI)A301-1 收款单查询 关联交易明细信息分录
*
* @author Chill
*/
@Data
public class BfiRecBillBankCheckVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 分录行号
*/
private Integer seq;
/**
* 对账标识码
*/
private String ebankcheckflag;
/**
* 交易日期
*/
private String ebizdate;
/**
* 付款金额
*/
private BigDecimal edebitamount;
/**
* 收款金额
*/
private BigDecimal ecreditamount;
/**
* 交易明细编号(等于银行流水号)
*/
private String edetailbillno;
/**
* 交易明细ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long edetailid;
/**
* 交易明细币种.货币代码
*/
@JsonProperty("ecurrency_number")
private String ecurrencyNumber;
/**
* 银行流水号
*/
private String bankdetailno;
}
@@ -0,0 +1,335 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 业财融合(BFI)A301-1 收款单查询 收款明细分录
*
* @author Chill
*/
@Data
public class BfiRecBillEntryVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 分录行号
*/
private Integer seq;
/**
* 实收金额
*/
@JsonProperty("e_actamt")
private BigDecimal eActamt;
/**
* 集成原始数据分录id
*/
@JsonProperty("e_eassrcid")
private String eEassrcid;
/**
* 单据同步id
*/
@JsonProperty("e_transbillid")
private String eTransbillid;
/**
* 单据同步分录id
*/
@JsonProperty("e_transentryid")
private String eTransentryid;
/**
* 业务协同号
*/
private String bizcoopno;
/**
* 业务协同行ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long bizcoopentryid;
/**
* 成组号
*/
private String groupnumber;
/**
* 成组行号
*/
private String groupseq;
/**
* 实收折本币
*/
@JsonProperty("e_localamt")
private BigDecimal eLocalamt;
/**
* 备注
*/
@JsonProperty("e_remark")
private String eRemark;
/**
* 现金折扣
*/
@JsonProperty("e_discountamt")
private BigDecimal eDiscountamt;
/**
* 折扣折本币
*/
@JsonProperty("e_discountlocamt")
private BigDecimal eDiscountlocamt;
/**
* 应收金额
*/
@JsonProperty("e_receivableamt")
private BigDecimal eReceivableamt;
/**
* 应收折本币
*/
@JsonProperty("e_receivablelocamt")
private BigDecimal eReceivablelocamt;
/**
* 已锁定金额
*/
@JsonProperty("e_lockamt")
private BigDecimal eLockamt;
/**
* 未锁定金额
*/
@JsonProperty("e_unlockamt")
private BigDecimal eUnlockamt;
/**
* 已结算金额
*/
@JsonProperty("e_settledamt")
private BigDecimal eSettledamt;
/**
* 未结算金额
*/
@JsonProperty("e_unsettledamt")
private BigDecimal eUnsettledamt;
/**
* 核心单据类型
*/
@JsonProperty("e_corebilltype")
private String eCorebilltype;
/**
* 核心单据号
*/
@JsonProperty("e_corebillno")
private String eCorebillno;
/**
* 核心单据行号
*/
@JsonProperty("e_corebillentryseq")
private Integer eCorebillentryseq;
/**
* 核心单据行id
*/
@JsonProperty("e_corebillentryid")
@JsonSerialize(using = ToStringSerializer.class)
private Long eCorebillentryid;
/**
* 核心单据id
*/
@JsonProperty("e_corebillid")
private String eCorebillid;
/**
* 源单ID
*/
@JsonProperty("e_sourcebillid")
@JsonSerialize(using = ToStringSerializer.class)
private Long eSourcebillid;
/**
* 源单分录ID
*/
@JsonProperty("e_sourcebillentryid")
@JsonSerialize(using = ToStringSerializer.class)
private Long eSourcebillentryid;
/**
* 变更拆分分录ID
*/
@JsonProperty("e_sourcebillresentryid")
@JsonSerialize(using = ToStringSerializer.class)
private Long eSourcebillresentryid;
/**
* 合同号
*/
private String contractnumber;
/**
* 合同编号
*/
private String conbillnumber;
/**
* 合同行号
*/
private String conbillrownum;
/**
* 合同ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long conbillid;
/**
* 合同行ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long conbillentryid;
/**
* 合同实体.编码
*/
@JsonProperty("conbillentity_number")
private String conbillentityNumber;
/**
* conbillentity_id
*/
@JsonProperty("conbillentity_id")
private String conbillentityId;
/**
* 手续费
*/
@JsonProperty("e_fee")
private BigDecimal eFee;
/**
* 认领单编码
*/
@JsonProperty("e_claimbill")
private String eClaimbill;
/**
* 挂合同批次号
*/
@JsonProperty("e_contractbatch")
private String eContractbatch;
/**
* 组织间清分批次号
*/
@JsonProperty("e_orgsdividebatch")
private String eOrgsdividebatch;
/**
* 清分状态[normal:正常, waitdivide:待清分, yetdivide:已清分]
*/
@JsonProperty("e_dividestatus")
private String eDividestatus;
/**
* 业务日期
*/
private String entrybizdate;
/**
* 已结算金额折本币
*/
@JsonProperty("e_settledlocalamt")
private BigDecimal eSettledlocalamt;
/**
* 未结算金额折本位币
*/
@JsonProperty("e_unsettledlocalamt")
private BigDecimal eUnsettledlocalamt;
/**
* 已匹配核心单据标识
*/
@JsonProperty("e_matchselltag")
private Boolean eMatchselltag;
/**
* 认领维度[ar_finarbill_detaillayout:物料明细, ar_finarbill_planlayout:收款计划, ar_finarbill_layout:整单]
*/
private String claimdimension;
/**
* 启用认领预占控制
*/
private Boolean claimcomtrol;
/**
* 收款类型.编码
*/
@JsonProperty("e_receivingtype_number")
private String eReceivingtypeNumber;
/**
* 资金用途.编码
*/
@JsonProperty("e_fundflowitem_number")
private String eFundflowitemNumber;
/**
* 实际收款公司.编码
*/
@JsonProperty("realreccompany_number")
private String realreccompanyNumber;
/**
* 物料.编码
*/
@JsonProperty("e_material_number")
private String eMaterialNumber;
/**
* 费用项目.编码
*/
@JsonProperty("e_expenseitem_number")
private String eExpenseitemNumber;
/**
* 项目.项目编码
*/
@JsonProperty("project_number")
private String projectNumber;
/**
* 结算组织.编码
*/
@JsonProperty("e_settleorg_number")
private String eSettleorgNumber;
/**
* 收款组织(虚拟收款用).编码
*/
@JsonProperty("recorg_number")
private String recorgNumber;
/**
* 内部业务单元.编码
*/
@JsonProperty("bizunit_number")
private String bizunitNumber;
/**
* 成本中心.编码
*/
@JsonProperty("costcenter_number")
private String costcenterNumber;
/**
* 产品线.编码
*/
@JsonProperty("productline_number")
private String productlineNumber;
/**
* 利润中心.编码
*/
@JsonProperty("e_profitcenter_number")
private String eProfitcenterNumber;
/**
* 对方利润中心.编码
*/
@JsonProperty("e_cprofitcenter_number")
private String eCprofitcenterNumber;
}
@@ -0,0 +1,85 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 业财融合(BFI)A301-1 收款单查询 流水信息分录
*
* @author Chill
*/
@Data
public class BfiRecBillFlowVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
private String id;
/**
* 分录行号
*/
private String seq;
/**
* 交易明细编号
*/
@JsonProperty("bei_billno")
private String beiBillno;
/**
* 收款金额
*/
@JsonProperty("bei_creditamount")
private String beiCreditamount;
/**
* 明细流水号
*/
@JsonProperty("bei_detailid")
private String beiDetailid;
/**
* 银行流水号
*/
@JsonProperty("bei_bankdetailno")
private String beiBankdetailno;
/**
* 流水ID/票据ID
*/
private String infoid;
/**
* 票面金额
*/
@JsonProperty("cdm_amount")
private String cdmAmount;
/**
* 票据号码
*/
@JsonProperty("cdm_draftbillno")
private String cdmDraftbillno;
}
@@ -0,0 +1,498 @@
/**
* BladeX Commercial License Agreement
* Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
* <p>
* Use of this software is governed by the Commercial License Agreement
* obtained after purchasing a license from BladeX.
* <p>
* 1. This software is for development use only under a valid license
* from BladeX.
* <p>
* 2. Redistribution of this software's source code to any third party
* without a commercial license is strictly prohibited.
* <p>
* 3. Licensees may copyright their own code but cannot use segments
* from this software for such purposes. Copyright of this software
* remains with BladeX.
* <p>
* Using this software signifies agreement to this License, and the software
* must not be used for illegal purposes.
* <p>
* THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
* not liable for any claims arising from secondary or illegal development.
* <p>
* Author: Chill Zhuang (bladejava@qq.com)
*/
package org.springblade.thirdparty.bfi.pojo.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* 业财融合(BFI)A301-1 收款单查询(收款处理查询)返回结果
* <p>
* 成功响应示例:
* <pre>{@code
* {
* "data": {
* "filter": "[bizdate < '2026-09-09 00:00:00' AND billstatus = 'C' AND org.number IN ('01.01.20.02.04.01')]",
* "lastPage": true, "pageNo": 1, "pageSize": 10,
* "rows": [
* {
* "id": "2116801651917487104", "billno": "RV-202412-002371", "billstatus": "C",
* "bizdate": "2024-12-30 00:00:00", "payertype": "bd_customer",
* "actrecamt": 936.0, "payername": "广西新华弘文教育投资有限公司柳州柳城分公司",
* "sourcebillnumber": "AR-241120-002728", "sourcebilltype": "ar_finarbill",
* "bankcheckentity": [ ... ], "entry": [ ... ]
* }
* ]
* },
* "errorCode": "0", "message": null, "status": true
* }
* }</pre>
*
* @author Chill
*/
@Data
public class BfiRecBillVO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 单据编号
*/
private String billno;
/**
* 单据状态[A:暂存, B:已提交, C:已审核, D:已收款, E:变更中, G:已退单]
*/
private String billstatus;
/**
* 审核时间
*/
private String auditdate;
/**
* 修改时间
*/
private String modifytime;
/**
* 创建时间
*/
private String createtime;
/**
* 数据集成来源
*/
private String integrationsrc;
/**
* 历史数据
*/
private Boolean ishistory;
/**
* 红字冲正虚拟结算
*/
private Boolean redvirtual;
/**
* 核销生成
*/
private Boolean isfromwriteoff;
/**
* 选择结算号标识
*/
private String selectdraftflag;
/**
* 记账日期
*/
private String bookdate;
/**
* 已有电子回单
*/
private Boolean isgetreceipt;
/**
* 退票流水ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long refunddetailid;
/**
* 业务日期
*/
private String bizdate;
/**
* 付款人类型[bd_customer:客户, bd_supplier:供应商, bos_org:公司, bos_user:职员, other:其他]
*/
private String payertype;
/**
* 摘要
*/
@JsonProperty("txt_description")
private String txtDescription;
/**
* 收款金额
*/
private BigDecimal actrecamt;
/**
* 汇率
*/
private BigDecimal exchangerate;
/**
* 折本位币
*/
private BigDecimal localamt;
/**
* 付款人名称
*/
private String payername;
/**
* 付款账户
*/
private String payeracctbanknum;
/**
* 结算号
*/
private String settletnumber;
/**
* 付款人ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long payer;
/**
* 付款人类型标识ID
*/
private String payerformid;
/**
* 付款账户类型标识ID
*/
private String payeraccformid;
/**
* 付款账户ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long payeracctbank;
/**
* 收款日期
*/
private String payeedate;
/**
* 源单ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long sourcebillid;
/**
* 付款银行
*/
private String payerbankname;
/**
* 代理收款
*/
private Boolean isagent;
/**
* 生成凭证
*/
private Boolean isvoucher;
/**
* 付款方式
*/
private String paymentmode;
/**
* 是否归档
*/
private Boolean isarchive;
/**
* 源单编码
*/
private String sourcebillnumber;
/**
* 源单类型[cas_recbill:收款单, er_repaymentbill:还款单, cas_betransdetail:交易明细, ar_finarbill:财务应收单, cas_paybill:付款单, fca_transdownbill:下拨单, sm_salorder:销售订单, cfm_loanbill:提款单, cdm_drafttradebill:业务处理, ec_incomeapply:建筑请款单, cas_claimcenterbill:认领通知单, bei_intelrec:收款入账中心, bei_transdetail:交易明细, cim_invest_repaybill:本金收回, cim_invest_interestbill:收息处理, fca_transupbill:上划单, cfm_feebill:费用明细单, lc_present:交单处理, lc_forfaiting:福费廷, tm_businessbill:生命周期操作, ifm_loanbill:贷款放款处理, cdm_receivablebill:收票登记, cfm_loanbill_bond:债券发行, tm_structdeposit:结构性存款, tm_rateswap:互换, tm_bond_fix:固定利率债券/零息债券, tm_bond_float:浮动利率债券, tm_forex_options:外汇期权, cim_release:定期存款解活处理, cim_noticerelease:通知存款解活处理, scf_finrecbill:供应链融资收款处理, cim_redeem:理财赎回, cim_revenue:理财收益, ifm_currentintbill:存款利息结息记账处理, cim_dptrevenue:存款收益处理, fbd_suretyreleasebill:保证金存出处理, fl_receiptbill:售后租回回款, pmct_incomeapply:项目合同请款单, cas_agentpaybill:代发处理, gm_receiveletter:收函登记, ifm_currentintbill_bank:活期存款结息记账处理, fbd_surety_settleint:保证金收益, occba_moneyincome:资金收入单]
*/
private String sourcebilltype;
/**
* 退款批次号
*/
private String refundbatchseqid;
/**
* 退款退票业务
*/
private Boolean isrefund;
/**
* 全额退款
*/
private Boolean isfullrefund;
/**
* 汇率日期
*/
private String exratedate;
/**
* 凭证号
*/
private String vouchernum;
/**
* 付款人类型[bos_org:公司, bd_supplier:供应商, bd_customer:客户, bos_user:职员]
*/
private String itempayertype;
/**
* 手续费
*/
private BigDecimal fee;
/**
* 影像编号
*/
private String imageno;
/**
* 退单原因
*/
private String reason;
/**
* 退单日期
*/
private String backdate;
/**
* 是否认款
*/
private Boolean confirmlogo;
/**
* 实际交易日期
*/
private String acttradedate;
/**
* 付款人编码
*/
private String payernumber;
/**
* 是否未认领入账
*/
private Boolean isunclaim;
/**
* 红冲标识
*/
private String hotaccount;
/**
* 对账标识码
*/
private String bankcheckflag;
/**
* 换算方式[0:直接汇率, 1:间接汇率]
*/
private String quotation;
/**
* 匹配标识
*/
private String matchflag;
/**
* 已匹配收款金额
*/
private BigDecimal matchamountrec;
/**
* 未匹配收款金额
*/
private BigDecimal unmatchamountrec;
/**
* 需关联对方流水
*/
private Boolean relateotherflow;
/**
* 已匹配付款金额
*/
private BigDecimal matchamountpay;
/**
* 未匹配付款金额
*/
private BigDecimal unmatchamountpay;
/**
* 匹配异常原因
*/
private String matchflagmsg;
/**
* 结算状态
*/
private String settlestatus;
/**
* 未结算金额
*/
private BigDecimal unsettleamount;
/**
* 未结算金额(本位币)
*/
private BigDecimal unsettleamountbase;
/**
* 已结算金额
*/
private BigDecimal settleamount;
/**
* 已结算金额(本位币)
*/
private BigDecimal settleamountbase;
/**
* 多收款类型
*/
private Boolean multireceivingtype;
/**
* 业务类型[wallettransfer:数币转账]
*/
private String businesstype;
/**
* 退款类型[refund:退款, renote:退票]
*/
private String refundtype;
/**
* 手工标记为无需匹配
*/
private Boolean handmarknomatch;
/**
* 来源系统
*/
private String sourcetype;
/**
* 业务唯一码
*/
private String bizfingerprint;
/**
* 是否虚拟收款单
*/
private Boolean isvirtual;
/**
* 单据类型[SalesRec:销售收款, OtherRec:其他收款]
*/
private String biztype;
/**
* 收款类型.编码
*/
@JsonProperty("receivingtype_number")
private String receivingtypeNumber;
/**
* 收款类型.名称
*/
@JsonProperty("receivingtype_name")
private String receivingtypeName;
/**
* 收款银行.编码(合作金融机构)
*/
@JsonProperty("payeebank_number")
private String payeebankNumber;
/**
* 收款银行.名称
*/
@JsonProperty("payeebank_name")
private String payeebankName;
/**
* 结算方式.编码
*/
@JsonProperty("settletype_number")
private String settletypeNumber;
/**
* 出纳.工号
*/
@JsonProperty("cashier_number")
private String cashierNumber;
/**
* 付款银行.编码(行号)
*/
@JsonProperty("f7_payerbank_number")
private String f7PayerbankNumber;
/**
* 现金账号.账户编码
*/
@JsonProperty("accountcash_number")
private String accountcashNumber;
/**
* 资金流量项目.编码
*/
@JsonProperty("fundflowitem_number")
private String fundflowitemNumber;
/**
* 会计.工号
*/
@JsonProperty("clerk_number")
private String clerkNumber;
/**
* 币种.货币代码
*/
@JsonProperty("currency_number")
private String currencyNumber;
/**
* 本位币.货币代码
*/
@JsonProperty("basecurrency_number")
private String basecurrencyNumber;
/**
* 核算组织.编码
*/
@JsonProperty("openorg_number")
private String openorgNumber;
/**
* 实际付款账户.编码
*/
@JsonProperty("actpayaccount_number")
private String actpayaccountNumber;
/**
* 汇率表.编码
*/
@JsonProperty("exratetable_number")
private String exratetableNumber;
/**
* 付款人.编码
*/
@JsonProperty("itempayer_number")
private String itempayerNumber;
/**
* 退单人.工号
*/
@JsonProperty("backuser_number")
private String backuserNumber;
/**
* 代收款核算组织.编码
*/
@JsonProperty("agentrecorg_number")
private String agentrecorgNumber;
/**
* 账号.编码
*/
@JsonProperty("inneraccount_number")
private String inneraccountNumber;
/**
* 对方利润中心.编码
*/
@JsonProperty("cprofitcenter_number")
private String cprofitcenterNumber;
/**
* 收款人(公司).编码
*/
@JsonProperty("org_number")
private String orgNumber;
/**
* 收款人(公司).名称
*/
@JsonProperty("org_name")
private String orgName;
/**
* 收款人银行账号.编码
*/
@JsonProperty("accountbank_number")
private String accountbankNumber;
/**
* 收款人银行账号.账户简称
*/
@JsonProperty("accountbank_name")
private String accountbankName;
/**
* 关联交易明细信息分录
*/
@JsonProperty("bankcheckentity")
private List<BfiRecBillBankCheckVO> bankcheckentity;
/**
* 收款明细分录
*/
private List<BfiRecBillEntryVO> entry;
/**
* 流水信息分录
*/
private List<BfiRecBillFlowVO> infoentry;
}