package pwc.taxtech.atms.dto.user;

/**
 * @see PwC.Tax.Tech.Atms.Application.Dto\TaxAdminDto\UserRoleDimensionValueDto.cs
 */
public class UserRoleDimensionValueDto {

    // 主键
    private String ID;

    // 纬度值ID
    private String dimensionValueID;

    // 纬度值
    private String dimensionValueName;

    private String dimensionID;

    // 维度名称
    private String dimensionName;

    private String userID;

    // 用户名
    private String userName;

    private String roleID;

    private String roleName;

    private Boolean isAccessible;
    private Boolean isHeritable;

    private Boolean hasOriginalRole;

    private String organizationID;

    private String organizationName;

    // admin VAT ...
    private String serviceTypeName;

    private String serviceTypeID;
    // 特殊角色,公共角色
    private String roleCatetoryName;

    private Boolean isAdd;

    public String getID() {
        return ID;
    }

    public void setID(String iD) {
        ID = iD;
    }

    public String getDimensionValueID() {
        return dimensionValueID;
    }

    public void setDimensionValueID(String dimensionValueID) {
        this.dimensionValueID = dimensionValueID;
    }

    public String getDimensionValueName() {
        return dimensionValueName;
    }

    public void setDimensionValueName(String dimensionValueName) {
        this.dimensionValueName = dimensionValueName;
    }

    public String getDimensionID() {
        return dimensionID;
    }

    public void setDimensionID(String dimensionID) {
        this.dimensionID = dimensionID;
    }

    public String getDimensionName() {
        return dimensionName;
    }

    public void setDimensionName(String dimensionName) {
        this.dimensionName = dimensionName;
    }

    public String getUserID() {
        return userID;
    }

    public void setUserID(String userID) {
        this.userID = userID;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getRoleID() {
        return roleID;
    }

    public void setRoleID(String roleID) {
        this.roleID = roleID;
    }

    public String getRoleName() {
        return roleName;
    }

    public void setRoleName(String roleName) {
        this.roleName = roleName;
    }

    public Boolean getIsAccessible() {
        return isAccessible;
    }

    public void setIsAccessible(Boolean isAccessible) {
        this.isAccessible = isAccessible;
    }

    public Boolean getIsHeritable() {
        return isHeritable;
    }

    public void setIsHeritable(Boolean isHeritable) {
        this.isHeritable = isHeritable;
    }

    public Boolean getHasOriginalRole() {
        return hasOriginalRole;
    }

    public void setHasOriginalRole(Boolean hasOriginalRole) {
        this.hasOriginalRole = hasOriginalRole;
    }

    public String getOrganizationID() {
        return organizationID;
    }

    public void setOrganizationID(String organizationID) {
        this.organizationID = organizationID;
    }

    public String getOrganizationName() {
        return organizationName;
    }

    public void setOrganizationName(String organizationName) {
        this.organizationName = organizationName;
    }

    public String getServiceTypeName() {
        return serviceTypeName;
    }

    public void setServiceTypeName(String serviceTypeName) {
        this.serviceTypeName = serviceTypeName;
    }

    public String getServiceTypeID() {
        return serviceTypeID;
    }

    public void setServiceTypeID(String serviceTypeID) {
        this.serviceTypeID = serviceTypeID;
    }

    public String getRoleCatetoryName() {
        return roleCatetoryName;
    }

    public void setRoleCatetoryName(String roleCatetoryName) {
        this.roleCatetoryName = roleCatetoryName;
    }

    public Boolean getIsAdd() {
        return isAdd;
    }

    public void setIsAdd(Boolean isAdd) {
        this.isAdd = isAdd;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((ID == null) ? 0 : ID.hashCode());
        result = prime * result + ((dimensionID == null) ? 0 : dimensionID.hashCode());
        result = prime * result + ((dimensionName == null) ? 0 : dimensionName.hashCode());
        result = prime * result + ((dimensionValueID == null) ? 0 : dimensionValueID.hashCode());
        result = prime * result + ((dimensionValueName == null) ? 0 : dimensionValueName.hashCode());
        result = prime * result + ((hasOriginalRole == null) ? 0 : hasOriginalRole.hashCode());
        result = prime * result + ((isAccessible == null) ? 0 : isAccessible.hashCode());
        result = prime * result + ((isAdd == null) ? 0 : isAdd.hashCode());
        result = prime * result + ((isHeritable == null) ? 0 : isHeritable.hashCode());
        result = prime * result + ((organizationID == null) ? 0 : organizationID.hashCode());
        result = prime * result + ((organizationName == null) ? 0 : organizationName.hashCode());
        result = prime * result + ((roleCatetoryName == null) ? 0 : roleCatetoryName.hashCode());
        result = prime * result + ((roleID == null) ? 0 : roleID.hashCode());
        result = prime * result + ((roleName == null) ? 0 : roleName.hashCode());
        result = prime * result + ((serviceTypeID == null) ? 0 : serviceTypeID.hashCode());
        result = prime * result + ((serviceTypeName == null) ? 0 : serviceTypeName.hashCode());
        result = prime * result + ((userID == null) ? 0 : userID.hashCode());
        result = prime * result + ((userName == null) ? 0 : userName.hashCode());
        return result;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        UserRoleDimensionValueDto other = (UserRoleDimensionValueDto) obj;
        if (ID == null) {
            if (other.ID != null)
                return false;
        } else if (!ID.equals(other.ID))
            return false;
        if (dimensionID == null) {
            if (other.dimensionID != null)
                return false;
        } else if (!dimensionID.equals(other.dimensionID))
            return false;
        if (dimensionName == null) {
            if (other.dimensionName != null)
                return false;
        } else if (!dimensionName.equals(other.dimensionName))
            return false;
        if (dimensionValueID == null) {
            if (other.dimensionValueID != null)
                return false;
        } else if (!dimensionValueID.equals(other.dimensionValueID))
            return false;
        if (dimensionValueName == null) {
            if (other.dimensionValueName != null)
                return false;
        } else if (!dimensionValueName.equals(other.dimensionValueName))
            return false;
        if (hasOriginalRole == null) {
            if (other.hasOriginalRole != null)
                return false;
        } else if (!hasOriginalRole.equals(other.hasOriginalRole))
            return false;
        if (isAccessible == null) {
            if (other.isAccessible != null)
                return false;
        } else if (!isAccessible.equals(other.isAccessible))
            return false;
        if (isAdd == null) {
            if (other.isAdd != null)
                return false;
        } else if (!isAdd.equals(other.isAdd))
            return false;
        if (isHeritable == null) {
            if (other.isHeritable != null)
                return false;
        } else if (!isHeritable.equals(other.isHeritable))
            return false;
        if (organizationID == null) {
            if (other.organizationID != null)
                return false;
        } else if (!organizationID.equals(other.organizationID))
            return false;
        if (organizationName == null) {
            if (other.organizationName != null)
                return false;
        } else if (!organizationName.equals(other.organizationName))
            return false;
        if (roleCatetoryName == null) {
            if (other.roleCatetoryName != null)
                return false;
        } else if (!roleCatetoryName.equals(other.roleCatetoryName))
            return false;
        if (roleID == null) {
            if (other.roleID != null)
                return false;
        } else if (!roleID.equals(other.roleID))
            return false;
        if (roleName == null) {
            if (other.roleName != null)
                return false;
        } else if (!roleName.equals(other.roleName))
            return false;
        if (serviceTypeID == null) {
            if (other.serviceTypeID != null)
                return false;
        } else if (!serviceTypeID.equals(other.serviceTypeID))
            return false;
        if (serviceTypeName == null) {
            if (other.serviceTypeName != null)
                return false;
        } else if (!serviceTypeName.equals(other.serviceTypeName))
            return false;
        if (userID == null) {
            if (other.userID != null)
                return false;
        } else if (!userID.equals(other.userID))
            return false;
        if (userName == null) {
            if (other.userName != null)
                return false;
        } else if (!userName.equals(other.userName))
            return false;
        return true;
    }

}