package com.sobot.common.login.model;

import java.io.Serializable;
import java.util.List;

/**
 * 登录后的客服信息
 */
public class SobotServiceInfoModel implements Serializable {

    /**
     * 客服id
     */
    private String serviceId;
    /**
     * 客服名字
     */
    private String serviceName;
    /**
     * 角色id
     */
    private String cusRoleId;
    /**
     * 角色名称
     */
    private String cusRoleName;
    /**
     * 0 只用旧console 其他都是新console；
     */
    private int newBossSwitch;
    /**
     * 权限信息
     */
    private List<ServiceFunctionVoModel> functionStr;

    private String serviceLanguage;
    //区域环境（0国内  1国外）
    private int region;


    /**
     * 公司id
     */
    private String companyId;

    /**
     * 1 账号开通v6；其它是v1
     */
    private int callV6Flag;

    /**
     * 语言
     */
    private String language;

    /**
     * 时区
     */
    private String timezone;

    public static final String TIMEZONE = "timezone";

    /**
     * 时区城市
     */
    private String timezoneId;

    public static final String TIMEZONEID = "timezoneId";



    /**
     * 手机号
     */
    private String phoneNo;
    /**
     * 权限 "globalPermissions": ["calldetails-newcustomers", "sw-ccc-thxq-xzkh", "calldetails-editcustomer", "DepartmentalAppealReview", "sw-ccc-thxq-bjkh",
     * "A00008", "calldetails-relatedcustomers", "ChatQualityScore", "237283747", "sw-ccc-thxq-glkh", "calldetails-savesersummary", "CallQualityScore", "allTicket",
     * "sw-ccc-thxq-bcfwzj", "calldetails-newworkorder", "ChatRecheck", "sw-ccc-thxq-xjgd", "mw-ccc-thxq-gdcd", "sw-ccc-thxq-gdcd", "calldetails-recordingandplay",
     * "sw-ccc-thxq-fsdx", "calldetails-recorddownload", "sw-ccc-thxq-lybf", "calldetails-messageplay", "sw-ccc-thxq-lyxz", "mw-ccc-thxq-liuyxz", "sw-ccc-thxq-dhhb",
     * "sw-ccc-thxq-liuybf", "sw-ccc-thxq-liuyxz", "9999"]
     */
    private List<String> globalPermissions;
    //是否是号码脱敏，true 脱敏，false 明文
    private boolean hideFlag;

    public List<String> getGlobalPermissions() {
        return globalPermissions;
    }

    public void setGlobalPermissions(List<String> globalPermissions) {
        this.globalPermissions = globalPermissions;
    }

    public boolean isHideFlag() {
        if (null != globalPermissions && globalPermissions.contains("9999")) {
            return true;
        }
        return false;
    }

    public String getCompanyId() {
        return companyId;
    }

    public void setCompanyId(String companyId) {
        this.companyId = companyId;
    }

    public int getCallV6Flag() {
        return callV6Flag;
    }

    public void setCallV6Flag(int callV6Flag) {
        this.callV6Flag = callV6Flag;
    }

    public String getPhoneNo() {
        return phoneNo;
    }

    public void setPhoneNo(String phoneNo) {
        this.phoneNo = phoneNo;
    }

    public String getServiceId() {
        return serviceId;
    }

    public void setServiceId(String serviceId) {
        this.serviceId = serviceId;
    }

    public String getCusRoleId() {
        return cusRoleId;
    }

    public void setCusRoleId(String cusRoleId) {
        this.cusRoleId = cusRoleId;
    }

    public String getCusRoleName() {
        return cusRoleName;
    }

    public void setCusRoleName(String cusRoleName) {
        this.cusRoleName = cusRoleName;
    }

    public List<ServiceFunctionVoModel> getFunctionStr() {
        return functionStr;
    }

    public void setFunctionStr(List<ServiceFunctionVoModel> functionStr) {
        this.functionStr = functionStr;
    }

    public String getServiceName() {
        return serviceName;
    }

    public void setServiceName(String serviceName) {
        this.serviceName = serviceName;
    }

    public int getNewBossSwitch() {
        return newBossSwitch;
    }

    public void setNewBossSwitch(int newBossSwitch) {
        this.newBossSwitch = newBossSwitch;
    }

    public String getServiceLanguage() {
        return serviceLanguage;
    }

    public void setServiceLanguage(String serviceLanguage) {
        this.serviceLanguage = serviceLanguage;
    }

    public int getRegion() {
        return region;
    }

    public void setRegion(int region) {
        this.region = region;
    }

    public String getLanguage() {
        return language;
    }

    public void setLanguage(String language) {
        this.language = language;
    }

    public String getTimezone() {
        return timezone;
    }

    public void setTimezone(String timezone) {
        this.timezone = timezone;
    }

    public String getTimezoneId() {
        return timezoneId;
    }

    public void setTimezoneId(String timezoneId) {
        this.timezoneId = timezoneId;
    }
}
