package com.ruoyi.postCheck.domain;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

import com.ruoyi.postCheck.domain.tools.PostAssessmentRatingOtherInfoDept;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
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_other_info
 *
 * @author csg
 * @date 2024-01-01
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(value = "打分表明细(职能互评生产日常)对象")
@TableName("post_assessment_rating_other_info") // 数据库表名
@AllArgsConstructor
@NoArgsConstructor
public class    PostAssessmentRatingOtherInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    private Long id;

    @ApiModelProperty("打分表ID")
    @TableField(value = "rating_other_id")
    @Excel(name = "打分表ID")
    private Long ratingOtherId;

    @ApiModelProperty("评分分类/项目/专业：职责类别：1-业务职责；2-党建及党风廉政；3-安全环保职责；4-合规与保密职责；5-任职资格与能力素质要求；6-岗位责任制文件完整性与适宜性；10-工作态度；11-部门协作；12-廉洁从业；13-主要工作完成情况；20-HSE；21-生产；22-设备；")
    @TableField(value = "duty_type")
    @Excel(name = "评分分类/项目/专业：职责类别：1-业务职责；2-党建及党风廉政；3-安全环保职责；4-合规与保密职责；5-任职资格与能力素质要求；6-岗位责任制文件完整性与适宜性；10-工作态度；11-部门协作；12-廉洁从业；13-主要工作完成情况；20-HSE；21-生产；22-设备；")
    private Integer dutyType;

    @ApiModelProperty("分值/权重；")
    @TableField(value = "score_weight")
    @Excel(name = "分值/权重；", readConverterExp = "当=前考核规则的分和权重镜像到这里")
    private BigDecimal scoreWeight;

    @ApiModelProperty("考核规则/评分标准")
    @TableField(value = "rule")
    @Excel(name = "考核规则/评分标准", readConverterExp = "岗=检和职能部门时有值")
    private String rule;

    @ApiModelProperty("被评分部门ID")
    @TableField(value = "by_dept_id")
    @Excel(name = "被评分部门ID")
    private Long byDeptId;

    @ApiModelProperty("被评分部门得分")
    @TableField(value = "by_dept_score")
    @Excel(name = "被评分部门得分")
    private BigDecimal byDeptScore;

    @ApiModelProperty("改进建议")
    @TableField(value = "improvement_suggestions")
    @Excel(name = "改进建议")
    private String improvementSuggestions;

    @ApiModelProperty("创建者用户ID")
    @TableField(value = "create_user_id")
    @Excel(name = "创建者用户ID")
    private Long createUserId;


    @ApiModelProperty("打分表明细里面放的为各个部门的评分结果")
    @TableField(exist = false)
    private List<PostAssessmentRatingOtherInfoDept> children;

}
