/***
 * 部分常用工具(可自行将常用的一些判断放置在此处)
 * 部分验证是从网上搜索，若不适用可自行替换正则表达式
 * 
 */
export default {
  /**
   * 检查数据是否为空
   * @param input 判断的输入
   * @param toast 提示函数
   * @param message 提示（提示如果不填写则使用默认的提示）
   */
  isNull(input, toast, message) {
    let str_message = "输入不能为空";
    if (typeof (input) == 'number' || typeof (input) == 'boolean') {
      return true;
    } else {
      if (input != undefined && input != null && input != "") {
        return true
      } else {
        if (message != undefined) {
          str_message = message;
        }
        toast.show(str_message);
        return false;
      }
    }
  },

  /**
   * 判断是否是正数，若是则返回输入
   * @param input 判断的输入
   * @param toast 提示函数
   * @param message 提示（提示如果不填写则使用默认的提示）
   * */
  isNumber(input, toast, message) {
    let reg = /^[0-9]+.?[0-9]*$/;
    let str_message = "请输入正数"
    if (!reg.test(input)) {
      if (message != undefined) {
        str_message = message;
      }
      if (toast) {
        toast.show(str_message);
      }
      return false;
    } else {
      return true;
    }
  },

  /**
   * 判断是否是正整数,若是则返回输入
   * @param input 判断的输入
   * @param toast 提示函数
   * @param message 提示（提示如果不填写则使用默认的提示）
   * */
  isPositiveInteger(input, toast, message) {
    let reg = /^[1-9]+[0-9]*]*$/;
    let str_message = "请输入正整数"
    if (!reg.test(input)) {
      if (message != undefined) {
        str_message = message;
      }
      toast.show(str_message);
      return false;
    } else {
      return true;
    }
  },

  /**
   * 本方法用于对列表输出的空值的统一设置（传入值为null、undefined、""的统一设置），目前统一设置为--
   * @param input 判断的输入
   * */
  setNullAndUndefined(input, type) {
    if (input === null && type === 'user') return "本系统创建";
    if (input === null || input === undefined || input === "" || (input + "").toLowerCase() ===
      "null" || (input + "").toLowerCase() === "undefined") {
      return "/"
    } else {
      return input
    }
  },

  /**
   * 本方法用于对列表输出的空值的统一设置为空（传入值为null、undefined、""的统一设置），目前统一设置为--
   * @param input 判断的输入
   * */
  setNullAndUndefinedEnpty(input) {
    if (input === "Null" || input === "null" || input === "NULL" || input === null || input ===
      undefined || input === "") {
      return ""
    } else {
      return input
    }
  },

  /**
   * 判断输入邮箱是否正确
   * @param input 判断的输入
   * @param toast 提示函数
   * @param message 提示（提示如果不填写则使用默认的提示）
   * */
  isEmail(input, toast, message) {
    let reg = /^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/;
    let str_message = "邮箱输入错误"
    if (!reg.test(input)) {
      if (message != undefined) {
        str_message = message;
      }
      toast.show(str_message);
      return false;
    } else {
      return true;
    }
  },

  /**
   * 判断输入手机号码是否正确
   * @param input 判断的输入
   * @param toast 提示函数
   * @param message 提示（提示如果不填写则使用默认的提示）
   * */
  isTelephone(input, toast, message) {
    let reg = /^1(3|4|5|6|7|8|9)\d{9}$/;
    let str_message = "手机号码输入有误"
    if (!reg.test(input)) {
      if (message != undefined) {
        str_message = message;
      }
      toast.show(str_message);
      return false;
    } else {
      return true;
    }
  },

  /**
   * 判断输入号码是否正确
   * @param input 判断的输入
   * @param toast 提示函数
   * @param message 提示（提示如果不填写则使用默认的提示）
   * */
  isPhone(input, toast, message) {
    let reg = /^1(3|4|5|6|7|8|9)\d{9}$/;
    let reg2 = /^([0-9]{3,4}-)?[0-9]{7,8}$/;
    let str_message = "号码输入有误"
    if (!reg.test(input) && !reg2.test(input)) {
      if (message != undefined) {
        str_message = message;
      }
      toast.show(str_message);
      return false;
    } else {
      return true;
    }
  },

  /**
   * 判断输入座机号码是否正确
   * @param input 判断的输入
   * @param toast 提示函数
   * @param message 提示（提示如果不填写则使用默认的提示）
   * */
  isMobilePhone(input, toast, message) {
    let reg = /^([0-9]{3,4}-)?[0-9]{7,8}$/;
    let str_message = "座机号码输入有误"
    if (!reg.test(input)) {
      if (message != undefined) {
        str_message = message;
      }
      toast.show(str_message);
      return false;
    } else {
      return true;
    }
  },

  /**
   * 地图内鼠标样式变为默认（CursorDefault的样式在src/css/style.css的.cesium-viewer.CursorDefault中）
   * @param set 是否将地图内的鼠标样式变为默认（true变为箭头、false小手样式）
   * */
  setCursorDefault(set) {
    if (set) {
      $(".cesium-viewer").addClass("CursorDefault")
    } else {
      $(".cesium-viewer").removeClass("CursorDefault")
    }
  },

  //   判断传回的字段是SmX还是SMX
  checkSm:function(data) {
    let x, y, h;
    x = data.attributes["SMX"];
    if (x) {
      return true
    } else {
      return false;
    }
  },

};
