package com.ruoyi.sales.pojo; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.Date; import java.util.List; @Data @TableName("shipment_approval") public class ShipmentApproval { @TableId(type = IdType.AUTO) private Long id; @ApiModelProperty(value = "发货信息id") private Long shippingInfoId; @ApiModelProperty(value = "销售台账id") private Long salesLedgerId; @ApiModelProperty(value = "销售报价产品表id") private Long salesLedgerProductId; @ApiModelProperty(value = "申请部门id") private Long approveDeptId; @ApiModelProperty(value = "申请部门名称") @Excel(name = "申请部门") private String approveDeptName; @ApiModelProperty(value = "审批用户id") private Integer approveUserId; @ApiModelProperty(value = "审批用户名称") @Excel(name = "审批用户") private String approveUserNames; /** * 审批状态 */ @ApiModelProperty(value = "审批状态:0未出库,1已出库,2待审核,3审核完成,4审核失败") @Excel(name = "审批状态", readConverterExp = "0=未出库,1=已出库,2=待审核,3=审核完成,4=审核失败") private Integer approveStatus; @ApiModelProperty(value = "创建时间") @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; @ApiModelProperty(value = "修改时间") @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; @ApiModelProperty(value = "创建用户") @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Integer createUser; @ApiModelProperty(value = "修改用户") @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; @ApiModelProperty(value = "租户ID") @TableField(fill = FieldFill.INSERT) private Long tenantId; @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") @Excel(name = "发货日期", width = 30, dateFormat = "yyyy-MM-dd") @TableField(exist = false) private Date shippingDate; @Excel(name = "发货车牌号") @TableField(exist = false) private String shippingCarNumber; /** * 预警数量 */ @TableField(exist = false) private BigDecimal warnNum; /** * 产品大类 */ @Excel(name = "产品大类") @TableField(exist = false) private String productCategory; /** * 规格型号 */ @Excel(name = "规格型号") @TableField(exist = false) private String specificationModel; /** * 单位 */ @Excel(name = "单位") @TableField(exist = false) private String unit; /** * 数量 */ @Excel(name = "数量") @TableField(exist = false) private BigDecimal quantity; @Excel(name = "最低库存数量") @TableField(exist = false) private BigDecimal minStock; /** * 税率 */ @Excel(name = "税率") @TableField(exist = false) private BigDecimal taxRate; /** * 含税单价 */ @Excel(name = "含税单价") @TableField(exist = false) private BigDecimal taxInclusiveUnitPrice; /** * 含税总价 */ @Excel(name = "含税总价") @TableField(exist = false) private BigDecimal taxInclusiveTotalPrice; /** * 不含税总价 */ @Excel(name = "不含税总价") @TableField(exist = false) private BigDecimal taxExclusiveTotalPrice; /** * 发票类型 */ @TableField(exist = false) private String invoiceType; /** * 台账类型 1.销售 2,采购 */ @TableField(exist = false) private Integer type; /** * 本次来票数 */ @TableField(exist = false) private BigDecimal ticketsNum; /** * 本次来票金额(元) */ @TableField(exist = false) private BigDecimal ticketsAmount; /** * 未来票数 */ @TableField(exist = false) private BigDecimal futureTickets; /** * 未来票金额(元) */ @TableField(exist = false) private BigDecimal futureTicketsAmount; @ApiModelProperty(value = "开票数") @TableField(exist = false) private BigDecimal invoiceNum; @ApiModelProperty(value = "未开票数") @TableField(exist = false) private BigDecimal noInvoiceNum; @ApiModelProperty(value = "开票金额") @TableField(exist = false) private BigDecimal invoiceAmount; @ApiModelProperty(value = "未开票金额") @TableField(exist = false) private BigDecimal noInvoiceAmount; @ApiModelProperty(value = "本次开票数") @TableField(exist = false) private BigDecimal currentInvoiceNum; @TableField(exist = false) @ApiModelProperty(value = "本次开票金额") private BigDecimal currentInvoiceAmount; /** * 产品id */ @TableField(exist = false) private Long productId; /** * 产品规格id */ @TableField(exist = false) private Long productModelId; @ApiModelProperty(value = "初始未开票数") @TableField(exist = false) private BigDecimal originalNoInvoiceNum; @ApiModelProperty(value = "临时未开票数") @TableField(exist = false) private BigDecimal tempNoInvoiceNum; @ApiModelProperty(value = "临时未开票金额") @TableField(exist = false) private BigDecimal tempnoInvoiceAmount; @ApiModelProperty(value = "临时未来票数") @TableField(exist = false) private BigDecimal tempFutureTickets; @ApiModelProperty(value = "临时未来票金额") @TableField(exist = false) private BigDecimal tempFutureTicketsAmount; @ApiModelProperty("登记人") @TableField(exist = false) private String register; @ApiModelProperty("登记日期") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "登记日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @TableField(exist = false) private LocalDateTime registerDate; /** * 销售合同号 */ @Excel(name = "销售合同号") @TableField(exist = false) private String salesContractNo; /** * 客户合同号 */ @Excel(name = "客户合同号") @TableField(exist = false) private String customerContractNo; /** * 项目名称 */ @Excel(name = "项目名称") @TableField(exist = false) private String projectName; /** * 录入日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") @TableField(exist = false) private Date entryDate; /** * 业务员 */ @Excel(name = "业务员") @TableField(exist = false) private String salesman; @TableField(exist = false) private Long customerId; /** * 客户名称 */ @Excel(name = "客户名称") @TableField(exist = false) private String customerName; /** * 录入人 */ @TableField(exist = false) private String entryPerson; @TableField(exist = false) @ApiModelProperty(value = "录入人") @Excel(name = "录入人") private String entryPersonName; /** * 备注 */ @Excel(name = "备注") @TableField(exist = false) private String remarks; /** * 附件材料,存储文件名等相关信息 */ @TableField(exist = false) private String attachmentMaterials; /** * 合同金额(产品含税总价) */ @Excel(name = "合同金额") @TableField(exist = false) private BigDecimal contractAmount; @TableField(exist = false) @ApiModelProperty(value = "未开票金额(元)") @Excel(name = "未开票金额") private BigDecimal noInvoiceAmountTotal = BigDecimal.ZERO; @ApiModelProperty(value = "签订日期") @TableField(exist = false) private LocalDate executionDate; @TableField(exist = false) @ApiModelProperty(value = "已开票金额(元)") @Excel(name = "已开票金额") private BigDecimal invoiceTotal = BigDecimal.ZERO; @TableField(exist = false) @ApiModelProperty(value = "回款金额") private BigDecimal receiptPaymentAmountTotal = BigDecimal.ZERO; @TableField(exist = false) @ApiModelProperty(value = "待回款金额") private BigDecimal noReceiptAmount = BigDecimal.ZERO; @ApiModelProperty(value = "付款方式") @TableField(exist = false) private String paymentMethod; @TableField(exist = false) @ApiModelProperty(value = "生产状态") private String productionStatus = "未开始"; }