/*
 * Author: wangjian
 * 生成entity
 */
package com.tofly.pojo.car;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;


/**
 * 车辆维修保养记录表
 *
 * @author JF
 * @date Mon Nov 25 00:00:00 CST 2024
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value="TF_CAR_MAINTENANCE",resultMap = "tfCarMaintenanceMap")
@KeySequence("TF_CAR_MAINTENANCE")
@ApiModel
public class TfCarMaintenance extends Model<TfCarMaintenance> {
    private static final long serialVersionUID = 1L;

        /**
     * 主键ID
     */
        @TableId(value = "ID",type= IdType.ASSIGN_ID)
            @ApiModelProperty(value = "主键ID")
                private Long id;
                /**
     * 车牌号
     */
            @ApiModelProperty(value = "车牌号")
                private String carNumber;
                /**
     * 维保类型
     */
            @ApiModelProperty(value = "维保类型")
                private String type;
                /**
     * 维保时间
     */
            @ApiModelProperty(value = "维保时间")
        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
                private Date maintenanceTime;
                /**
     * 维保内容
     */
            @ApiModelProperty(value = "维保内容")
                private String content;
                /**
     * 申请部门
     */
            @ApiModelProperty(value = "申请部门")
                private Long applyDept;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String applyDeptName;
                /**
     * 申请人员
     */
            @ApiModelProperty(value = "申请人员")
                private Long applyUser;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String applyUserName;
                /**
     * 申请时间
     */
            @ApiModelProperty(value = "申请时间")
        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
                private Date applyTime;
                /**
     * 一级审核部门
     */
            @ApiModelProperty(value = "一级审核部门")
                private Long oneAuditDept;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String oneAuditDeptName;
                /**
     * 一级审核人员
     */
            @ApiModelProperty(value = "一级审核人员")
                private Long oneAuditUser;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String oneAuditUserName;
                /**
     * 一级审核时间
     */
            @ApiModelProperty(value = "一级审核时间")
        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
                private Date oneAuditTime;
                /**
     * 一级审核内容
     */
            @ApiModelProperty(value = "一级审核内容")
                private String oneAuditContent;
                /**
     * 二级审核部门
     */
            @ApiModelProperty(value = "二级审核部门")
                private Long twoAuditDept;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String twoAuditDeptName;
                /**
     * 二级审核人员
     */
            @ApiModelProperty(value = "二级审核人员")
                private Long twoAuditUser;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String twoAuditUserName;
                /**
     * 二级审核时间
     */
            @ApiModelProperty(value = "二级审核时间")
        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
                private Date twoAuditTime;
                /**
     * 二级审核内容
     */
            @ApiModelProperty(value = "二级审核内容")
                private String twoAuditContent;
                /**
     * 审核状态（0申请;1一级审核;2已审核通过;3一级审核驳回;4二级审核通过;5二级审核驳回）
     */
            @ApiModelProperty(value = "审核状态（0申请;1一级审核;2已审核通过;3一级审核驳回;4二级审核通过;5二级审核驳回）")
                private String auditStatus;
            @ApiModelProperty("审核状态筛选（多个用,分隔）")
            @TableField(exist = false)
                private String auditStatusMore;
                /**
     * 附件
     */
            @ApiModelProperty(value = "附件")
                private String annex;
                /**
     * 备注
     */
            @ApiModelProperty(value = "备注")
                private String remark;
                /**
     * 创建时间
     */
            @ApiModelProperty(value = "创建时间")
        @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
            @TableField(value = "CREATE_TIME",fill = FieldFill.INSERT)
            private Date createTime;
                /**
     * 创建人
     */
            @ApiModelProperty(value = "创建人")
            @TableField(value = "CREATE_USER",fill = FieldFill.INSERT)
            private Long createUser;
            @ApiModelProperty(hidden = true)
            @TableField(exist = false)
    private String createUserName;
        
}
