package com.ruoyi.purchase.pojo; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Getter; import lombok.Setter; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.List; /** * 采购申请单对象 purchase_application */ @Getter @Setter @TableName("purchase_application") @Schema(name = "PurchaseApplication对象", description = "采购申请单") public class PurchaseApplication implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) private Long id; @Schema(description = "申请单号") private String applicationNo; @Schema(description = "供应商id") private Long supplierId; @Schema(description = "供应商名称") private String supplierName; @Schema(description = "项目名称") private String projectName; @Schema(description = "销售合同号") private String salesContractNo; @Schema(description = "关联销售台账主表主键") private Long salesLedgerId; @Schema(description = "申请人id") private Long applicantId; @Schema(description = "申请人姓名") private String applicantName; @Schema(description = "申请日期") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate applyDate; @Schema(description = "期望到货日期") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate expectedArrivalDate; @Schema(description = "申请金额(含税总价)") private BigDecimal contractAmount; @Schema(description = "付款方式") private String paymentMethod; @Schema(description = "备注") private String remarks; @Schema(description = "状态 0草稿 1已生成订单") private Integer status; @Schema(description = "转订单后生成的采购台账id") private Long purchaseLedgerId; @Schema(description = "转订单时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime convertTime; @Schema(description = "采购合同号") private String purchaseContractNumber; @Schema(description = "录入人id") private Long recorderId; @Schema(description = "录入日期") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate entryDate; @Schema(description = "签订日期") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate executionDate; @Schema(description = "最佳到站日期") @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate bestArrivalDate; @Schema(description = "申请提交时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime applicationSubmitTime; @Schema(description = "采购类别:客存、代储、采购入库、采购直销") private String purchaseCategory; @Schema(description = "物流方式:厂家配送、委外物流、客户自提") private String logisticsMethod; @Schema(description = "提货方式:暂不提货、提货") private String pickupMethod; @Schema(description = "采购油库id") private Long oilDepotId; @Schema(description = "客户名称") private String customerName; @Schema(description = "采购数量(吨)") private Integer purchaseQuantity; @Schema(description = "采购申请订单状态:已申请,未装车 / 以出厂,未入库 / 已入库") private String purchaseOrderStatus; @TableField(fill = FieldFill.INSERT) private Long tenantId; @TableField(fill = FieldFill.INSERT) private Long deptId; @TableField(fill = FieldFill.INSERT) private Integer createUser; @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; @TableField(fill = FieldFill.INSERT_UPDATE) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updateTime; @TableField(exist = false) @Schema(description = "采购申请产品明细") private List productData; }