1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
package com.by4cloud.platformx.business.entity;
 
import com.by4cloud.platformx.common.data.mybatis.BaseModel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import lombok.Data;
import org.hibernate.annotations.Table;
 
import java.math.BigDecimal;
import java.util.Date;
 
/**
 * 2026年6月5日 10:59:02
 * syt
 */
@Data
@Entity//加了才能自动生成表
@Table(appliesTo="contract_invoice",comment = "合同发票")//给表加注释
@jakarta.persistence.Table(name = "contract_invoice")//数据库创建的表明
public class ContractInvoice extends BaseModel<ContractInvoice> {
 
    @Schema(description = "关联合同ID")
    @Column(columnDefinition = "bigint not null comment '关联合同ID'")
    private Long contractId;
 
    @Schema(description = "发票类型")
    @Column(columnDefinition="char comment '发票类型 1/蓝 2/红'")
    private String invoiceCategory;
 
    @Schema(description = "开票金额(不含税)")
    @Column(columnDefinition="decimal(10,2) comment '开票金额(不含税'")
    private BigDecimal invoiceTotalPrice;
 
    @Schema(description = "开票税额")
    @Column(columnDefinition="decimal(10,2) comment '开票税额'")
    private BigDecimal invoiceTotalTax;
 
    @Schema(description = "开票金额(含税)")
    @Column(columnDefinition="decimal(10,2) comment '开票金额(含税)'")
    private BigDecimal invoiceTotalPriceTax;
 
    @Schema(description = "开票时间")
    @Column(columnDefinition="datetime comment '开票时间'")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date invoiceTime;
 
    @Schema(description = "发票状态")
    @Column(columnDefinition="char comment '发票状态 1/开票中 2/已开票'")
    private String invoiceStatus;
 
    @Schema(description = "发票地址")
    @Column(columnDefinition="varchar(256) comment '开票时间'")
    private String invoicePath;
 
    @Schema(description = "合同出库单ID")
    @Column(columnDefinition="text comment '合同出库单ID'")
    private String outBoundId;
 
    @Schema(description = "发票预览参数")
    @Column(columnDefinition="text comment '发票预览参数'")
    private String invoicePreviewParam;
 
    @Schema(description = "红冲标识")
    @Column(columnDefinition="char comment '红冲标识 1/是 0/否 2/审核中 3/红冲待确认'")
    private String redReversal;
 
    @Schema(description = "发票号码")
    @Column(columnDefinition="varchar(64) comment '开票流水号'")
    private String invoiceNo;
 
    @Schema(description = "开票流水号")
    @Column(columnDefinition="varchar(64) comment '开票流水号'")
    private String serialNo;
 
    @Schema(description = "机构税号")
    @Column(columnDefinition="varchar(64) comment '机构税号'")
    private String taxNo;
 
    @Schema(description = "销售方名称")
    @Column(columnDefinition="varchar(128) comment '销售方名称'")
    private String sellerTaxName;
 
    @Schema(description = "购买方名称")
    @Column(columnDefinition="varchar(128) comment '购买方名称'")
    private String buyerTaxName;
 
    @Schema(description = "购买方税号")
    @Column(columnDefinition="varchar(128) comment '购买方名称'")
    private String buyerTaxNo;
 
    @Schema(description = "发票预览信息")
    @Column(columnDefinition="text comment '发票预览信息'")
    private String invoicePreview;
 
    @Schema(description = "审批状态")
    @Column(columnDefinition="char comment '审批状态 1/审批通过 0/审批中 2/审批失败'")
    private String approvalStatus;
 
    @Schema(description = "关联蓝票ID")
    @Column(columnDefinition = "bigint comment '关联蓝票ID'")
    private Long blueInvoiceId;
 
    @Schema(description = "bip推送标识")
    @Column(columnDefinition="char comment 'bip推送标识 1/已推送 0/未推送'")
    private String bipPush;
 
    @Schema(description = "bip推送成功后返回数据ID")
    @Column(columnDefinition="bigint comment 'bip推送成功后返回数据ID'")
    private Long bipId;
 
    @Schema(description = "发票预览bip推送成功后返回的数据结构")
    @Column(columnDefinition="text comment '发票预览bip推送成功后返回的数据结构'")
    private String bipBody;
 
    @Schema(description = "关联请求ID")
    @Column(columnDefinition = "varchar(64) comment '关联请求ID'")
    private String bwRequestId;
 
    @Schema(description = "关联请求参数")
    @Column(columnDefinition = "text comment '关联请求参数'")
    private String bwRequestParam;
 
    @Schema(description = "请求结果")
    @Column(columnDefinition = "char comment '请求结果 0/失败 1/成功'")
    private String bwRequestResult;
 
    @Schema(description = "预收开票标识")
    @Column(columnDefinition = "char default '0' comment '0/否 1/是'")
    private String advanceFlag;
}