| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456 | 
							- var api = require('./api');
 
- function formatTime(date) {
 
-     var year = date.getFullYear()
 
-     var month = date.getMonth() + 1
 
-     var day = date.getDate()
 
-     var hour = date.getHours()
 
-     var minute = date.getMinutes()
 
-     var second = date.getSeconds()
 
-     return [year, month, day].map(formatNumber).join('-') + ' ' + [hour, minute, second].map(formatNumber).join(':')
 
- }
 
- function formatTime_1(fmt, date) {
 
-     date = new Date(date)
 
-     let ret;
 
-     const opt = {
 
-         "Y+": date.getFullYear().toString(), // 年
 
-         "m+": (date.getMonth() + 1).toString(), // 月
 
-         "d+": date.getDate().toString(), // 日
 
-         "H+": date.getHours().toString(), // 时
 
-         "M+": date.getMinutes().toString(), // 分
 
-         "S+": date.getSeconds().toString(), // 秒
 
-         // 有其他格式化字符需求可以继续添加,必须转化成字符串
 
-     };
 
-     for (let k in opt) {
 
-         ret = new RegExp("(" + k + ")").exec(fmt);
 
-         if (ret) {
 
-             fmt = fmt.replace(
 
-                 ret[1],
 
-                 ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0")
 
-             );
 
-         }
 
-     }
 
-     return fmt;
 
- }
 
- const formatNumber = n => {
 
-     n = n.toString()
 
-     return n[1] ? n : '0' + n
 
- }
 
- function formatTimeNum(number, format) {
 
-     var formateArr = ['Y', 'M', 'D', 'h', 'm', 's'];
 
-     var returnArr = [];
 
-     var date = new Date(number * 1000);
 
-     returnArr.push(date.getFullYear());
 
-     returnArr.push(formatNumber(date.getMonth() + 1));
 
-     returnArr.push(formatNumber(date.getDate()));
 
-     returnArr.push(formatNumber(date.getHours()));
 
-     returnArr.push(formatNumber(date.getMinutes()));
 
-     returnArr.push(formatNumber(date.getSeconds()));
 
-     for (var i in returnArr) {
 
-         format = format.replace(formateArr[i], returnArr[i]);
 
-     }
 
-     return format;
 
- }
 
- function testMobile(num) {
 
-     console.log
 
-     var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1})|(17[0-9]{1})|(16[0-9]{1})|(19[0-9]{1}))+\d{8})$/;
 
-     if (num.length == 0) {
 
-         wx.showToast({
 
-             title: '手机号为空',
 
-             image: '/images/icon/icon_error.png',
 
-         })
 
-         return false;
 
-     } else if (num.length < 11) {
 
-         wx.showToast({
 
-             title: '手机号长度有误!',
 
-             image: '/images/icon/icon_error.png',
 
-         })
 
-         return false;
 
-     } else if (!myreg.test(num)) {
 
-         wx.showToast({
 
-             title: '手机号有误!',
 
-             image: '/images/icon/icon_error.png',
 
-         })
 
-         return false;
 
-     } else {
 
-         return true;
 
-     }
 
- }
 
- /**
 
-  * 封封微信的的request
 
-  */
 
- function request(url, data = {}, method = "GET") {
 
-     return new Promise(function (resolve, reject) {
 
-         wx.request({
 
-             url: url,
 
-             data: data,
 
-             method: method,
 
-             header: {
 
-                 'Content-Type': 'application/json',
 
-                 'X-Nideshop-Token': wx.getStorageSync('token')
 
-             },
 
-             success: function (res) {
 
-                 if (res.statusCode == 200) {
 
-                     if (res.data.errno == 401) {
 
-                         //需要登录后才可以操作
 
-                         let code = null;
 
-                         return login().then((res) => {
 
-                             code = res.code;
 
-                             return getUserInfo();
 
-                         }).then((userInfo) => {
 
-                             //登录远程服务器
 
-                             request(api.AuthLoginByWeixin, {
 
-                                 code: code,
 
-                                 userInfo: userInfo
 
-                             }, 'POST').then(res => {
 
-                                 if (res.errno === 0) {
 
-                                     //存储用户信息
 
-                                     wx.setStorageSync('userInfo', res.data.userInfo);
 
-                                     wx.setStorageSync('token', res.data.token);
 
-                                     resolve(res);
 
-                                 } else {
 
-                                     reject(res);
 
-                                 }
 
-                             }).catch((err) => {
 
-                                 reject(err);
 
-                             });
 
-                         }).catch((err) => {
 
-                             reject(err);
 
-                         })
 
-                     } else {
 
-                         resolve(res.data);
 
-                     }
 
-                 } else {
 
-                     reject(res.errMsg);
 
-                 }
 
-             },
 
-             fail: function (err) {
 
-                 reject(err)
 
-             }
 
-         })
 
-     });
 
- }
 
- /**
 
-  * 检查微信会话是否过期
 
-  */
 
- function checkSession() {
 
-     return new Promise(function (resolve, reject) {
 
-         wx.checkSession({
 
-             success: function () {
 
-                 resolve(true);
 
-             },
 
-             fail: function () {
 
-                 reject(false);
 
-             }
 
-         })
 
-     });
 
- }
 
- /**
 
-  * 调用微信登录
 
-  */
 
- function login() {
 
-     return new Promise(function (resolve, reject) {
 
-         wx.login({
 
-             success: function (res) {
 
-                 if (res.code) {
 
-                     //登录远程服务器
 
-                     resolve(res);
 
-                 } else {
 
-                     reject(res);
 
-                 }
 
-             },
 
-             fail: function (err) {
 
-                 reject(err);
 
-             }
 
-         });
 
-     });
 
- }
 
- function getUserInfo() {
 
-     return new Promise(function (resolve, reject) {
 
-         wx.getUserInfo({
 
-             withCredentials: true,
 
-             success: function (res) {
 
-                 resolve(res);
 
-             },
 
-             fail: function (err) {
 
-                 reject(err);
 
-             }
 
-         })
 
-     });
 
- }
 
- function redirect(url) {
 
-     //判断页面是否需要登录
 
-     if (false) {
 
-     } else {
 
-         wx.redirectTo({
 
-             url: url
 
-         });
 
-     }
 
- }
 
- function showErrorToast(msg) {
 
-     wx.showToast({
 
-         title: msg,
 
-         icon: 'none',
 
-     })
 
- }
 
- function showSuccessToast(msg) {
 
-     wx.showToast({
 
-         title: msg,
 
-         icon: 'success',
 
-     })
 
- }
 
- function sentRes(url, data, method, fn) {
 
-     data = data || null;
 
-     if (data == null) {
 
-         var content = require('querystring').stringify(data);
 
-     } else {
 
-         var content = JSON.stringify(data); //json format
 
-     }
 
-     var parse_u = require('url').parse(url, true);
 
-     var isHttp = parse_u.protocol == 'http:';
 
-     var options = {
 
-         host: parse_u.hostname,
 
-         port: parse_u.port || (isHttp ? 80 : 443),
 
-         path: parse_u.path,
 
-         method: method,
 
-         headers: {
 
-             'Content-Type': 'application/json',
 
-             'Content-Length': Buffer.byteLength(content, "utf8"),
 
-             'Trackingmore-Api-Key': '1b70c67e-d191-4301-9c05-a50436a2526d'
 
-         }
 
-     };
 
-     var req = require(isHttp ? 'http' : 'https').request(options, function (res) {
 
-         var _data = '';
 
-         res.on('data', function (chunk) {
 
-             _data += chunk;
 
-         });
 
-         res.on('end', function () {
 
-             fn != undefined && fn(_data);
 
-         });
 
-     });
 
-     req.write(content);
 
-     req.end();
 
- }
 
- function loginNow() {
 
-     var company = getApp().globalData.company
 
-     let userInfo = wx.getStorageSync('userLogin');
 
-     if (userInfo == '') {
 
-         switch (company) {
 
-             // 未来出行港
 
-             case "nTFkj1GpWQ":
 
-                 wx.navigateTo({
 
-                     url: '/nova-travel/app-auth/index',
 
-                 });
 
-                 break;
 
-             //  推理社 
 
-             case "mwgEpKKsGg":
 
-                 wx.navigateTo({
 
-                     url: '/nova-drama/app-auth/index',
 
-                 });
 
-                 break;
 
-             //VR旅游
 
-             case "5G6p8gMdOH":
 
-                 wx.navigateTo({
 
-                     url: "/nova-vrtrip/app-auth/index",
 
-                 })
 
-                 break;
 
-             case "668rM7MPii":
 
-                 wx.navigateTo({
 
-                     url: "/nova-workers/app-auth/index",
 
-                 })
 
-                 break;
 
-             case "i3cwsEHS4U":
 
-                 wx.navigateTo({
 
-                     url: "/nova-page/diypage/app-auth/index"
 
-                 })
 
-                 break;
 
-             case "Aoh1ZFpBSa":
 
-                 wx.navigateTo({
 
-                     url: "/nova-qingServiceCenter/app-auth/index"
 
-                 })
 
-                 break;
 
-             // 学位通
 
-             case "tBm19Q58Zm":
 
-                 wx.navigateTo({
 
-                     url: "/nova-degree/app-auth/index"
 
-                 })
 
-                 break;
 
-             // 成长口袋
 
-             case "WpgR8iSgGM":
 
-                 wx.navigateTo({
 
-                     url: "/nova-pocket/app-auth/index"
 
-                 })
 
-                 break;
 
-         }
 
-         return false;
 
-     } else {
 
-         return true;
 
-     }
 
- }
 
- function getTextLength(str, full) {
 
-     let len = 0;
 
-     for (let i = 0; i < str.length; i++) {
 
-         let c = str.charCodeAt(i);
 
-         //单字节加1 
 
-         if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) {
 
-             len++;
 
-         } else {
 
-             len += (full ? 2 : 1);
 
-         }
 
-     }
 
-     return len;
 
- }
 
- /**
 
-  * rgba(255, 255, 255, 1) => #ffffff
 
-  * @param {String} color 
 
-  */
 
- function transferColor(color = '') {
 
-     let res = '#';
 
-     color = color.replace(/^rgba?\(/, '').replace(/\)$/, '');
 
-     color = color.split(', ');
 
-     color.length > 3 ? color.length = 3 : '';
 
-     for (let item of color) {
 
-         item = parseInt(item || 0);
 
-         if (item < 10) {
 
-             res += ('0' + item)
 
-         } else {
 
-             res += (item.toString(16))
 
-         }
 
-     }
 
-     return res;
 
- }
 
- function transferBorder(border = '') {
 
-     let res = border.match(/(\w+)px\s(\w+)\s(.*)/);
 
-     let obj = {};
 
-     if (res) {
 
-         obj = {
 
-             width: +res[1],
 
-             style: res[2],
 
-             color: res[3]
 
-         }
 
-     }
 
-     return res ? obj : null;
 
- }
 
- /**
 
-  * 内边距,依次为上右下左
 
-  * @param {*} padding 
 
-  */
 
- function transferPadding(padding = '0 0 0 0') {
 
-     padding = padding.split(' ');
 
-     for (let i = 0, len = padding.length; i < len; i++) {
 
-         padding[i] = +padding[i].replace('px', '');
 
-     }
 
-     return padding;
 
- }
 
- /**
 
-  * type1: 0, 25, 17, rgba(0, 0, 0, 0.3)
 
-  * type2: rgba(0, 0, 0, 0.3) 0px 25px 17px 0px => (0, 25, 17, rgba(0, 0, 0, 0.3))
 
-  * @param {*} shadow 
 
-  */
 
- function transferBoxShadow(shadow = '', type) {
 
-     if (!shadow || shadow === 'none') return;
 
-     let color;
 
-     let split;
 
-     split = shadow.match(/(\w+)\s(\w+)\s(\w+)\s(rgb.*)/);
 
-     if (split) {
 
-         split.shift();
 
-         shadow = split;
 
-         color = split[3] || '#ffffff';
 
-     } else {
 
-         split = shadow.split(') ');
 
-         color = split[0] + ')'
 
-         shadow = split[1].split('px ');
 
-     }
 
-     return {
 
-         offsetX: +shadow[0] || 0,
 
-         offsetY: +shadow[1] || 0,
 
-         blur: +shadow[2] || 0,
 
-         color
 
-     }
 
- }
 
- function getUid(prefix) {
 
-     prefix = prefix || '';
 
-     return (
 
-         prefix +
 
-         'xxyxxyxx'.replace(/[xy]/g, c => {
 
-             let r = (Math.random() * 16) | 0;
 
-             let v = c === 'x' ? r : (r & 0x3) | 0x8;
 
-             return v.toString(16);
 
-         })
 
-     );
 
- }
 
- function initProfile() {
 
-     var company = getApp().globalData.company
 
-     let userVetify = wx.getStorageSync('userVetify');
 
-     if (userVetify == '') {
 
-         switch (company) {
 
-             case "668rM7MPii":
 
-                 wx.redirectTo({
 
-                     url: "/nova-workers/app-auth/Vetify/Vetify",
 
-                 })
 
-                 break;
 
-         }
 
-         return false;
 
-     } else {
 
-         return true;
 
-     }
 
- }
 
- module.exports = {
 
-     formatTime_1: formatTime_1,
 
-     formatTime: formatTime,
 
-     formatTimeNum: formatTimeNum,
 
-     request,
 
-     redirect,
 
-     showErrorToast,
 
-     showSuccessToast,
 
-     checkSession,
 
-     login,
 
-     getUserInfo,
 
-     testMobile,
 
-     sentRes,
 
-     loginNow,
 
-     getTextLength,
 
-     transferBorder,
 
-     transferColor,
 
-     transferPadding,
 
-     transferBoxShadow,
 
-     getUid,
 
-     initProfile
 
- }
 
 
  |