lrf пре 2 година
родитељ
комит
99c7ecd98d
3 измењених фајлова са 14 додато и 0 уклоњено
  1. 3 0
      app/controller/user/config/.user.js
  2. 10 0
      app/service/user/user.js
  3. 1 0
      app/z_router/user/user.js

+ 3 - 0
app/controller/user/config/.user.js

@@ -69,4 +69,7 @@ module.exports = {
   checkLoginCode: {
     requestBody: ['!code', '!phone'],
   },
+  cct: {
+    service: 'changeCacheToken',
+  },
 };

+ 10 - 0
app/service/user/user.js

@@ -188,6 +188,16 @@ class UserService extends CrudService {
     const is_leader = _.get(user, 'is_leader', '1');
     return is_leader === '0';
   }
+
+  async changeCacheToken() {
+    const user_id = _.get(this.ctx, 'user._id');
+    if (!user_id) throw new BusinessError(ErrorCode.DATA_NOT_EXIST, '未找到用户信息');
+    const user = await this.model.findById(user_id).lean();
+    delete user.meta;
+    delete user.__v;
+    const token = this.ctx.service.util.jwt.encrypt(user);
+    return token;
+  }
 }
 
 module.exports = UserService;

+ 1 - 0
app/z_router/user/user.js

@@ -7,6 +7,7 @@ const rkey = 'user';
 const ckey = 'user.user';
 const keyZh = '用户';
 const routes = [
+  { method: 'post', path: `${rkey}/cct`, controller: `${ckey}.cct`, name: `${ckey}cct`, zh: `${keyZh}更换token` },
   { method: 'post', path: `${rkey}/toLoginByCode`, controller: `${ckey}.toLoginByCode`, name: `${ckey}toLoginByCode`, zh: `${keyZh}手机验证码登陆` },
   { method: 'post', path: `${rkey}/checkLoginCode`, controller: `${ckey}.checkLoginCode`, name: `${ckey}checkLoginCode`, zh: `${keyZh}手机验证码登陆校验` },