Quellcode durchsuchen

Merge branch 'master' of http://39.106.8.246:3003/sagacloud/sagacloud-sagacare-weChat

anxiaoxia vor 1 Jahr
Ursprung
Commit
ea564c6d63
10 geänderte Dateien mit 359 neuen und 174 gelöschten Zeilen
  1. 20 7
      src/api/user.js
  2. 1 1
      src/app.wpy
  3. 24 17
      src/common/request.js
  4. 1 1
      src/config/base.js
  5. 14 6
      src/pages/auth/index.wpy
  6. 108 24
      src/pages/bindTenant/index.wpy
  7. 28 6
      src/pages/index.wpy
  8. 123 72
      src/service/user.js
  9. 33 40
      src/store/user.js
  10. 7 0
      src/utils/index.js

+ 20 - 7
src/api/user.js

@@ -39,6 +39,7 @@ function register(params) {
   return $http({
     url: `${config.duoduoenvService}userNew/wechat/register`,
     method: 'POST',
+    isComParams:true,
     data: JSON.stringify(params)
   })
 }
@@ -49,19 +50,31 @@ function getCompanyByPhone(params) {
     url: `${config.duoduoenvService}userNew/company?phone=${params.phone}`,
     method: 'get'
   })
-
-
 }
 
+// 根据code获取手机号
+function getPhoneNumber(code) {
+  return $http({
+    url: `${config.duoduoenvService}userNew/wechat/getPhoneNumber?code=${code}`,
+    method: 'get'
+  })
+}
 
-
-
-
-
+// 续约
+function refreshToken(refreshToken) {
+  return $http({
+    url: `${config.duoduoenvService}userNew/wechat/refreshToken?refreshToken=${refreshToken}`,
+    method: 'get'
+  })
+}
 
 
 export {
   getCompmayUsers,
   getUserInfo,
-  login
+  getPhoneNumber,
+  getCompanyByPhone,
+  register,
+  login,
+  refreshToken
 }

+ 1 - 1
src/app.wpy

@@ -43,7 +43,7 @@ wepy.app({
 <config>
 {
     pages: [
-   
+      'pages/index',
       'pages/auth/index',
       'pages/bindTenant/index',
     ],

+ 24 - 17
src/common/request.js

@@ -1,6 +1,7 @@
 /* eslint-disable prefer-promise-reject-errors */
 import config from '@/config';
 import store from '@/store';
+import { checkTokenIsValid } from '@/service/user'
 import errorRequest from './errorRequest.js';
 // get参数反序列化
 const setQueryConfig = function (queryConfig) {
@@ -18,18 +19,27 @@ function storeUser() {
   return store.state.user.userInfo;
 }
 
-function getProjectId() {
-  return (
-    store.state.company.companyConfig &&
-    store.state.company.companyConfig.sagacareProjectId
-  );
+function storeToken() {
+  return store.state.user.token;
 }
 
 // 通用参数携带
 function commonParams() {
-  return `openid=${storeUser().userId}&pubname=${config.brsgServer.pubname
-    }&projectId=${getProjectId()}&userName=${storeUser().userName}&userPhone=${storeUser().phone
-    }&userId=${storeUser().userId}`;
+  // openid=${storeUser().openId}&
+  let url = `pubname=${config.brsgServer.pubname}`
+  if (storeUser().projectId) {
+    url = url + `&projectId=${storeUser().projectId}`
+  }
+  if (storeUser().userName) {
+    url = url + `&userName=${storeUser().userName}`
+  }
+  if (storeUser().userId) {
+    url = url + `&userId=${storeUser().userId}`
+  }
+  if (storeToken()) {
+    url = url + `&saga_token=${storeToken()}`
+  }
+  return url;
 }
 
 export default function (info) {
@@ -51,14 +61,13 @@ export default function (info) {
     } else {
       info.url = `${info.url}?${commonParams()}`
     }
-
   }
 
   const token = store.state.user.token;
   if (token) {
-    info.header = Object.assign({
-      token
-    }, info.header)
+    info.header = Object.assign(
+      { 'saga_token': token }
+      , info.header)
   }
 
   info.timeout = info.timeout || 10 * 1000; // 默认超时为10s
@@ -85,11 +94,9 @@ export default function (info) {
           console.error(error);
         }
         if (res.statusCode === 401) {
-          if (store.state.user.tokenIsValid) {
-            // 刷新首页
-            store.commit('setTokenIsValid', false);
-            store.commit('setToken', '');
-            wx.redirectTo({ url: '/pages/homev2' });
+          if (checkTokenIsValid() == 2) { // 登录过期后重新从首页刷新进入
+            // store.commit('clearToken','');
+            wx.redirectTo({ url: '/packagesEnv/pages/home/index' });
           }
         } else if (res.statusCode >= 400) {
           reject(res.errMsg);

+ 1 - 1
src/config/base.js

@@ -2,7 +2,7 @@
 const brsgServer = {
   duoduoUrl: 'https://duoduoenv.sagacloud.cn',
   projectId: 'Pj1101080259',
-  pubname: 'sagacareAndtenantslink',
+  pubname: 'sagacareWeChat',
   openid: 'sagacareAndtenantslinkTest'
 }
 

+ 14 - 6
src/pages/auth/index.wpy

@@ -74,7 +74,9 @@
   <div class="bind-btn-box">
    <button class="bind-btn"
    open-type="getPhoneNumber"
-   bindgetphonenumber="phonenumberAuth">微信手机号认证</button>
+   bindgetphonenumber="phonenumberAuth"
+   >微信手机号认证</button>
+   <!-- @click="goBindTenant" -->
    <!-- bindgetphonenumber="phonenumberAuth" -->
    <div class="bind-btn-tip">确保是入职公司使用的手机号</div>
   </div>
@@ -88,8 +90,9 @@ import { mapState } from '@wepy/x';
 import store from '@/store';
 import config from '@/config';
 import { setAvatar, setUserInfoByAuth } from '@/service/user';
-import {getCompanyByPhone} from '@/api/user';
-let defaultAvatarUrl =config.h5StaticPath + '/page-bind-tenant/default_avatar.svg';
+import { getCompanyByPhone } from '@/api/user';
+let defaultAvatarUrl =
+  config.h5StaticPath + '/page-bind-tenant/default_avatar.svg';
 wepy.page({
   store,
   config: {
@@ -125,9 +128,7 @@ wepy.page({
         }
       });
     },
-    getPageCompanyByPhone(){
-
-    },
+    getPageCompanyByPhone() {},
     goHome() {
       wx.navigateTo({
         url: '/packagesEnv/pages/home/index'
@@ -136,9 +137,16 @@ wepy.page({
     // 手机号认证
     phonenumberAuth(e) {
       console.log(e);
+      // this.goBindTenant();
       let detail = e.$wx.detail;
       let code = detail.code;
       let errMsg = detail.errMsg;
+      console.log(detail);
+      store.commit('setUserPhone', 15321277745);
+      // wx.setStorage('userPhone', 15321277745);
+      wx.navigateTo({
+        url: '/pages/bindTenant/index'
+      });
     },
     goBindTenant() {
       console.log('被点击了');

+ 108 - 24
src/pages/bindTenant/index.wpy

@@ -94,33 +94,24 @@ page {
   <page-top-bar title="公司身份选择" 
   titleColor="#1B2129" 
   bgColor="#EBF5FA"></page-top-bar>
-   <div class="bind-item check-item">
-      <div class="tenant-name">禹数科技有限公司</div>
+   <div class="bind-item" 
+     @click="changeTent(item)"
+     :class="{'check-item':selecItem.id==item.id}"
+     :key="index+'tent'"
+      v-for="(item,index) in tenantData">
+      <div class="tenant-name">{{ item.name }}</div>
       <div class="tenant-identity">
         <div class="info">正式员工</div>
-        <image class="logo-icon" src="{{h5StaticPath+'/page-bind-tenant/logo_icon.svg'}}"/>
+        <image class="logo-icon" v-if="item.logo" src="{{h5StaticPath+'/page-bind-tenant/logo_icon.svg'}}"/>
       </div>
-      <image class="checked-icon" src="{{h5StaticPath+'/page-bind-tenant/checked.svg'}}"/>
-   </div>
-   <div class="bind-item">
-      <div class="tenant-name">禹数科技有限公司</div>
-      <div class="tenant-identity">
-        <div class="info">正式员工</div>
-        <image class="logo-icon" src="{{h5StaticPath+'/page-bind-tenant/logo_icon.svg'}}"/>
-      </div>
-      <image class="checked-icon" src="{{h5StaticPath+'/page-bind-tenant/checked.svg'}}"/>
-   </div>
-   <div class="bind-item" :key="key" v-for="(item,key) in 20">
-      <div class="tenant-name">禹数科技有限公司</div>
-      <div class="tenant-identity">
-        <div class="info">正式员工</div>
-        <image class="logo-icon" src="{{h5StaticPath+'/page-bind-tenant/logo_icon.svg'}}"/>
-      </div>
-      <image class="checked-icon" src="{{h5StaticPath+'/page-bind-tenant/checked.svg'}}"/>
+      <image class="checked-icon" 
+       v-if="selecItem.id==item.id"
+      src="{{h5StaticPath+'/page-bind-tenant/checked.svg'}}"/>
    </div>
+   
 
    <div class="bind-btn-box">
-    <button @click="goEnv">确认</button>
+    <button @click.stop="bindTent">确认</button>
    </div>
  </div>
 </template>
@@ -130,7 +121,15 @@ import wepy from '@wepy/core';
 import { mapState } from '@wepy/x';
 import store from '@/store';
 import config from '@/config';
-import { setUserInfoByAuth } from '@/service/user';
+import {
+  setUserInfoByAuth,
+  getCompanyDataByPhone,
+  getAvatar,
+  wxLogin,
+  checkLoginNew,
+  checkTokenIsValid
+} from '@/service/user';
+import { register } from '@/api/user';
 
 wepy.page({
   store,
@@ -144,13 +143,98 @@ wepy.page({
         name: '科技公司1'
       }
     ],
+    selecItem: {},
     h5StaticPath: config.h5StaticPath
   },
-  onLoad() {},
+  computed: {
+    ...mapState({
+      userPhone: state => state.user.userPhone,
+      token: state => state.user.token
+    })
+  },
+  onLoad() {
+    this.getPageCompanyByPhone();
+  },
   onShow() {
-    // this.checkAuthCamra();
+    if (checkTokenIsValid() !== 3) {
+      checkLoginNew();
+    }
   },
   methods: {
+    changeTent(item) {
+      this.initTentData();
+      item.isChecked = true;
+      this.selecItem = item;
+    },
+    // 直接注册
+    registerTent(params) {
+      register(params)
+        .then(res => {
+          if (res.result == 'success') {
+            wxLogin().then(res => {
+              this.goHome();
+            });
+          } else {
+            this.returnLogin();
+          }
+        })
+        .catch(error => {
+          this.returnLogin();
+        });
+    },
+    // 注册
+    bindTent() {
+      let params = {
+        phone: this.userPhone,
+        defaultCompanyId: this.selecItem.id,
+        headImage: getAvatar()
+      };
+      if (checkTokenIsValid() == 3) {
+        // 未过期直接注册
+        this.registerTent(params);
+      } else {
+        checkLoginNew();
+      }
+    },
+    // 初始化租户
+    initTentData() {
+      this.tenantData.map(item => {
+        item.isChecked = false;
+      });
+    },
+    // 获取租户数据
+    getPageCompanyByPhone() {
+      getCompanyDataByPhone().then(res => {
+        console.log(res);
+        let data = res;
+        if (data && data.length) {
+          this.tenantData = data;
+          this.initTentData();
+          this.selecItem = this.tenantData[0];
+        } else {
+          wx.showToast({
+            title: '未获得公司服务权限!',
+            duration: 5000,
+            icon: 'none'
+          });
+          this.goHome();
+        }
+      });
+    },
+    getUserPhone() {
+      let phone = wx.getStorageSync('userPhone');
+      console.log(`phone==${phone}`);
+    },
+    goHome() {
+      wx.navigateTo({
+        url: '/packagesEnv/pages/home/index'
+      });
+    },
+    returnLogin() {
+      wx.navigateTo({
+        url: 'pages/index'
+      });
+    },
     goEnv() {
       wx.navigateTo({
         url:

+ 28 - 6
src/pages/index.wpy

@@ -57,30 +57,52 @@ import wepy from '@wepy/core';
 import { mapState } from '@wepy/x';
 import store from '@/store';
 import config from '@/config';
-import { checkRegist } from '@/service/user';
+import { wxLogin } from '@/service/user';
 wepy.page({
   store,
   data: {
     h5StaticPath: config.h5StaticPath,
     isActivated: 0
   },
-  onLoad() {
-    this.checkTenantRegist();
+  computed: {
+    ...mapState({ token: state => state.user.token }),
+    ...mapState({ isActivated: state => state.user.isActivated })
   },
+  onLoad() {},
   onShow() {
     // this.checkTenantRegist();
+    if (this.isActivated && this.isActivated == 1) {
+      this.goHome();
+    } else {
+      this.checkTenantRegist();
+    }
   },
   methods: {
+    goBindTenant() {
+      this.goAuth();
+    },
     checkTenantRegist() {
-      checkRegist()
+      wxLogin(1)
         .then(res => {
           this.isActivated = res.isActivated;
-          if (this.isActivated && this.isActivated == 2) {
+          let tokenInfo = {
+            expireTime: res.expireTime,
+            startTime: res.startTime,
+            refreshTokenExpireTime: res.refreshTokenExpireTime,
+            refreshToken: res.refreshToken
+          };
+          store.commit('setToken', res.token);
+          store.commit('setActivated', res.isActivated);
+          store.commit('setTokenInfo', tokenInfo);
+          if (this.isActivated && this.isActivated == 1) {
             // 已经激活
+            store.commit('setTokenInfo', res.tokenUser);
             this.goHome();
           } else if (this.isActivated == 0) {
             // 未激活
-            this.goAuth();
+            // this.goAuth();
+          } else {
+            // 作废
           }
         })
         .catch(error => {});

+ 123 - 72
src/service/user.js

@@ -1,39 +1,8 @@
 import { getUserInfo, setWxAuthUserInfo, getThirdInfo, createAccount, changePhone } from '@/api/user.js';
 import store from '@/store';
 import config from '@/config';
-import { login } from '@/api/user.js';
-import { getAppId } from '@/utils/index';
-
-// 获取用户数据
-function getUserData() {
-  return new Promise((resolve, reject) => {
-    Promise.all([getUserInfo(), getThirdInfo()]).then(([userInfoRes, thirdInfores]) => {
-      let userInfo = userInfoRes.data || {};
-      let thirdInfo = thirdInfores.data || {};
-      let cachedInfo = wx.getStorageSync('UserInfo');
-      userInfo = { ...cachedInfo, ...userInfo, ...thirdInfo };
-      userInfo.userName = userInfo.userName || '';
-      // test 用户身份
-      // userInfo.roles = ['tenant.admin', 'operator', 'owner'];
-      // userInfo.phone = '';wxLogin
-      // userInfo.nickName = '';
-      // userInfo.userName = ''
-      userInfo = addRolesInfoToUserInfo(userInfo);
-      if (!userInfo.userName) {
-        userInfo.defaultUserName = 'Hello';
-      }
-      // todo 模拟银泰配置 接口增加buildingLogo
-      if (config.projectName === 'yintai') {
-        userInfo.buildingLogo = `${config.h5StaticPath}/page-yintai/project-logo.png`;
-      }
-      //   userInfo.companyId = 'c68dcccd57984277ab7736f2d257cd0c'
-      store.commit('setUserInfo', userInfo);
-      resolve(userInfo);
-    }).catch((res) => {
-      reject(res);
-    })
-  })
-}
+import { login, getCompanyByPhone, refreshToken } from '@/api/user.js';
+import { getAppId, getTimeStamp } from '@/utils/index';
 
 // 检查登录
 function checkLogin(needGetetUserInfo = true) {
@@ -51,9 +20,10 @@ function checkHasUserInfo() {
   if (userInfo && JSON.stringify(userInfo) !== '{}') {
     return Promise.resolve(userInfo);
   } else {
-    return checkLogin(false).then(() => {
-      return getUserData();
-    })
+    // return checkLogin(false).then(() => {
+    //   return getUserData();
+    // })
+    wxLogin();
   }
 }
 
@@ -119,8 +89,9 @@ function setUserInfoByAuth() {
   });
 }
 
-// 检查用户是否注册过小程序及绑定过租户
-function checkRegist() {
+// 登录
+function wxLogin(type) {
+  // type=1 如果type未激活和作废不需要跳转到登录页面
   return new Promise((resolve, reject) => {
     wx.login({
       success(wxLoginRes) {
@@ -134,6 +105,24 @@ function checkRegist() {
           login(params).then(res => {
             if (res.result == 'success') {
               let data = res.data || []
+              let tokenInfo = {
+                expireTime: data.expireTime,
+                startTime: data.startTime,
+                refreshTokenExpireTime: data.refreshTokenExpireTime,
+                refreshToken: data.refreshToken
+              };
+              store.commit('setToken', data.token);
+              store.commit('setActivated', data.isActivated);
+              store.commit('setTokenInfo', tokenInfo);
+              if (data.isActivated && data.isActivated == 1) {
+                store.commit('setUserInfo', data.tokenUser);
+                store.commit('setProjectId', data.tokenUser.projectId);
+              } else {
+                if (!type) {
+                  wx.redirectTo({ url: '/pages/index' });
+                }
+                store.commit('setUserInfo', {});
+              }
               resolve(data)
             } else {
               reject('login接口返回fail');
@@ -160,55 +149,117 @@ function checkRegist() {
   });
 }
 
-// 登录
-function wxLogin() {
-  store.commit('setTokenIsValid', false);
-  store.commit('setToken', '');
+// 获取租户信息
+function getCompanyDataByPhone() {
   return new Promise((resolve, reject) => {
-    wx.login({
-      success(wxLoginRes) {
-        const jsCode = wxLoginRes.code;
-        const appId = wx.getAccountInfoSync().miniProgram.appId;
-        if (jsCode) {
-          let params = {
-            "appId": appId,
-            "wxCode": jsCode
-          }
-        } else {
-          wx.hideLoading();
-          wx.showToast({
-            title: `网络异常, 请稍后重试`,
-            icon: 'none',
-            duration: 5e3
-          });
-          reject('wx.login接口返回code为空');
-        }
-      },
-      fail(res) {
-        reject(res);
-        wx.showToast({
-          title: `网络异常, 请稍后重试`,
-          icon: 'none',
-          duration: 5e3
-        });
-      }
-    });
+    let userPhone = wx.getStorageSync('userPhone');
+    let params = {
+      phone: userPhone
+    }
+    if (userPhone) {
+      getCompanyByPhone(params).then(res => {
+        let data = res.data || []
+        resolve(data)
+      }).catch(() => {
+        reject({
+          mesg: '获取租户数据异常'
+        })
+      })
+    } else {
+      reject({
+        mesg: '无法获取手机号信息,跳转到首页'
+      })
+    }
+
   });
 }
 
+// 登录续约
+function refreshTokenPage() {
+  refreshToken().then(res => {
+    if (res.result == 'success') {
+      let data = res.data || []
+      let tokenInfo = {
+        expireTime: data.expireTime,
+        startTime: data.startTime,
+        refreshTokenExpireTime: data.refreshTokenExpireTime,
+        refreshToken: data.refreshToken
+      };
+      store.commit('setToken', data.token);
+      store.commit('setActivated', data.isActivated);
+      store.commit('setTokenInfo', tokenInfo);
+      if (data.isActivated && data.isActivated == 1) {
+        store.commit('setUserInfo', data.tokenUser);
+      } else {
+        wx.redirectTo({ url: '/pages/index' });
+        store.commit('setUserInfo', {});
+      }
+    }
+  }).catch(() => {
+    wxLogin()
+  })
+}
+// 检查是否登录过以及过期
+function checkLoginNew() {
+  let token = store.state.user.token;
+  if (!token) {
+    return wxLogin();
+  } else {
+    let flag = checkTokenIsValid()
+    if (flag == 1) {
+      refreshTokenPage(); // 续约
+    } else if (flag == 2) { // 重新登录
+      wxLogin();
+    } else if (flag == 3) {  // 后续补定时器定时续约逻辑
+
+    }
+    return Promise.resolve();
+  }
+}
+
+// 判断token是否过期
+function checkTokenIsValid() {
+  let flag = 1
+  let tokenInfo = store.state.user.tokenInfo;
+  let expireTime = tokenInfo.expireTime;
+  let refreshToken = tokenInfo.refreshToken;
+  let nowtime = getTimeStamp();
+  if (expireTime && expireTime < nowtime && refreshToken >= nowtime) {  // 过期可续约
+    flag = 1
+  } else if (expireTime && expireTime >= nowtime) { // 没过期
+    flag = 3
+  }
+  else { // 需要重新登录
+    flag = 2
+  }
+  return flag;
+}
+
+
+
+
 // 本地保存用户头像
 function setAvatar(avatar) {
   wx.setStorageSync('avatarBase64', avatar);
 }
+// 获取头像
 function getAvatar() {
-  wx.getStorageSync('avatarBase64');
+  return wx.getStorageSync('avatarBase64');
+}
+
+// 清楚数据
+function clearAvatar() {
+  wx.removeStorage('avatarBase64');
 }
 
 
 export {
   checkHasUserInfo,
-  checkRegist,
+  wxLogin,
   setAvatar,
   getAvatar,
+  checkLoginNew,
+  checkTokenIsValid,
+  getCompanyDataByPhone,
   setUserInfoByAuth
 }

+ 33 - 40
src/store/user.js

@@ -1,69 +1,65 @@
 export default {
   state: {
-    // status用户状态说明:
-    // 0-未入驻:没有通过手机号绑定到企业或者运营方账户
-    // 10-审核中:绑定的手机号,申请加入企业还未审批通过
-    // 已入驻:绑定的手机号,在企业行政列表中可见,又细分下列几种情况:
-    //   2-激活:正常状态的账户
-    //   3-待激活:企业行政按照手机号批量倒入员工信息,员工未使用对应手机号进行登陆,则为未激活状态
-    //   4-冻结:1)由于长期不使用小程序等触发条件,暂时冻结账户,需要用户手动登陆一次以激活。2)部署到新的大楼或企业时,如果原来有其他系统的用户信息,倒入到tenantslink,也作为冻结状态
-    //   (比如企办的账户数据)
-    //   5-作废:只作为历史记录,不能重新激活。同一手机号再次加入,也算是另一个账户
     status: null,
-    token: '',
+    token: wx.getStorageSync('token'),
     projectId: '',
     refreshToken: '',
-    userInfo: {
-      userId: '602ef709beb64a1f9a4b6af2196d0af7',
-      userPhone: 15321277745,
-      userName: '陈珍',
-      projectId: 'Pj1101080259'
-    },
+    userInfo: wx.getStorageSync('userInfo'),
+    userPhone: wx.getStorageSync('userPhone'),
     // 申请id
     applyId: '',
+    tokenInfo: wx.getStorageSync('tokenInfo'),
     hasClearToken: false,
-    tokenIsValid: true
+    tokenIsValid: true,
+    isActivated: wx.getStorageSync('isActivated')
   },
   mutations: {
     setToken(state, token) {
+      wx.setStorageSync('token', token);
       state.token = token;
     },
-    setRefreshToken(state, refreshToken) {
-      state.refreshToken = refreshToken;
+    setActivated(state, isActivated) {
+      wx.setStorageSync('isActivated', isActivated);
+      state.isActivated = isActivated
+    },
+    setTokenInfo(state, tokenInfo) {
+      wx.setStorageSync('tokenInfo', tokenInfo);
+      state.tokenInfo = tokenInfo;
     },
     setStatus(state, status) {
       state.status = status;
     },
     setUserInfo(state, userInfo) {
-      // state.userInfo = { ...state.userInfo, ...userInfo };
-      state.userInfo = {
-        userId: '602ef709beb64a1f9a4b6af2196d0af7',
-        userPhone: 15321277745,
-        userName: '陈珍',
-        projectId: 'Pj1101080259'
-      }
+      state.userInfo = { ...state.userInfo, ...userInfo };
+      wx.setStorageSync('userInfo', userInfo);
+      state.userInfo = userInfo;
     },
-    setApplyId(state, applyId) {
-      state.applyId = applyId
+    clearToken(state) {
+      wx.removeStorageSync('token');
+      state.token = ''
+    },
+    clearTokenInfo(state) {
+      wx.removeStorageSync('tokenInfo')
+      state.tokenInfo = {};
     },
     clearUserInfo(state) {
-      // state.userInfo = {};
-      state.userInfo = {
-        userId: '602ef709beb64a1f9a4b6af2196d0af7',
-        userPhone: 15321277745,
-        userName: '陈珍',
-        projectId: 'Pj1101080259'
-      }
+      wx.removeStorageSync('userInfo')
+      state.userInfo = {};
     },
-    hasClearToken(state, data) {
-      state.hasClearToken = data
+    setApplyId(state, applyId) {
+      state.applyId = applyId
     },
     setTokenIsValid(state, data) {
       state.tokenIsValid = data
     },
     setProjectId(state, data) {
       state.projectId = data
+    },
+    setUserPhone(state, data) {
+      wx.setStorageSync('userPhone', data);
+      state.userPhone = data
     }
+
   },
   actions: {
     setToken({ commit }, data) {
@@ -87,9 +83,6 @@ export default {
     hasClearToken({ commit }, data) {
       commit('hasClearToken', data);
     },
-    setTokenIsValid({ commit }, data) {
-      commit('setTokenIsValid', data);
-    },
     setProjectId({ commit }, data) {
       commit('setProjectId', data);
     }

+ 7 - 0
src/utils/index.js

@@ -15,9 +15,16 @@ function getVersion() {
     return miniProgram && miniProgram.miniProgram && miniProgram.miniProgram.version;
 }
 
+// 获取时间戳
+function getTimeStamp() {
+    let timeStamp = Date.parse(new Date());
+    return timeStamp;
+}
+
 
 export {
     getAppId,
     getVersion,
+    getTimeStamp,
     getMiniProgram
 }