package com.by4cloud.platformx.business.entity; import com.by4cloud.platformx.common.data.mybatis.BaseModel; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.persistence.Column; import jakarta.persistence.Entity; import lombok.Data; import org.hibernate.annotations.Comment; import java.math.BigDecimal; /** * @author kdq * @version 1.0.0 * @ClassName InvoiceResult.java * @Description TODO * @createTime 10024年11月05日 17:10:00 */ @Data @Entity @org.hibernate.annotations.Table(appliesTo="billing_item",comment = "开票产品信息表")//给表加注释 @jakarta.persistence.Table(name = "billing_item")//开具发票返回值 @Comment("开票产品信息表") public class BillingItem extends BaseModel { @Schema(description = "开票信息id") @Column(columnDefinition = "bigint comment '开票信息id'") private Long billingInfoId; @Schema(description = "对应合同出库单Ids") @Column(columnDefinition = "VARCHAR(300) comment '对应合同出库单Ids'") private String contractOutBoundIds; @Schema(description = "关联合同ID") @Column(columnDefinition = "bigint not null comment '关联合同ID'") private Long contractId; @Schema(description = "客商ID") @Column(columnDefinition="bigint comment '客商ID'") private Long busGuestId; @Schema(description = "标的物名称") @Column(columnDefinition="VARCHAR(64) comment '标的物名称'") private String subjectMatterName; @Schema(description = "标的物编码") @Column(columnDefinition="VARCHAR(64) comment '标的物编码'") private String subjectMatterCode; @Schema(description = "开票产品数量") @Column(columnDefinition="decimal(10,2) comment '开票产品数量'") private BigDecimal productNum; @Schema(description = "开票状态(0-未开票 1-开票中 2-已开票)") @Column(columnDefinition = "tinyint(2) default 0 comment '开票状态(0-未开票 1-开票中 2-已开票)'") private Integer billingStatus; @Schema(description = "总单价") @Column(columnDefinition = "decimal(10,2) comment '总单价'") private BigDecimal totalPrice; @Schema(description = "总税额") @Column(columnDefinition = "decimal(10,2) comment '总税额'") private BigDecimal totalTax; @Schema(description = "不含税总额") @Column(columnDefinition = "decimal(10,2) comment '不含税总额'") private BigDecimal totalPriceNoTax; //产品信息 @Schema(description = "产品id") @Column(columnDefinition = "bigint comment '产品id'") private Long productId; @Schema(description = "开票产品名称") @Column(columnDefinition = "VARCHAR(50) comment '开票产品名称'") private String invoiceName; @Schema(description = "税率(百分比,如13表示13%)") @Column(columnDefinition = "double default 0.00 comment '税率'") private Double taxRate; @Schema(description = "税收分类") @Column(columnDefinition = "VARCHAR(50) comment '税收分类'") private String taxClass; @Schema(description = "税收编码") @Column(columnDefinition = "VARCHAR(80) comment '税收编码'") private String taxCode; //合同标的物中信息 @Schema(description = "标的物规格/型号") @Column(columnDefinition = "VARCHAR(200) comment '标的物规格/型号'") private String specification; @Schema(description = "计量单位(个/台/吨/项/套等)") @Column(columnDefinition = "VARCHAR(20) comment '计量单位'") private String unit; @Schema(description = "单价") @Column(columnDefinition = "decimal(10,2) comment '单价'") private BigDecimal unitPrice; }