|
@@ -2,6 +2,7 @@
|
|
|
|
|
|
const assert = require('assert');
|
|
|
const _ = require('lodash');
|
|
|
+const { ObjectId } = require('mongoose').Types;
|
|
|
const { CrudService } = require('naf-framework-mongoose/lib/service');
|
|
|
const { BusinessError, ErrorCode } = require('naf-core').Error;
|
|
|
const jwt = require('jsonwebtoken');
|
|
@@ -33,9 +34,15 @@ class LoginService extends CrudService {
|
|
|
// 取出用户的类型,根据用户类型返回相应信息
|
|
|
const state = uuid();
|
|
|
const key = `free:auth:state:${state}`;
|
|
|
+ const _roles = [];
|
|
|
+ for (const elm of user.roles) {
|
|
|
+ const role = await this.rmodel.findById({ _id: ObjectId(elm) });
|
|
|
+ if (role) {
|
|
|
+ _roles.push(role);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ user.roles = _roles;
|
|
|
const token = await this.createJwt(user);
|
|
|
- console.log('key--' + key);
|
|
|
- console.log('token--' + token);
|
|
|
await this.app.redis.set(key, token, 'EX', 60 * 60 * 24);
|
|
|
return { key };
|
|
|
}
|