package com.zd.laboratory.domain;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zd.common.core.annotation.Excel;
import com.zd.common.core.web.domain.BaseEntity;

import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * 安全准入资格对象 lab_security_group
 *
 * @author zd
 * @date 2021-08-31
 */
@ApiModel("安全准入资格表")
public class LabSecurityGroup extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @ApiModelProperty(value = "${comment}")
    private Long id;

    /**
     * 关联用户表id
     */
    @ApiModelProperty(value = "关联用户表id")
    @Excel(name = "关联用户表id")
    private Long joinUserId;

    /**
     * 准入资格标题（参照字典表）
     */
    @ApiModelProperty(value = "准入资格标题（参照字典表）")
    @Excel(name = "准入资格标题", readConverterExp = "参=照字典表")
    private Integer groupTitle;

    /**
     * 准入资格url地址
     */
    @ApiModelProperty(value = "准入资格url地址")
    @Excel(name = "准入资格url地址")
    private String groupUrl;

    /**
     * 状态（1是正常，0是删除）参考字典表
     */
    @ApiModelProperty(value = "状态（1是正常，0是删除）参考字典表")
    @Excel(name = "状态", readConverterExp = "1=是正常，0是删除")
    private String status;

    /**
     * 凭证名称
     */
    @NotNull(message = "凭证名称不能为空！")
    private String configureName;

    /**
     * 有效期时间
     */
    @NotNull(message = "有效期不能为空！")
    private Long effectiveTime;

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setJoinUserId(Long joinUserId) {
        this.joinUserId = joinUserId;
    }

    public Long getJoinUserId() {
        return joinUserId;
    }

    public void setGroupTitle(Integer groupTitle) {
        this.groupTitle = groupTitle;
    }

    public Integer getGroupTitle() {
        return groupTitle;
    }

    public void setGroupUrl(String groupUrl) {
        this.groupUrl = groupUrl;
    }

    public String getGroupUrl() {
        return groupUrl;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }

    public String getConfigureName() {
        return configureName;
    }

    public void setConfigureName(String configureName) {
        this.configureName = configureName;
    }

    public Long getEffectiveTime() {
        return effectiveTime;
    }

    public void setEffectiveTime(Long effectiveTime) {
        this.effectiveTime = effectiveTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("joinUserId", getJoinUserId())
                .append("groupTitle", getGroupTitle())
                .append("groupUrl", getGroupUrl())
                .append("remark", getRemark())
                .append("status", getStatus())
                .append("cofigureName", getConfigureName())
                .append("effectiveTime", getEffectiveTime())
                .toString();
    }
}
