...
|
...
|
@@ -15,39 +15,44 @@ class UserController extends Context { |
|
|
this.userService = this.instance(UserService);
|
|
|
}
|
|
|
login(req, res, next) {
|
|
|
this.userService.login(req.body.username, req.body.password).then(user => {
|
|
|
this.userService.getShops(user.pid).then(result => {
|
|
|
if (result.code === 200) {
|
|
|
this.syncSession(req, Object.assign(user, {
|
|
|
shops: result.data
|
|
|
}));
|
|
|
let currentShop = _.first(result.data);
|
|
|
Promise.all([
|
|
|
this.userService.login(req.body.username, req.body.password),
|
|
|
this.userService.shopLogin(req.body.username, req.body.password)]).then(allResult => {
|
|
|
let user = allResult[0];
|
|
|
let sess = allResult[1];
|
|
|
|
|
|
return res.json({
|
|
|
code: 200,
|
|
|
data: {
|
|
|
name: user.account,
|
|
|
email: user.email,
|
|
|
createDate: user.create_date,
|
|
|
shops: _.map(result.data, shop => {
|
|
|
return {
|
|
|
id: shop.id,
|
|
|
shopName: shop.shopName
|
|
|
};
|
|
|
}),
|
|
|
currentShop: {
|
|
|
shopName: currentShop.shopName,
|
|
|
id: currentShop.id
|
|
|
this.userService.getShops(user.pid).then(result => {
|
|
|
if (result.code === 200) {
|
|
|
this.syncSession({req, res}, Object.assign(user, {
|
|
|
shops: result.data
|
|
|
}), sess);
|
|
|
let currentShop = _.first(result.data);
|
|
|
|
|
|
return res.json({
|
|
|
code: 200,
|
|
|
data: {
|
|
|
name: user.account,
|
|
|
email: user.email,
|
|
|
createDate: user.create_date,
|
|
|
shops: _.map(result.data, shop => {
|
|
|
return {
|
|
|
id: shop.id,
|
|
|
shopName: shop.shopName
|
|
|
};
|
|
|
}),
|
|
|
currentShop: {
|
|
|
shopName: currentShop.shopName,
|
|
|
id: currentShop.id
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
} else {
|
|
|
return res.json(result);
|
|
|
}
|
|
|
});
|
|
|
}, err => {
|
|
|
return res.json(err);
|
|
|
}).catch(next);
|
|
|
});
|
|
|
} else {
|
|
|
return res.json(result);
|
|
|
}
|
|
|
});
|
|
|
}, err => {
|
|
|
return res.json(err);
|
|
|
}).catch(next);
|
|
|
}
|
|
|
|
|
|
logout(req, res) {
|
...
|
...
|
@@ -60,9 +65,15 @@ class UserController extends Context { |
|
|
});
|
|
|
}
|
|
|
|
|
|
syncSession(req, user) {
|
|
|
req.session.USER = user;
|
|
|
req.session.LOGIN_UID = user.pid; // pid 为用户名
|
|
|
syncSession(context, user, sess) {
|
|
|
console.log(sess)
|
|
|
context.req.session.USER = user;
|
|
|
context.req.session.LOGIN_UID = user.pid; // pid 为用户名
|
|
|
_.each(sess, (v, k) => {
|
|
|
context.res.cookie(k, v, {
|
|
|
path: '/'
|
|
|
});
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
|
...
|
...
|
|