package com.steerinfo.ftp.securitytype.model;

import com.steerinfo.ems.Utils.TreePO;
import com.steerinfo.framework.model.IBasePO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.util.Date;
import java.util.List;

@ApiModel(value="安全信息类别表")
public class SecurityType implements IBasePO<String>, TreePO<String, String, SecurityType> {
    /**
     * 主键(ID,VARCHAR,200)
     */
    @ApiModelProperty(value="主键",required=true)
    private String id;

    /**
     * 信息类别(SECURITY_TYPE,VARCHAR,100)
     */
    @ApiModelProperty(value="信息类别",required=false)
    private String securityType;

    /**
     * 名称(SECURITY_NAME,VARCHAR,10)
     */
    @ApiModelProperty(value="名称",required=false)
    private String securityName;

    /**
     * 安全信息(SECURITY_INFO,VARCHAR,10)
     */
    @ApiModelProperty(value="安全信息",required=false)
    private String securityInfo;

    /**
     * 序号(SEQNO,DECIMAL,10)
     */
    @ApiModelProperty(value="序号",required=false)
    private Long seqno;

    /**
     * 上层节点(SECURITY_PARENTID,VARCHAR,200)
     */
    @ApiModelProperty(value="上层节点",required=false)
    private String securityParentid;

    /**
     * 级别(SECURITY_NODE,VARCHAR,10)
     */
    @ApiModelProperty(value="级别",required=false)
    private String securityNode;

    /**
     * 文件路径(SECURITY_UPLOAD_URL,VARCHAR,100)
     */
    @ApiModelProperty(value="文件路径",required=false)
    private String securityUploadUrl;

    /**
     * 创建人(CREATE_MAN,VARCHAR,100)
     */
    @ApiModelProperty(value="创建人",required=false)
    private String createMan;

    /**
     * 创建时间(CREATE_TIME,TIMESTAMP,7)
     */
    @ApiModelProperty(value="创建时间",required=false)
    private Date createTime;

    /**
     * 修改人(UPDATE_MAN,VARCHAR,100)
     */
    @ApiModelProperty(value="修改人",required=false)
    private String updateMan;

    /**
     * 修改时间(UPDATE_TIME,VARCHAR,100)
     */
    @ApiModelProperty(value="修改时间",required=false)
    private Date updateTime;

    private static final long serialVersionUID = 1L;

    private List<SecurityType> Children;

    @Override
    public List<SecurityType> getChildren() {
        return Children;
    }

    @Override
    public void setChildren(List<SecurityType> children) {
        this.Children = children;
    }

    @Override
    public String getCode(){return id;}

    @Override
    public void  setCode(String id){this.id = id == null ? null : id.trim();}

    @Override
    public String getParentId() {
        return securityParentid;
    }

    @Override
    public void setParentId(String securityParentid) {
        this.securityParentid = securityParentid == null ? null : securityParentid.trim();
    }

    @Override
    public String getId() {
        return id;
    }

    @Override
    public void setId(String id) {
        this.id = id == null ? null : id.trim();
    }

    public String getSecurityType() {
        return securityType;
    }

    public void setSecurityType(String securityType) {
        this.securityType = securityType == null ? null : securityType.trim();
    }

    public String getSecurityName() {
        return securityName;
    }

    public void setSecurityName(String securityName) {
        this.securityName = securityName == null ? null : securityName.trim();
    }

    public String getSecurityInfo() {
        return securityInfo;
    }

    public void setSecurityInfo(String securityInfo) {
        this.securityInfo = securityInfo == null ? null : securityInfo.trim();
    }

    public Long getSeqno() {
        return seqno;
    }

    public void setSeqno(Long seqno) {
        this.seqno = seqno;
    }

    public String getSecurityParentid() {
        return securityParentid;
    }

    public void setSecurityParentid(String securityParentid) {
        this.securityParentid = securityParentid == null ? null : securityParentid.trim();
    }

    public String getSecurityNode() {
        return securityNode;
    }

    public void setSecurityNode(String securityNode) {
        this.securityNode = securityNode == null ? null : securityNode.trim();
    }

    public String getSecurityUploadUrl() {
        return securityUploadUrl;
    }

    public void setSecurityUploadUrl(String securityUploadUrl) {
        this.securityUploadUrl = securityUploadUrl == null ? null : securityUploadUrl.trim();
    }

    public String getCreateMan() {
        return createMan;
    }

    public void setCreateMan(String createMan) {
        this.createMan = createMan == null ? null : createMan.trim();
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getUpdateMan() {
        return updateMan;
    }

    public void setUpdateMan(String updateMan) {
        this.updateMan = updateMan == null ? null : updateMan.trim();
    }

    public Date getUpdateTime() { return updateTime; }

    public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", securityType=").append(securityType);
        sb.append(", securityName=").append(securityName);
        sb.append(", securityInfo=").append(securityInfo);
        sb.append(", seqno=").append(seqno);
        sb.append(", securityParentid=").append(securityParentid);
        sb.append(", securityNode=").append(securityNode);
        sb.append(", securityUploadUrl=").append(securityUploadUrl);
        sb.append(", createMan=").append(createMan);
        sb.append(", createTime=").append(createTime);
        sb.append(", updateMan=").append(updateMan);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}