diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillQueryDTO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillQueryDTO.java new file mode 100644 index 00000000..51e08ea0 --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillQueryDTO.java @@ -0,0 +1,80 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-4 财务应付单查询参数 + *

+ * 请求示例: + *

{@code
+ * GET /ierp/kapi/v2/awrp/ap/ap_finapbill/query?awrp_src_sys=YC&pageSize=10&pageNo=1
+ * }
+ * + * @author Chill + */ +@Data +public class BfiApBillQueryDTO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * 页码,从1开始 + */ + private Integer pageNo; + /** + * 页数 + */ + private Integer pageSize; + /** + * 来源单据号,业务系统对应的单据号,高频查询需要推送该字段 + */ + private List awrpSrcCode; + /** + * 系统编号 + */ + private String awrpSrcSys; + /** + * 修改时间-开始,格式:yyyy-MM-dd HH:mm:ss,限定时间范围不可超过1个月 + */ + private String modifytimeS; + /** + * 修改时间-结束,格式:yyyy-MM-dd HH:mm:ss + */ + private String modifytimeE; + /** + * 单据状态[A:暂存, B:已提交, C:已审核] + */ + private List billstatus; + /** + * 结算状态[unsettle:未结算, partsettle:部分结算, settled:全部结算] + */ + private List settlestatus; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveBodyDTO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveBodyDTO.java new file mode 100644 index 00000000..e9c04810 --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveBodyDTO.java @@ -0,0 +1,47 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-2 财务应付单保存请求体,结构为 data 数组 + * + * @author Chill + */ +@Data +public class BfiApBillSaveBodyDTO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * 财务应付单数据 + */ + private List data; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveDTO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveDTO.java new file mode 100644 index 00000000..f4c35024 --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveDTO.java @@ -0,0 +1,317 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-2 财务应付单保存参数 + *

+ * 请求示例: + *

{@code
+ * {
+ *   "data": [
+ *     {
+ *       "billno": "test-0210-m1",
+ *       "billtypeid_number": "ApFin_pur_BT_S",
+ *       "org_number": "01.00",
+ *       "bizdate": "2026-01-10 00:00:00",
+ *       "asstacttype": "bd_supplier",
+ *       "asstact_number": "G01.01.04.02-10-0017",
+ *       "purmode": "CREDIT",
+ *       "currency_number": "CNY",
+ *       "payorg_number": "01.00",
+ *       "payproperty_number": "2001",
+ *       "settlementtype_number": "02",
+ *       "isincludetax": true,
+ *       "purorg_number": "01.00",
+ *       "remark": "ceshi",
+ *       "awrp_src_sys": "YC",
+ *       "awrp_src_code": "test-0210-m1",
+ *       "awrp_src_bt": "awrp_contract_info",
+ *       "awrp_src_con_no": "1",
+ *       "detailentry": [
+ *         {
+ *           "material_number": "BYWL02.0141",
+ *           "measureunit_number": "GE",
+ *           "quantity": 2.00,
+ *           "pricetax": 5.0,
+ *           "taxrateid_number": "V13",
+ *           "e_remark": "test",
+ *           "awrp_entry_code": "ee1",
+ *           "awrp_src_con_eno": "e1",
+ *           "project_number": "XDWL-ZSLXM-2026-0002"
+ *         }
+ *       ],
+ *       "preentry": [
+ *         {
+ *           "y_billtype": "cas_paybill",
+ *           "y_billid": "2350830337921133568",
+ *           "y_settleamt": 2
+ *         }
+ *       ]
+ *     }
+ *   ]
+ * }
+ * }
+ * + * @author Chill + */ +@Data +public class BfiApBillSaveDTO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * 单据编号,业务不传,由星瀚生成(如 AP-202601-001394) + */ + private String billno; + /** + * 单据类型.编码[ApFin_pur_BT_S:标准采购应付, ApFin_fee_BT_S:费用采购应付, ApFin_purfee_BT_S:采购费用应付, ap_finapbill_asset_BT_S:资产采购应付, ApFin_service_BT_S:服务采购应付, ApFin_product_BT_S:产品委外应付, ApFin_other_BT_S:其他应付, ApFin_borr_BT_S:借贷项调整],城矿常用 ApFin_pur_BT_S + */ + @JsonProperty("billtypeid_number") + private String billtypeidNumber; + /** + * 结算组织.编码 + */ + @JsonProperty("org_number") + private String orgNumber; + /** + * 单据日期,格式:yyyy-MM-dd HH:mm:ss,城矿传创建时间 + */ + private String bizdate; + /** + * 到期日,格式:yyyy-MM-dd HH:mm:ss + */ + private String duedate; + /** + * 记账日期,格式:yyyy-MM-dd + */ + private String bookdate; + /** + * 往来类型[bd_supplier:供应商, bos_user:人员, bd_customer:客户],城矿传供应商 + */ + private String asstacttype; + /** + * 往来户.编码 + */ + @JsonProperty("asstact_number") + private String asstactNumber; + /** + * 付款方式[CASH:现购, CREDIT:赊购],现购代表系统自动100%推付款,赊购可自由调整后续付款金额 + */ + private String purmode; + /** + * 结算币别.货币代码,如 CNY + */ + @JsonProperty("currency_number") + private String currencyNumber; + /** + * 汇率 + */ + private BigDecimal exchangerate; + /** + * 汇率表.编码,如 01 + */ + @JsonProperty("exratetable_number") + private String exratetableNumber; + /** + * 付款组织.编码 + */ + @JsonProperty("payorg_number") + private String payorgNumber; + /** + * 款项性质.编码,如 2001 材料采购 + */ + @JsonProperty("payproperty_number") + private String paypropertyNumber; + /** + * 付款条件.编码 + */ + @JsonProperty("paycond_number") + private String paycondNumber; + /** + * 结算方式.编码,02 银行转账 + */ + @JsonProperty("settlementtype_number") + private String settlementtypeNumber; + /** + * 是否期初 + */ + private Boolean isperiod; + /** + * 录入含税价 + */ + private Boolean isincludetax; + /** + * 部门.编码 + */ + @JsonProperty("department_number") + private String departmentNumber; + /** + * 汇率日期,格式:yyyy-MM-dd HH:mm:ss + */ + private String exratedate; + /** + * 录入总价,为 true 后可不录入单价 + */ + private Boolean ispricetotal; + /** + * 采购组织.编码 + */ + @JsonProperty("purorg_number") + private String purorgNumber; + /** + * 采购组.编码 + */ + @JsonProperty("purdept_number") + private String purdeptNumber; + /** + * 采购员.业务员编码 + */ + @JsonProperty("purchaser_operatornumber") + private String purchaserOperatornumber; + /** + * 质保金 + */ + private Boolean ispremium; + /** + * 质保金比例(%) + */ + private BigDecimal premiumrate; + /** + * 质保金金额 + */ + private BigDecimal premiumamt; + /** + * 质保金到期日,格式:yyyy-MM-dd + */ + private String premduedate; + /** + * 往来单位名称 + */ + private String asstactname; + /** + * 换算方式[0:直接汇率, 1:间接汇率] + */ + private String quotation; + /** + * 微调 + */ + private Boolean isintertaxfx; + /** + * 税额不计入成本 + */ + private Boolean istaxdeduction; + /** + * 按比例分配 + */ + private Boolean allocatebyper; + /** + * 按应付金额分配 + */ + private Boolean isintax; + /** + * 收款账号,城矿不传 + */ + private String payeebanknum; + /** + * 收款银行.编码,城矿不传 + */ + @JsonProperty("bebank_number") + private String bebankNumber; + /** + * 备注 + */ + private String remark; + /** + * 微调金额 + */ + private Boolean isfx; + /** + * 微调应付金额 + */ + private Boolean isfxpricetaxtotal; + /** + * 源单id + */ + private Long sourcebillid; + /** + * 源单类型,如 ap_invoice + */ + private String sourcebilltype; + /** + * 源单编码 + */ + private String sourcebillno; + /** + * 单据来源类型[0:手工新增, 1:导入生成, 2:后台生成, 3:从总账导入, 4:协同调差生成, fromeas:EAS集成, 21:跨租户同步] + */ + private String billsrctype; + /** + * 外部系统编号,候选键 + */ + @JsonProperty("awrp_src_sys") + private String awrpSrcSys; + /** + * 外部系统来源单据号,候选键,建议拼接 + */ + @JsonProperty("awrp_src_code") + private String awrpSrcCode; + /** + * 来源单据,有上游合同则传 awrp_contract_info + */ + @JsonProperty("awrp_src_bt") + private String awrpSrcBt; + /** + * 上游外部系统单据号,即上游合同号 + */ + @JsonProperty("awrp_src_con_no") + private String awrpSrcConNo; + /** + * 外部单据类型 + */ + @JsonProperty("awrp_src_type") + private String awrpSrcType; + /** + * 明细分录 + */ + @JsonProperty("detailentry") + private List detailentry; + /** + * 付款计划分录,不传则自动汇总生成 + */ + private List planentity; + /** + * 预付信息分录 + */ + private List preentry; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveEntryDTO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveEntryDTO.java new file mode 100644 index 00000000..3e429d5c --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSaveEntryDTO.java @@ -0,0 +1,133 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-2 财务应付单保存 明细分录 + * + * @author Chill + */ +@Data +public class BfiApBillSaveEntryDTO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * 物料编码.编码,城矿对应物料(如 BYWL02.0141 废钢、WCY01.0001) + */ + @JsonProperty("material_number") + private String materialNumber; + /** + * 费用项目.编码 + */ + @JsonProperty("expenseitem_number") + private String expenseitemNumber; + /** + * 项目.项目编码,项目字段必填、若不涉及项目传编码999 + */ + @JsonProperty("project_number") + private String projectNumber; + /** + * 计量单位.编码,城矿传吨/千克 + */ + @JsonProperty("measureunit_number") + private String measureunitNumber; + /** + * 数量,城矿传重量 + */ + private BigDecimal quantity; + /** + * 单价,城矿对应付款单价 + */ + private BigDecimal price; + /** + * 含税单价 + */ + private BigDecimal pricetax; + /** + * 折扣方式[PERCENT:折扣率(%), PERUNIT:单位折扣额, NULL:无, TOTAL:固定折扣额],城矿默认无 + */ + private String discountmode; + /** + * 单位折扣(率) + */ + private BigDecimal discountrate; + /** + * 赠品 + */ + private Boolean ispresent; + /** + * 税率.编码,城矿传 V13 + */ + @JsonProperty("taxrateid_number") + private String taxrateidNumber; + /** + * 核心单据行号 + */ + @JsonProperty("corebillentryseq") + private Integer corebillentryseq; + /** + * 核心单据类型[sctm_scpo:委外采购订单, pm_om_purorderbill:简单委外订单, conm_purcontract:采购合同, ec_paymentapply:付款单申请单, pm_purorderbill:采购订单] + */ + @JsonProperty("corebilltype") + private String corebilltype; + /** + * 备注 + */ + @JsonProperty("e_remark") + private String eRemark; + /** + * 应付金额,城矿对应挂账金额 + */ + @JsonProperty("e_pricetaxtotal") + private BigDecimal ePricetaxtotal; + /** + * 金额,城矿对应实付金额 + */ + @JsonProperty("e_amount") + private BigDecimal eAmount; + /** + * 税额 + */ + @JsonProperty("e_tax") + private BigDecimal eTax; + /** + * 外部系统来源分录标识,候选键,传明细行行ID或行编码 + */ + @JsonProperty("awrp_entry_code") + private String awrpEntryCode; + /** + * 上游分录号,即上游合同分录号 + */ + @JsonProperty("awrp_src_con_eno") + private String awrpSrcConEno; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSavePlanDTO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSavePlanDTO.java new file mode 100644 index 00000000..415c0e27 --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSavePlanDTO.java @@ -0,0 +1,105 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-2 财务应付单保存 付款计划分录 + * + * @author Chill + */ +@Data +public class BfiApBillSavePlanDTO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * 到期日,格式:yyyy-MM-dd + */ + private String planduedate; + /** + * 应付金额 + */ + private BigDecimal planpricetax; + /** + * 备注 + */ + private String planremark; + /** + * 合同 + */ + private String plancontract; + /** + * 外部系统来源分录标识,候选键,不传自动取外部系统单据号 + */ + @JsonProperty("awrp_entry_code_p") + private String awrpEntryCodeP; + /** + * 利润中心.编码 + */ + @JsonProperty("planprofitcenter_number") + private String planprofitcenterNumber; + /** + * 对方利润中心.编码 + */ + @JsonProperty("plancprofitcenter_number") + private String plancprofitcenterNumber; + /** + * 结算方式.编码 + */ + @JsonProperty("plansettletype_number") + private String plansettletypeNumber; + /** + * 物料编码.编码 + */ + @JsonProperty("planmaterial_number") + private String planmaterialNumber; + /** + * 费用项目.编码 + */ + @JsonProperty("planexpenseitem_number") + private String planexpenseitemNumber; + /** + * 项目.项目编码,项目字段必填、若不涉及项目传编码999 + */ + @JsonProperty("planproject_number") + private String planprojectNumber; + /** + * 成本中心.编码 + */ + @JsonProperty("plancostcenter_number") + private String plancostcenterNumber; + /** + * 付款比例(%) + */ + @JsonProperty("p_payrate") + private BigDecimal pPayrate; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSavePreEntryDTO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSavePreEntryDTO.java new file mode 100644 index 00000000..389f7711 --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/dto/BfiApBillSavePreEntryDTO.java @@ -0,0 +1,59 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-2 财务应付单保存 预付信息分录 + * + * @author Chill + */ +@Data +public class BfiApBillSavePreEntryDTO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * 单据类型[cas_paybill:付款处理, ap_paidbill:期初预付单] + */ + @JsonProperty("y_billtype") + private String yBilltype; + /** + * 预付款单id,对应星瀚单据的id + */ + @JsonProperty("y_billid") + private String yBillid; + /** + * 本次结算金额 + */ + @JsonProperty("y_settleamt") + private BigDecimal ySettleamt; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillEntryVO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillEntryVO.java new file mode 100644 index 00000000..bce175f4 --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillEntryVO.java @@ -0,0 +1,210 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-4 财务应付单查询 明细分录 + * + * @author Chill + */ +@Data +public class BfiApBillEntryVO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + /** + * 分录行号 + */ + private Integer seq; + /** + * 应付金额 + */ + @JsonProperty("e_pricetaxtotal") + private BigDecimal ePricetaxtotal; + /** + * 金额 + */ + @JsonProperty("e_amount") + private BigDecimal eAmount; + /** + * 税额 + */ + @JsonProperty("e_tax") + private BigDecimal eTax; + /** + * 税率(%) + */ + private BigDecimal taxrate; + /** + * 数量 + */ + private BigDecimal quantity; + /** + * 单价 + */ + private BigDecimal price; + /** + * 赠品 + */ + private Boolean ispresent; + /** + * 折扣方式[PERCENT:折扣率(%), PERUNIT:单位折扣额, TOTAL:折扣额, NULL:无] + */ + private String discountmode; + /** + * 单位折扣(率) + */ + private BigDecimal discountrate; + /** + * 实际单价 + */ + private BigDecimal actprice; + /** + * 已核销金额 + */ + private BigDecimal verifyamount; + /** + * 未核销金额 + */ + @JsonProperty("e_unverifyamount") + private BigDecimal eUnverifyamount; + /** + * 已锁定金额 + */ + private BigDecimal lockedamt; + /** + * 未锁定金额 + */ + private BigDecimal unlockamt; + /** + * 已结算金额 + */ + private BigDecimal settledamt; + /** + * 未结算金额 + */ + private BigDecimal unsettleamt; + /** + * 规格型号 + */ + private String spectype; + /** + * 折扣额 + */ + private BigDecimal discountamount; + /** + * 备注 + */ + @JsonProperty("e_remark") + private String eRemark; + /** + * 含税单价 + */ + private BigDecimal pricetax; + /** + * 基本数量 + */ + @JsonProperty("e_baseunitqty") + private BigDecimal eBaseunitqty; + /** + * 合同 + */ + @JsonProperty("e_contract") + private String eContract; + /** + * 外部系统来源分录标识 + */ + @JsonProperty("awrp_entry_code") + private String awrpEntryCode; + /** + * 上游分录号 + */ + @JsonProperty("awrp_src_con_eno") + private String awrpSrcConEno; + /** + * 费用项目.编码 + */ + @JsonProperty("expenseitem_number") + private String expenseitemNumber; + /** + * 计量单位.编码 + */ + @JsonProperty("measureunit_number") + private String measureunitNumber; + /** + * 物料编码.编码 + */ + @JsonProperty("material_number") + private String materialNumber; + /** + * 核算组织.编码 + */ + @JsonProperty("calorg_number") + private String calorgNumber; + /** + * 利润中心.编码 + */ + @JsonProperty("profitcenter_number") + private String profitcenterNumber; + /** + * 对方利润中心.编码 + */ + @JsonProperty("cprofitcenter_number") + private String cprofitcenterNumber; + /** + * 基本单位.编码 + */ + @JsonProperty("e_baseunit_number") + private String eBaseunitNumber; + /** + * WBS号.WBS编码 + */ + @JsonProperty("wbs_number") + private String wbsNumber; + /** + * 项目.项目编码 + */ + @JsonProperty("project_number") + private String projectNumber; + /** + * 税率.编码 + */ + @JsonProperty("taxrateid_number") + private String taxrateidNumber; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillInvoiceVO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillInvoiceVO.java new file mode 100644 index 00000000..d29d567c --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillInvoiceVO.java @@ -0,0 +1,179 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-4 财务应付单查询 发票分录 + * + * @author Chill + */ +@Data +public class BfiApBillInvoiceVO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + /** + * 分录行号 + */ + private Integer seq; + /** + * 发票ID + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long invid; + /** + * 收票单 + */ + @JsonProperty("i_billno") + private String iBillno; + /** + * 本次占用金额 + */ + @JsonProperty("i_usedamt") + private BigDecimal iUsedamt; + /** + * 发票类型[ELE:普通发票(电子), SE:专用发票(电子), GE:普通发票(纸质), SP:专用发票(纸质), PAPER:普通纸质卷票, MACH:通用机打发票, TAXI:的士票发票, TRAIN:火车票发票, PLANE:飞机票发票, OTHERCLOUD:其他发票, MOTOR:机动车销售发票, USERCAR:二手车发票, QUOTA:定额发票, TOLL:通行费电子发票, PASSENGER:客运发票, BRIDGE:过路过桥费发票, CARBOAT:车船税发票(专票), PAID:完税证明发票, STEAMER:轮船票发票, OTHER:其他发票, NORMPE:通用机打电子发票, FINE:财政电子发票, NOELETIC:全电普票, MAELETIC:全电专票, PAYLETTER:海关进口增值税专用缴款书, OVERSEAS:形式发票] + */ + @JsonProperty("i_invoicetype") + private String iInvoicetype; + /** + * 发票类型_标题 + */ + @JsonProperty("i_invoicetype_title") + private String iInvoicetypeTitle; + /** + * 发票代码 + */ + @JsonProperty("i_invoicecode") + private String iInvoicecode; + /** + * 发票号码 + */ + @JsonProperty("i_invoiceno") + private String iInvoiceno; + /** + * 开票日期 + */ + @JsonProperty("i_invoicedate") + private String iInvoicedate; + /** + * 价税合计 + */ + @JsonProperty("i_pricetaxtotal") + private BigDecimal iPricetaxtotal; + /** + * 税率(%) + */ + @JsonProperty("i_taxrate") + private BigDecimal iTaxrate; + /** + * 税额 + */ + @JsonProperty("i_tax") + private BigDecimal iTax; + /** + * 金额 + */ + @JsonProperty("i_amount") + private BigDecimal iAmount; + /** + * 销方名称 + */ + @JsonProperty("i_asstactname") + private String iAsstactname; + /** + * 购方名称 + */ + @JsonProperty("i_buyername") + private String iBuyername; + /** + * 税额不计入成本 + */ + @JsonProperty("i_istaxdeduction") + private Boolean iIstaxdeduction; + /** + * 备注 + */ + @JsonProperty("i_remark") + private String iRemark; + /** + * 行来源[1:发票采集, 2:发票下推, 3:应付指定发票, 4:发票指定应付, 5:发票匹配, 6:应收协同, 7:供应商协同] + */ + @JsonProperty("i_srctype") + private String iSrctype; + /** + * 行来源_标题 + */ + @JsonProperty("i_srctype_title") + private String iSrctypeTitle; + /** + * 发票流水号 + */ + @JsonProperty("i_serialno") + private String iSerialno; + /** + * 后补发票[0:否, 1:是] + */ + @JsonProperty("i_issupplement") + private String iIssupplement; + /** + * 后补发票_标题 + */ + @JsonProperty("i_issupplement_title") + private String iIssupplementTitle; + /** + * 可占用金额 + */ + @JsonProperty("i_canuseamt") + private BigDecimal iCanuseamt; + /** + * 预付款发票 + */ + private Boolean isprepayinv; + /** + * 科目类型[1:进口增值税, 2:进口关税, 3:进口消费税] + */ + @JsonProperty("i_subject_type") + private String iSubjectType; + /** + * 科目类型_标题 + */ + @JsonProperty("i_subject_type_title") + private String iSubjectTypeTitle; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillPlanVO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillPlanVO.java new file mode 100644 index 00000000..ae496c2e --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillPlanVO.java @@ -0,0 +1,134 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-4 财务应付单查询 付款计划分录 + * + * @author Chill + */ +@Data +public class BfiApBillPlanVO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + /** + * 分录行号 + */ + private Integer seq; + /** + * 到期日 + */ + private String planduedate; + /** + * 应付金额 + */ + private BigDecimal planpricetax; + /** + * 未结算金额 + */ + private BigDecimal unplansettleamt; + /** + * 已结算金额 + */ + private BigDecimal plansettledamt; + /** + * 备注 + */ + private String planremark; + /** + * 冻结状态[unfreeze:未冻结, allfreeze:已冻结] + */ + @JsonProperty("e_freezestate") + private String eFreezestate; + /** + * 合同 + */ + private String plancontract; + /** + * 拆分维度ID + */ + @JsonProperty("p_splitdimensionid") + private Integer pSplitdimensionid; + /** + * 付款比例(%) + */ + @JsonProperty("p_payrate") + private BigDecimal pPayrate; + /** + * 外部系统来源分录标识 + */ + @JsonProperty("awrp_entry_code_p") + private String awrpEntryCodeP; + /** + * 利润中心.编码 + */ + @JsonProperty("planprofitcenter_number") + private String planprofitcenterNumber; + /** + * 对方利润中心.编码 + */ + @JsonProperty("plancprofitcenter_number") + private String plancprofitcenterNumber; + /** + * 结算方式.编码 + */ + @JsonProperty("plansettletype_number") + private String plansettletypeNumber; + /** + * 物料编码.编码 + */ + @JsonProperty("planmaterial_number") + private String planmaterialNumber; + /** + * 费用项目.编码 + */ + @JsonProperty("planexpenseitem_number") + private String planexpenseitemNumber; + /** + * 项目.项目编码 + */ + @JsonProperty("planproject_number") + private String planprojectNumber; + /** + * 成本中心.编码 + */ + @JsonProperty("plancostcenter_number") + private String plancostcenterNumber; +} diff --git a/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillVO.java b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillVO.java new file mode 100644 index 00000000..f38881fb --- /dev/null +++ b/blade-third-party-api/blade-bfi-api/src/main/java/org/springblade/thirdparty/bfi/pojo/vo/BfiApBillVO.java @@ -0,0 +1,295 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *

+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *

+ * 1. This software is for development use only under a valid license + * from BladeX. + *

+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *

+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *

+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *

+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *

+ * 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)A102-4 财务应付单查询返回结果 + *

+ * 成功响应示例: + *

{@code
+ * {
+ *   "data": {
+ *     "filter": "[awrp_src_sys = 'YC']", "lastPage": true, "pageNo": 1, "pageSize": 10,
+ *     "rows": [
+ *       {
+ *         "id": "2393657068314697747", "billno": "AP-202601-001394", "billstatus": "C",
+ *         "pricetaxtotal": 10.0, "amount": 8.85, "tax": 1.15, "asstacttype": "bd_supplier",
+ *         "bizdate": "2026-01-10 00:00:00", "purmode": "CREDIT",
+ *         "awrp_src_sys": "YC", "awrp_src_code": "1", "awrp_src_bt": "awrp_contract_info",
+ *         "detailentry": [ ... ], "planentity": [ ... ], "inventry": [ ... ]
+ *       }
+ *     ]
+ *   },
+ *   "errorCode": "0", "message": null, "status": true
+ * }
+ * }
+ * + * @author Chill + */ +@Data +public class BfiApBillVO implements Serializable { + @Serial + private static final long serialVersionUID = 1L; + /** + * id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + /** + * 单据编号 + */ + private String billno; + /** + * 单据状态[A:暂存, B:已提交, C:已审核] + */ + private String billstatus; + /** + * 审核时间 + */ + private String auditdate; + /** + * 创建时间 + */ + private String createtime; + /** + * 应付金额 + */ + private BigDecimal pricetaxtotal; + /** + * 金额 + */ + private BigDecimal amount; + /** + * 税额 + */ + private BigDecimal tax; + /** + * 备注 + */ + private String remark; + /** + * 往来类型[bd_supplier:供应商, bos_user:人员, bd_customer:客户] + */ + private String asstacttype; + /** + * 单据日期 + */ + private String bizdate; + /** + * 汇率 + */ + private BigDecimal exchangerate; + /** + * 付款方式[CASH:现购, CREDIT:赊购] + */ + private String purmode; + /** + * 往来单位名称 + */ + private String asstactname; + /** + * 期初 + */ + private Boolean isperiod; + /** + * 汇率日期 + */ + private String exratedate; + /** + * 换算方式[0:直接汇率, 1:间接汇率] + */ + private String quotation; + /** + * 到期日 + */ + private String duedate; + /** + * 未核销金额 + */ + private BigDecimal unverifyamount; + /** + * 未结算金额 + */ + private BigDecimal unsettleamount; + /** + * 收款账号 + */ + private String payeebanknum; + /** + * 冲销单据 + */ + private Boolean iswrittenoff; + /** + * 已被冲销 + */ + private Boolean hadwrittenoff; + /** + * 录入含税价 + */ + private Boolean isincludetax; + /** + * 记账日期 + */ + private String bookdate; + /** + * 外部系统编号 + */ + @JsonProperty("awrp_src_sys") + private String awrpSrcSys; + /** + * 外部系统来源单据号 + */ + @JsonProperty("awrp_src_code") + private String awrpSrcCode; + /** + * 来源单据,如 awrp_contract_info + */ + @JsonProperty("awrp_src_bt") + private String awrpSrcBt; + /** + * 上游外部系统单据号 + */ + @JsonProperty("awrp_src_con_no") + private String awrpSrcConNo; + /** + * 结算组织.编码 + */ + @JsonProperty("org_number") + private String orgNumber; + /** + * 结算币.货币代码 + */ + @JsonProperty("currency_number") + private String currencyNumber; + /** + * 采购组织.编码 + */ + @JsonProperty("purorg_number") + private String purorgNumber; + /** + * 往来户.编码 + */ + @JsonProperty("asstact_number") + private String asstactNumber; + /** + * 采购组.编码 + */ + @JsonProperty("purdept_number") + private String purdeptNumber; + /** + * 采购员.业务员名称 + */ + @JsonProperty("purchaser_operatorname") + private String purchaserOperatorname; + /** + * 付款条件.编码 + */ + @JsonProperty("paycond_number") + private String paycondNumber; + /** + * 本位币.货币代码 + */ + @JsonProperty("basecurrency_number") + private String basecurrencyNumber; + /** + * 汇率表.编码 + */ + @JsonProperty("exratetable_number") + private String exratetableNumber; + /** + * 结算方式.编码 + */ + @JsonProperty("settlementtype_number") + private String settlementtypeNumber; + /** + * 付款组织.编码 + */ + @JsonProperty("payorg_number") + private String payorgNumber; + /** + * 款项性质.编码 + */ + @JsonProperty("payproperty_number") + private String paypropertyNumber; + /** + * 单据类型.编码 + */ + @JsonProperty("billtypeid_number") + private String billtypeidNumber; + /** + * 收款银行.编码(行号) + */ + @JsonProperty("bebank_number") + private String bebankNumber; + /** + * 组织间结算.编码 + */ + @JsonProperty("settlerelations_number") + private String settlerelationsNumber; + /** + * 付款币种.货币代码 + */ + @JsonProperty("paymentcurrency_number") + private String paymentcurrencyNumber; + /** + * 部门.编码 + */ + @JsonProperty("department_number") + private String departmentNumber; + /** + * 业务类型.编码 + */ + @JsonProperty("biztype_number") + private String biztypeNumber; + /** + * 收款供应商.编码 + */ + @JsonProperty("receivingsupplierid_number") + private String receivingsupplieridNumber; + /** + * 明细分录 + */ + @JsonProperty("detailentry") + private List detailentry; + /** + * 付款计划分录 + */ + private List planentity; + /** + * 发票分录 + */ + private List inventry; +}