/*
 * This file is generated by jOOQ.
 */
package jj.tech.paolu.repository.jooq.tables.pojos;


import java.io.Serializable;


/**
 * This class is generated by jOOQ.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
public class SysUrls implements Serializable {

    private static final long serialVersionUID = 1L;

    private String id;
    private Integer pid;
    private Integer types;
    private Integer level;
    private String url;
    private String name;
    private String method;

    public SysUrls() {}

    public SysUrls(SysUrls value) {
        this.id = value.id;
        this.pid = value.pid;
        this.types = value.types;
        this.level = value.level;
        this.url = value.url;
        this.name = value.name;
        this.method = value.method;
    }

    public SysUrls(
        String id,
        Integer pid,
        Integer types,
        Integer level,
        String url,
        String name,
        String method
    ) {
        this.id = id;
        this.pid = pid;
        this.types = types;
        this.level = level;
        this.url = url;
        this.name = name;
        this.method = method;
    }

    /**
     * Getter for <code>yx.sys_urls.id</code>.
     */
    public String getId() {
        return this.id;
    }

    /**
     * Setter for <code>yx.sys_urls.id</code>.
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     * Getter for <code>yx.sys_urls.pid</code>. 父类id
     */
    public Integer getPid() {
        return this.pid;
    }

    /**
     * Setter for <code>yx.sys_urls.pid</code>. 父类id
     */
    public void setPid(Integer pid) {
        this.pid = pid;
    }

    /**
     * Getter for <code>yx.sys_urls.types</code>. 1:url,2:菜单
     */
    public Integer getTypes() {
        return this.types;
    }

    /**
     * Setter for <code>yx.sys_urls.types</code>. 1:url,2:菜单
     */
    public void setTypes(Integer types) {
        this.types = types;
    }

    /**
     * Getter for <code>yx.sys_urls.level</code>. 0:url,1:一级菜单, 2:二级菜单
     */
    public Integer getLevel() {
        return this.level;
    }

    /**
     * Setter for <code>yx.sys_urls.level</code>. 0:url,1:一级菜单, 2:二级菜单
     */
    public void setLevel(Integer level) {
        this.level = level;
    }

    /**
     * Getter for <code>yx.sys_urls.url</code>.
     */
    public String getUrl() {
        return this.url;
    }

    /**
     * Setter for <code>yx.sys_urls.url</code>.
     */
    public void setUrl(String url) {
        this.url = url;
    }

    /**
     * Getter for <code>yx.sys_urls.name</code>.
     */
    public String getName() {
        return this.name;
    }

    /**
     * Setter for <code>yx.sys_urls.name</code>.
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * Getter for <code>yx.sys_urls.method</code>.
     */
    public String getMethod() {
        return this.method;
    }

    /**
     * Setter for <code>yx.sys_urls.method</code>.
     */
    public void setMethod(String method) {
        this.method = method;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        final SysUrls other = (SysUrls) obj;
        if (this.id == null) {
            if (other.id != null)
                return false;
        }
        else if (!this.id.equals(other.id))
            return false;
        if (this.pid == null) {
            if (other.pid != null)
                return false;
        }
        else if (!this.pid.equals(other.pid))
            return false;
        if (this.types == null) {
            if (other.types != null)
                return false;
        }
        else if (!this.types.equals(other.types))
            return false;
        if (this.level == null) {
            if (other.level != null)
                return false;
        }
        else if (!this.level.equals(other.level))
            return false;
        if (this.url == null) {
            if (other.url != null)
                return false;
        }
        else if (!this.url.equals(other.url))
            return false;
        if (this.name == null) {
            if (other.name != null)
                return false;
        }
        else if (!this.name.equals(other.name))
            return false;
        if (this.method == null) {
            if (other.method != null)
                return false;
        }
        else if (!this.method.equals(other.method))
            return false;
        return true;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((this.id == null) ? 0 : this.id.hashCode());
        result = prime * result + ((this.pid == null) ? 0 : this.pid.hashCode());
        result = prime * result + ((this.types == null) ? 0 : this.types.hashCode());
        result = prime * result + ((this.level == null) ? 0 : this.level.hashCode());
        result = prime * result + ((this.url == null) ? 0 : this.url.hashCode());
        result = prime * result + ((this.name == null) ? 0 : this.name.hashCode());
        result = prime * result + ((this.method == null) ? 0 : this.method.hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder("SysUrls (");

        sb.append(id);
        sb.append(", ").append(pid);
        sb.append(", ").append(types);
        sb.append(", ").append(level);
        sb.append(", ").append(url);
        sb.append(", ").append(name);
        sb.append(", ").append(method);

        sb.append(")");
        return sb.toString();
    }
}
