123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467 |
- const common_vendor = require("../../common/vendor.js");
- var uni = common_vendor.index
-
- /**
- *json字符串转换成json对象
- */
- function stringToJson(data) {
- return JSON.parse(data);
- }
- /**
- *json对象转换成json对符串
- */
-
- function jsonToString(data) {
- return JSON.stringify(data);
- }
- /**
- *map转换为json
- */
-
- function mapToJson(map) {
- return JSON.stringify(strMapToObj(map));
- }
- /**
- *json转换为map
- */
-
- function jsonToMap(jsonStr) {
- return objToStrMap(JSON.parse(jsonStr));
- }
- /**
- *map转化为对象(map所有键都是字符串,可以将其转换为对象)
- */
-
- function strMapToObj(strMap) {
- let obj = Object.create(null);
-
- for (let [k, v] of strMap) {
- obj[k] = v;
- }
-
- return obj;
- }
- /**
- *对象转换为Map
- */
-
- function objToStrMap(obj) {
- let strMap = new Map();
-
- for (let k of Object.keys(obj)) {
- strMap.set(k, obj[k]);
- }
-
- return strMap;
- }
-
- //保存数据
- function setData(key, data) {
- uni.setStorageSync(key, data);
- } //获取数据
-
- function getData(key) {
- return uni.getStorageSync(key);
- } //清除数据
-
- function removeData(key) {
- uni.removeStorageSync(key);
- }
-
- //arrayToJsonString array 转json字符串
- function arrayToJsonString(array) {
- var json = {};
-
- for (var i in array) {
- if (array[i] instanceof Array) {
- json[i] = {};
-
- for (var o in array[i]) {
- if (array[i][o] instanceof Array) {
- json[i][o] = {};
-
- for (var q in array[i][o]) {
- if (array[i][o][q] instanceof Array) {
- json[i][o][q] = {};
-
- for (var w in array[i][o][q]) {
- json[i][o][q][w] = array[i][o][q][w];
- }
- } else {
- json[i][o][q] = array[i][o][q];
- }
- }
- } else {
- json[i][o] = array[i][o];
- }
- }
- } else {
- json[i] = array[i];
- }
- }
-
- return JSON.stringify(json);
- }
-
- function pad2(n) {
- return n < 10 ? '0' + n : n;
- }
-
- //获取时间ymdHis
- function getDate() {
- var date = new Date();
- return date.getFullYear().toString() + pad2(date.getMonth() + 1) + pad2(date.getDate()) + pad2(date.getHours()) + pad2(date.getMinutes()) + pad2(date.getSeconds());
- }
- //获取随机数
-
- function randomNum(Min, Max) {
- var Range = Max - Min;
- var Rand = Math.random();
-
- if (Math.round(Rand * Range) == 0) {
- return Min + 1;
- } else if (Math.round(Rand * Max) == Max) {
- index++;
- return Max - 1;
- } else {
- var num = Min + Math.round(Rand * Range) - 1;
- return num;
- }
- } //array转json对象
-
- function arrayToJson(array) {
- return stringToJson(arrayToJsonString(array));
- }
- /**
- * 获取随机数
- */
-
- function generateMixed(n) {
- var chars = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];
- var res = '';
-
- for (var i = 0; i < n; i++) {
- var id = Math.ceil(Math.random() * 8);
- res += chars[id];
- }
-
- return res;
- }
-
- /**
- * 十六进制转Byte
- */
-
- function stringToByte(str) {
- var pos = 0;
- var len = str.length;
-
- if (len % 2 != 0) {
- return null;
- }
-
- len /= 2;
- var hexA = new Array();
-
- for (var i = 0; i < len; i++) {
- var s = str.substr(pos, 2);
- var v = parseInt(s, 16);
- hexA.push(v);
- pos += 2;
- }
-
- return hexA;
- }
- /** 验证身份证**/
-
- function judgeIdcard(target) {
- return /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(target);
- }
- /** 验证手机号**/
-
- function judgePhone(target) {
- return /^1[23456789]\d{9}$/.test(target);
- }
-
- function judgeNoChinese(str) {
- return /^[a-zA-Z0-9_]{0,}$/.test(str);
- }
- /* 证件类型 index=1个人类型 index=2企业类型*/
-
- function getIdcardType(index) {
- let values1 = [
- {
- id: '101',
- name: '身份证(含临时身份证)'
- },
- {
- id: '102',
- name: '护照(限外籍人士)'
- },
- {
- id: '103',
- name: '港澳居民来往内地通行证'
- },
- {
- id: '104',
- name: '台湾居民来往大陆通行证'
- },
- {
- id: '105',
- name: '军官证'
- },
- {
- id: '106',
- name: '武警警察身份证'
- },
- {
- id: '199',
- name: '个人默认证件'
- }
- ];
- let values2 = [
- {
- id: '201',
- name: '统一社会信用代码证书'
- },
- {
- id: '202',
- name: '组织机构代码证'
- },
- {
- id: '203',
- name: '营业执照'
- },
- {
- id: '204',
- name: '事业单位法人证书'
- },
- {
- id: '205',
- name: '社会团体法人登记证书'
- },
- {
- id: '206',
- name: '律师事务所执业许可证'
- },
- {
- id: '299',
- name: '单位默认证件'
- }
- ];
- return index == 1 ? values1 : values2;
- }
- /**
- * 获取车辆类型
- */
-
- function getCarType(num) {
- var _name = '';
-
- switch (num) {
- case 1:
- _name = '一型客车';
- break;
-
- case 2:
- _name = '二型客车';
- break;
-
- case 3:
- _name = '三型客车';
- break;
-
- case 4:
- _name = '四型客车';
- break;
-
- case 11:
- _name = '一型货车';
- break;
-
- case 12:
- _name = '二型货车';
- break;
-
- case 13:
- _name = '三型货车';
- break;
-
- case 14:
- _name = '四型货车';
- break;
-
- case 15:
- _name = '五型货车';
- break;
-
- case 16:
- _name = '六型货车';
- break;
-
- default:
- _name = '未知' + '_' + num;
- break;
- }
-
- return _name;
- }
- /**
- * 替换emoji表情
- */
-
- function filterEmoji(name) {
- var str = name.replace(
- /[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]|[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF]|[0-9|*|#]\uFE0F\u20E3|[0-9|#]\u20E3|[\u203C-\u3299]\uFE0F\u200D|[\u203C-\u3299]\uFE0F|[\u2122-\u2B55]|\u303D|[\A9|\AE]\u3030|\uA9|\uAE|\u3030/gi,
- ''
- );
- return str;
- }
- /**
- * 替换空格键
- */
-
- function filterSpace(name) {
- var str = name.replace(/\s+/g, '');
- return str;
- }
- /*
- * 金额转换 分》元
- */
-
- function replacemoney(money) {
- if (money % 100 > 0) {
- return money / 100;
- } else {
- return money / 100 + '.00';
- }
- }
- /**
- * OBU状态
- */
-
- function getObuStatus(index) {
- var statuss = [
- {
- id: '0',
- name: '申请'
- },
- {
- id: '1',
- name: '正常'
- },
- {
- id: '2',
- name: '有签挂起'
- },
- {
- id: '3',
- name: '无签挂起'
- },
- {
- id: '4',
- name: '有签注销'
- },
- {
- id: '5',
- name: '无签注销'
- },
- {
- id: '6',
- name: '签挂失'
- },
- {
- id: '7',
- name: '标签过期'
- },
- {
- id: '8',
- name: '已过户'
- },
- {
- id: '9',
- name: '预注销'
- }
- ];
- var obj = statuss.filter((item) => {
- return item.id == index;
- });
- return index && obj.length > 0 ? obj[0].name : '';
- }
- /**
- * ETC卡状态
- */
-
- function getCardStatus(index) {
- var statuss = [
- {
- id: '0',
- name: '申请'
- },
- {
- id: '1',
- name: '正常'
- },
- {
- id: '2',
- name: '有卡挂起'
- },
- {
- id: '3',
- name: '无卡挂起'
- },
- {
- id: '4',
- name: '有卡注销'
- },
- {
- id: '5',
- name: '无卡注销'
- },
- {
- id: '6',
- name: '卡挂失'
- },
- {
- id: '9',
- name: '预注销'
- },
- {
- id: '12',
- name: '预注销'
- }
- ];
- var obj = statuss.filter((item) => {
- return item.id == index;
- });
- return index && obj.length > 0 ? obj[0].name : '';
- }
-
- module.exports = {
- getIdcardType,
- judgeIdcard,
- judgePhone,
- judgeNoChinese,
- stringToJson,
- //json转字符串
- jsonToString,
- //字符串转json
- mapToJson,
- jsonToMap,
- strMapToObj,
- objToStrMap,
- setData,
- getData,
- removeData,
- arrayToJson,
- getDate,
- randomNum,
- generateMixed,
- stringToByte,
- filterEmoji,
- filterSpace,
- replacemoney,
- getCarType,
- getObuStatus,
- getCardStatus
- };
|