package com.lz.modules.flow.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.lz.modules.app.dto.StaffSimpleDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
* <p>
* </p>*考核模板流程记录表
* @author quyixiao
* @since 2020-10-21
*/

@Data
@ApiModel(value = "考核模板流程记录表SimpleDto")
public class FlowChartDetailRecordSimpleDto implements java.io.Serializable {
    //
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "是否删除0或者不传，不删除，1删除", name = "isDelete")
    private Integer isDelete;
    @ApiModelProperty(value = "人员集合，如果人员中途离职，第二次返回会自动去掉", name = "staffs")
    private List<StaffSimpleDto> staffs;
    //-1考核人员自己，0人员id，1一级主管，2二级主管....
    @ApiModelProperty(value = "-1考核人员自己，0人员id，1一级主管，2二级主管....", name = "optType")
    private Integer optType;
    //role id集合，逗号隔开
    @ApiModelProperty(value = "role id集合，逗号隔开", name = "roleIds")
    private String roleIds;
    //步骤类型0：依次，1或签（同时通知，一人通过或拒绝即可），2会签（同时通知，所有人同意才可以）
    @ApiModelProperty(value = "步骤类型0：依次，1或签（同时通知，一人通过或拒绝即可），2会签（同时通知，所有人同意才可以）", name = "stepType")
    private Integer stepType;

    //权重，评分时所占权重
    @ApiModelProperty(value = "权重，评分时所占权重", name = "weight")
    private BigDecimal weight;

    /**
     *  
     * @return
     */
    public Long getId() {
        return id;
    }
    /**
     *  
     * @param id
     */
    public void setId(Long id) {
        this.id = id;
    }




    /**
     * -1考核人员自己，0人员id，1一级主管，2二级主管.... 
     * @return
     */
    public Integer getOptType() {
        return optType;
    }
    /**
     * -1考核人员自己，0人员id，1一级主管，2二级主管.... 
     * @param optType
     */
    public void setOptType(Integer optType) {
        this.optType = optType;
    }

    /**
     * role id集合，逗号隔开 
     * @return
     */
    public String getRoleIds() {
        return roleIds;
    }
    /**
     * role id集合，逗号隔开 
     * @param roleIds
     */
    public void setRoleIds(String roleIds) {
        this.roleIds = roleIds;
    }

    /**
     * 步骤类型0：依次，1或签（同时通知，一人通过或拒绝即可），2会签（同时通知，所有人同意才可以） 
     * @return
     */
    public Integer getStepType() {
        return stepType;
    }
    /**
     * 步骤类型0：依次，1或签（同时通知，一人通过或拒绝即可），2会签（同时通知，所有人同意才可以） 
     * @param stepType
     */
    public void setStepType(Integer stepType) {
        this.stepType = stepType;
    }



    @Override
    public String toString() {
        return "FlowChartDetailRecord{" +
                ",id=" + id +
                ",optType=" + optType +
                ",roleIds=" + roleIds +
                ",stepType=" + stepType +
                "}";
    }
}