package com.ruoyi.postCheck.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 考核评比对象 post_assessment_rating
 *
 * @author csg
 * @date 2023-12-21
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(value = "考核评比对象")
@TableName("post_assessment_rating") // 数据库表名
public class PostAssessmentRating extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    private Long id;

    @ApiModelProperty("类型：1-职能；2-生产；")
    @TableField(value = "type")
    @Excel(name = "类型：1-职能；2-生产；")
    private Integer type;

    @ApiModelProperty("部门ID")
    @TableField(value = "dept_id")
    @Excel(name = "部门ID")
    private Long deptId;
    @TableField(exist = false)
    private String deptIdStr;

    @ApiModelProperty("岗位名称")
    @TableField(value = "post_id")
    @Excel(name = "岗位名称")
    private String postId;

    @ApiModelProperty("专业或组别")
    @TableField(value = "major_or_group")
    @Excel(name = "专业或组别")
    private String majorOrGroup;

    @ApiModelProperty("计划id")
    @TableField(value = "plan_id")
    @Excel(name = "计划id")
    private Long planId;

    @ApiModelProperty("负责人ID")
    @TableField(value = "head_user_id")
    @Excel(name = "负责人ID")
    private Long headUserId;

    @ApiModelProperty("完整性问题数量-总数")
    @TableField(value = "integrity_issues_total")
    @Excel(name = "完整性问题数量-总数")
    private Integer integrityIssuesTotal;

    @ApiModelProperty("完整性问题数量-已整改")
    @TableField(value = "integrity_issues_resolved")
    @Excel(name = "完整性问题数量-已整改")
    private Integer integrityIssuesResolved;

    @ApiModelProperty("有效性问题数量-总数")
    @TableField(value = "effectiveness_issues_total")
    @Excel(name = "有效性问题数量-总数")
    private Integer effectivenessIssuesTotal;

    @ApiModelProperty("有效性问题数量-已整改")
    @TableField(value = "effectiveness_issues_resolved")
    @Excel(name = "有效性问题数量-已整改")
    private Integer effectivenessIssuesResolved;

    @ApiModelProperty("适宜性问题数量-总数")
    @TableField(value = "suitability_issues_total")
    @Excel(name = "适宜性问题数量-总数")
    private Integer suitabilityIssuesTotal;

    @ApiModelProperty("适宜性问题数量-已整改")
    @TableField(value = "suitability_issues_resolved")
    @Excel(name = "适宜性问题数量-已整改")
    private Integer suitabilityIssuesResolved;

    @ApiModelProperty("互评得分")
    @TableField(value = "peer_evaluation_score")
    @Excel(name = "互评得分")
    private BigDecimal peerEvaluationScore;

    @ApiModelProperty("日常得分")
    @TableField(value = "daily_score")
    @Excel(name = "日常得分")
    private BigDecimal dailyScore;

    @ApiModelProperty("部门得分")
    @TableField(value = "department_score")
    @Excel(name = "部门得分")
    private BigDecimal departmentScore;

    @ApiModelProperty("岗位得分")
    @TableField(value = "position_score")
    @Excel(name = "岗位得分")
    private BigDecimal positionScore;

    @ApiModelProperty("评分时间")
    @TableField(value = "rating_time")
    @Excel(name = "评分时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date ratingTime;

    @TableField(value = "plan_start_time")
    @Excel(name = "评分时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String planStartTime;

    @TableField(value = "plan_end_time")
    @Excel(name = "评分时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String planEndTime;
}
