

package com.lutao.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
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 com.lutao.annotate.Validation;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 问题隐患闭环管理信息
 *
 * @author guoyc
 * @date 2023-07-20 10:57:59
 */
@Data
@TableName("problem_rectification_detail")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "问题隐患闭环管理信息")
public class ProblemRectificationDetail extends Model<ProblemRectificationDetail> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId
    @ApiModelProperty(value="主键")
    private Integer id;

    /**
     * 原始id
     */
    @ApiModelProperty(value="原始id")
    @Validation(message = "problem_rectification_detail表{id}不能为空")
    private String originId;

    @ApiModelProperty(value = "安全风险评估信息id")
    @Validation(message = "problem_rectification_detail表{sra_id}不能为空")
    private String sraId;

    @ApiModelProperty(value = "安全风险评估类型编码")
    @Validation(message = "problem_rectification_detail表{risk_assessment_code}不能为空")
    private String riskAssessmentCode;

    /**
     * 设施名称
     */
    @ApiModelProperty(value="设施名称")
    private String facilityName;

    @ApiModelProperty(value = "设施编码")
    private String facilityCode;

    @ApiModelProperty(value = "安全风险评估表名称")
    @Validation(message = "problem_rectification_detail表{risk_assessment_name}不能为空")
    private String riskAssessmentName;

    /**
     * 检查内容
     */
    @ApiModelProperty(value="检查内容")
    @Validation(message = "problem_rectification_detail表{inspect_content}不能为空")
    private String inspectContent;

    /**
     * 检查方式
     */
    @ApiModelProperty(value="检查方式")
    @Validation(message = "problem_rectification_detail表{inspect_mode}不能为空")
    private String inspectMode;

    /**
     * 检查依据
     */
    @ApiModelProperty(value="检查依据")
    @Validation(message = "problem_rectification_detail表{inspect_basis}不能为空")
    private String inspectBasis;

    /**
     * 检查对象
     */
    @ApiModelProperty(value="检查对象")
    @Validation(message = "problem_rectification_detail表{inspect_object}不能为空")
    private String inspectObject;

    /**
     * 扣分数
     */
    @ApiModelProperty(value="扣分数")
    @Validation(message = "problem_rectification_detail表{deduction}不能为空")
    private Integer deduction;

    /**
     * 扣分说明
     */
    @ApiModelProperty(value="扣分说明")
    @Validation(message = "problem_rectification_detail表{deduction_description}不能为空")
    private String deductionDescription;

    /**
     * 评分人
     */
    @ApiModelProperty(value="评分人")
    @Validation(message = "problem_rectification_detail表{pater}不能为空")
    private String pater;

    /**
     * 评分时间
     */
    @ApiModelProperty(value="评分时间")
    @Validation(message = "problem_rectification_detail表{scoring_time}不能为空")
    private LocalDateTime scoringTime;

    @ApiModelProperty(value = "整治措施")
    private String treatmentMeasures;


    /**
     * 问题隐患项
     */
    @ApiModelProperty(value="问题隐患项")
    @Validation(message = "problem_rectification_detail表{hidden_problems}不能为空")
    private String hiddenProblems;

    /**
     * 问题隐患整治状态;001待整治、002已整治
     */
    @ApiModelProperty(value="问题隐患整治状态;001待整治、002已整治")
    @Validation(message = "problem_rectification_detail表{hidden_problems_state}不能为空")
    private String hiddenProblemsState;

    /**
     * 系统平台id
     */
    @ApiModelProperty(value="系统平台id")
    private String pfId;

    /**
     * 应用id
     */
    @ApiModelProperty(value="应用id")
    private String appId;

    /**
     * 平台编码
     */
    @ApiModelProperty(value="平台编码")
    @Validation(message = "problem_rectification_detail表{platform_code}不能为空")
    private String platformCode;

    /**
     * 平台名称
     */
    @ApiModelProperty(value="平台名称")
    private String platformName;

    /**
     * 平台id
     */
    @ApiModelProperty(value="平台id")
    private String platformId;

    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间")
    private LocalDateTime createDate;

    /**
     * 创建人姓名
     */
    @ApiModelProperty(value="创建人姓名")
    private String createBy;

    /**
     * 修改时间
     */
    @ApiModelProperty(value="修改时间")
    private LocalDateTime updateDate;

    /**
     * 修改人
     */
    @ApiModelProperty(value="修改人")
    private String updateBy;

    @ApiModelProperty(value = "数据收集时间")
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    @ApiModelProperty(value = "数据更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
}
