package com.scm.contract.model.cancel;

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 com.set.direwolf.core.mybatis.BaseEntity;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;

/**
 * @author zuo
 * @date 2024/7/25 12:00
 */
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName(value = "tag_cancel_record")
@Data
public class TagCancel extends BaseEntity<TagCancel, String> {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId
    private String id;

    /**
     * 标签类型Id
     */
    @TableField(value = "`tagTypeId`")
    private String tagTypeId;

    /**
     * 作废数量
     */
    @TableField(value = "`number`")
    private Long number;

    /**
     * 操作员userId
     */
    @TableField(value = "`operatorId`")
    private String operatorId;

    /**
     * 操作员名子
     */
    @TableField(value = "`operatorName`")
    private String operatorName;

    /**
     * 作废状态0输入作废 1重打印作废
     */
    @TableField(value = "`status`")
    private String status;

    /**
     * 重打订单id
     */
    @TableField(value = "`reprintCodeId`")
    private String reprintCodeId;

    /**
     * 创建时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy/MM/dd HH:mm:ss")
    @TableField(value = "`createTime`")
    private Date cTime;

    /**
     * 修改时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy/MM/dd HH:mm:ss")
    @TableField(value = "`updateTime`")
    private Date updateTime;

    /**
     * 标签类型Id
     */
    @TableField(exist = false)
    private String tagTypeName;

    @JsonFormat(timezone = "GMT+8", pattern = "yyyy/MM/dd HH:mm:ss")
    @TableField(exist = false)
    private Date beginTime;

    @JsonFormat(timezone = "GMT+8", pattern = "yyyy/MM/dd HH:mm:ss")
    @TableField(exist = false)
    private Date endTime;

    @TableField(exist = false)
    private List<List<String>> order;

    public TagCancel() {
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getTagTypeId() {
        return tagTypeId;
    }

    public void setTagTypeId(String tagTypeId) {
        this.tagTypeId = tagTypeId;
    }

    public Long getNumber() {
        return number;
    }

    public void setNumber(Long number) {
        this.number = number;
    }

    public String getOperatorId() {
        return operatorId;
    }

    public void setOperatorId(String operatorId) {
        this.operatorId = operatorId;
    }

    public String getOperatorName() {
        return operatorName;
    }

    public void setOperatorName(String operatorName) {
        this.operatorName = operatorName;
    }

    public Date getcTime() {
        return cTime;
    }

    public void setcTime(Date cTime) {
        this.cTime = cTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getTagTypeName() {
        return tagTypeName;
    }

    public void setTagTypeName(String tagTypeName) {
        this.tagTypeName = tagTypeName;
    }

    public Date getBeginTime() {
        return beginTime;
    }

    public void setBeginTime(Date beginTime) {
        this.beginTime = beginTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public List<List<String>> getOrder() {
        return order;
    }

    public void setOrder(List<List<String>> order) {
        this.order = order;
    }
}
