diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplication.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplication.java index bf03a3ce..960cb23d 100644 --- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplication.java +++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplication.java @@ -47,37 +47,136 @@ import java.time.LocalDateTime; @Schema(description = "开票申请") public class InvoiceApplication extends TenantEntity { @Serial private static final long serialVersionUID = 1L; + /** + * 开票申请单号(同租户唯一,A303-1 billno 幂等候选键) + */ private String applicationNo; + /** + * 所属项目ID(结算单快照带出) + */ private Long projectId; + /** + * 所属项目名称(结算单快照带出) + */ private String projectName; + /** + * 申请部门(所属组织)ID + */ private Long deptId; + /** + * 申请部门(所属组织)名称 + */ private String deptName; + /** + * 开票单位名称(销方=结算单收款方快照,金蝶 salername 取数来源) + */ private String issuerName; + /** + * 受票方客商档案ID + */ private Long receiverCustomerId; + /** + * 受票方单位名称(客商开票信息企业全称快照,金蝶 buyername) + */ private String receiverName; + /** + * 发票类型:electronic_normal-数电普票 / electronic_special-数电专票 + */ private String invoiceType; + /** + * 可开票金额(关联结算单剩余可开票额度合计) + */ private BigDecimal availableInvoiceAmount; + /** + * 本次开票金额(商品行价税合计,金蝶 totalamount) + */ private BigDecimal invoiceAmount; + /** + * 申请日期(提交审批时置当日) + */ private LocalDate applicationDate; + /** + * 申请人姓名 + */ private String applicantName; + /** + * 承办部门ID(结算单所属组织快照) + */ private Long undertakingDeptId; + /** + * 承办部门名称(结算单所属组织快照) + */ private String undertakingDeptName; + /** + * 部门邮箱(发票推送邮箱,多个以分号分隔,最多3个,金蝶 buyeremail) + */ private String departmentEmails; + /** + * 受票方客商开票信息ID(blade_customer_invoice_info) + */ private Long receiverInvoiceInfoId; + /** + * 受票方纳税人识别号(开票信息快照,金蝶 buyertaxno) + */ private String taxpayerNo; + /** + * 受票方开户行(开票信息快照) + */ private String bankName; + /** + * 受票方开户账号(开票信息快照) + */ private String bankAccount; + /** + * 受票方注册地址(开票信息快照) + */ private String registeredAddress; + /** + * 受票方联系人 + */ private String contactName; + /** + * 受票方联系电话 + */ private String contactPhone; + /** + * 受票方邮箱 + */ private String email; + /** + * 审批状态:draft-草稿 reviewing-审批中 approved-审批通过 returned-已驳回 voided-已作废 + */ private String approvalStatus; + /** + * 当前审批节点,如「草稿」「开票审核」「审批通过」 + */ private String currentNode; + /** + * 当前处理人姓名 + */ private String currentProcessor; + /** + * 金蝶开票申请单编号(A303-1 返回,A303-5 查询 serialNo) + */ private String kingdeeBillNo; + /** + * 金蝶同步状态:unsynced-未同步 synced-已同步 failed-同步失败 invoiced-开票完成(终态) + */ private String kingdeeStatus; + /** + * 同步金蝶时间 + */ private LocalDateTime syncedTime; + /** + * 附件JSON + */ private String attachmentsJson; + /** + * 备注 + */ private String remark; + /** + * 作废原因,驳回时记录驳回原因 + */ private String voidReason; } diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationDetail.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationDetail.java index 44104935..2d43fc59 100644 --- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationDetail.java +++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationDetail.java @@ -44,25 +44,88 @@ import java.time.LocalDateTime; @TableName("blade_invoice_application_detail") public class InvoiceApplicationDetail extends TenantEntity { @Serial private static final long serialVersionUID = 1L; + /** + * 开票申请ID + */ private Long invoiceApplicationId; + /** + * 正式结算单ID + */ private Long formalSettlementId; + /** + * 来源正式结算明细ID + */ private Long formalSettlementDetailId; + /** + * 行号 + */ private Integer lineNo; + /** + * 结算明细单据号(快照) + */ private String documentNo; + /** + * 运单号(快照) + */ private String waybillNo; + /** + * 车牌号(快照) + */ private String vehicleNo; + /** + * 起运地(快照) + */ private String departureAddress; + /** + * 到达地(快照) + */ private String arrivalAddress; + /** + * 实际发运时间(快照) + */ private LocalDateTime actualDepartureTime; + /** + * 实际完成时间(快照) + */ private LocalDateTime actualCompletionTime; + /** + * 运输方式(快照,字典 transport_type) + */ private String transportType; + /** + * 货物名称(快照) + */ private String cargoName; + /** + * 货物类型(快照) + */ private String cargoType; + /** + * 运输数量(快照) + */ private BigDecimal transportQuantity; + /** + * 数量单位(快照) + */ private String quantityUnit; + /** + * 里程(快照) + */ private BigDecimal mileage; + /** + * 批次号(快照) + */ private String batchNo; + /** + * 运费金额(快照) + */ private BigDecimal freightAmount; + /** + * 费用项明细JSON(快照) + */ private String feeItemsJson; + /** + * 结算金额(含税,快照) + */ private BigDecimal settlementAmountTax; } diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationLine.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationLine.java index 1a63d8d9..a158df88 100644 --- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationLine.java +++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationLine.java @@ -43,19 +43,64 @@ import java.math.BigDecimal; @TableName("blade_invoice_application_line") public class InvoiceApplicationLine extends TenantEntity { @Serial private static final long serialVersionUID = 1L; + /** + * 开票申请ID + */ private Long invoiceApplicationId; + /** + * 所属发票张次ID + */ private Long invoiceSheetId; + /** + * 行号(张内序号) + */ private Integer lineNo; + /** + * 商品和服务分类名称(开票项目主数据选择,金蝶 goodssimplename) + */ private String goodsCategory; + /** + * 货物或服务简称(开票项目主数据选择,金蝶 goodsname) + */ private String goodsName; + /** + * 税收分类编码(选择开票内容时快照,仅供展示与追溯;推送金蝶按分类+简称实时匹配开票项目主数据取数) + */ private String taxClassificationCode; + /** + * 单位 + */ private String unit; + /** + * 数量 + */ private BigDecimal quantity; + /** + * 不含税单价 + */ private BigDecimal unitPriceNoTax; + /** + * 不含税金额 + */ private BigDecimal amountNoTax; + /** + * 含税金额(历史兼容字段,与含税合计同值) + */ private BigDecimal amountWithTax; + /** + * 税率(0-100 百分比值,推送金蝶时转小数文本) + */ private BigDecimal taxRate; + /** + * 税额 + */ private BigDecimal taxAmount; + /** + * 价税合计(含税合计,金蝶 taxamount) + */ private BigDecimal totalAmount; + /** + * 行备注 + */ private String remark; } diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationRecord.java index 8a411bd8..01c9e9b0 100644 --- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationRecord.java +++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationRecord.java @@ -42,12 +42,36 @@ import java.io.Serial; @TableName("blade_invoice_application_record") public class InvoiceApplicationRecord extends TenantEntity { @Serial private static final long serialVersionUID = 1L; + /** + * 开票申请ID + */ private Long invoiceApplicationId; + /** + * 操作类型:create/save/submit/approve/return/void/sync 等 + */ private String actionType; + /** + * 操作名称(展示用,如「提交审批」「同步金蝶」) + */ private String actionName; + /** + * 操作前审批状态 + */ private String fromStatus; + /** + * 操作后审批状态 + */ private String toStatus; + /** + * 操作人姓名 + */ private String operatorName; + /** + * 原因说明(驳回/作废原因等) + */ private String reason; + /** + * 金蝶单据编号(同步类操作记录) + */ private String kingdeeBillNo; } diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationSettlement.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationSettlement.java index 57a03396..ac6ba4ca 100644 --- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationSettlement.java +++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationSettlement.java @@ -43,10 +43,28 @@ import java.math.BigDecimal; @TableName("blade_invoice_application_settlement") public class InvoiceApplicationSettlement extends TenantEntity { @Serial private static final long serialVersionUID = 1L; + /** + * 开票申请ID + */ private Long invoiceApplicationId; + /** + * 正式结算单ID + */ private Long formalSettlementId; + /** + * 正式结算单号(关联时快照) + */ private String formalSettlementNo; + /** + * 结算金额(关联时快照) + */ private BigDecimal settlementAmount; + /** + * 可开票金额(关联时快照) + */ private BigDecimal availableInvoiceAmount; + /** + * 本申请分摊开票金额(结算单开票状态按此汇总) + */ private BigDecimal allocatedInvoiceAmount; } diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationSheet.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationSheet.java index 8550946d..e92fe617 100644 --- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationSheet.java +++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InvoiceApplicationSheet.java @@ -43,7 +43,16 @@ import java.math.BigDecimal; @TableName("blade_invoice_application_sheet") public class InvoiceApplicationSheet extends TenantEntity { @Serial private static final long serialVersionUID = 1L; + /** + * 开票申请ID + */ private Long invoiceApplicationId; + /** + * 发票张序号(从 1 开始) + */ private Integer sheetNo; + /** + * 本张开票金额(张内商品行价税合计) + */ private BigDecimal invoiceAmount; }