package com.muchinfo.mtp3pojos.entity;

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.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 履约违约申请表 - 导历史
 * </p>
 *
 * @author XKF
 * @since 2024-11-21
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("PERFORMANCEBREACHAPPLY")
@ApiModel(value="Performancebreachapply对象", description="履约违约申请表 - 导历史")
public class Performancebreachapply extends Model<Performancebreachapply> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "违约申请ID(132+Unix秒时间戳(10位)+xxxxxx)")
    private Long breachapplyid;

    @ApiModelProperty(value = "履约计划ID")
    @TableField("PLANID")
    private Long planid;

    @ApiModelProperty(value = "违约方 - 1:买方 2:卖方")
    @TableField("BREACHTYPE")
    private Integer breachtype;

    @ApiModelProperty(value = "违约状态 - 1:待审核 2:审核通过 3:审核拒绝")
    @TableField("BREACHSTATUS")
    private Integer breachstatus;

    @ApiModelProperty(value = "违约申请时间")
    @TableField("BREACHAPPLYTIME")
    private Date breachapplytime;

    @ApiModelProperty(value = "违约申请人")
    @TableField("APPLICANT")
    private Long applicant;

    @ApiModelProperty(value = "申请备注")
    @TableField("APPLYREMARK")
    private String applyremark;

    @ApiModelProperty(value = "审核时间")
    @TableField("AUDITTIME")
    private Date audittime;

    @ApiModelProperty(value = "审核人")
    @TableField("AUDITOR")
    private Long auditor;

    @ApiModelProperty(value = "审核备注")
    @TableField("AUDITREMARK")
    private String auditremark;

    @ApiModelProperty(value = "申请方 - 1:买方 2:卖方")
    @TableField("APPLYTYPE")
    private Integer applytype;

    @ApiModelProperty(value = "附件")
    @TableField("ATTACHMENT")
    private String attachment;


    @Override
    public Serializable pkVal() {
        return this.breachapplyid;
    }

}
