From 05c97a07c53323c0f11f9d7bd0091a751aae4e64 Mon Sep 17 00:00:00 2001 From: chaosBreaking Date: Sun, 1 Sep 2019 22:42:39 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20createNewUser=E5=BA=94=E8=AF=A5=E8=BF=94?= =?UTF-8?q?=E5=9B=9Epromise=EF=BC=9B=E6=B7=BB=E5=8A=A0=E8=A6=81=E6=B1=82in?= =?UTF-8?q?viter=E7=9A=84=E6=B3=A8=E5=86=8C=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/modules/sign/sign.controller.js | 43 +++++++++++++++++++++++++++++ src/modules/user/user.controller.js | 6 ++-- 2 files changed, 45 insertions(+), 4 deletions(-) diff --git a/src/modules/sign/sign.controller.js b/src/modules/sign/sign.controller.js index 66f1584..5da0d7e 100644 --- a/src/modules/sign/sign.controller.js +++ b/src/modules/sign/sign.controller.js @@ -64,6 +64,49 @@ module.exports = { } }; }), + signUpReqInviter: inject(function(SysConfig) { + const { JWT_SECRET, PWD_HASH_SALT } = SysConfig; + return async (req, res) => { + let { phone, code, inviter, password } = req.body; + if (!phone || !code || !password || !inviter) return res.json({ + code: 1, + msg: 'Missing required parameters' + }); + const isCodeValid = await Code.verifyCode({ id: phone, code, type: CODE_TYPE['signUp'] }); + password = Crypto.hash(password, { salt: PWD_HASH_SALT }); + if (isCodeValid) { + await createNewUser({ + phone, + inviter, + password + }).then(user => { + const token = createToken({ + userId: user.id + }, JWT_SECRET, {}); + res.json({ + code: 0, + msg: 'success', + data: { + //刚注册,需要返回的应该只有token,其他的没意义 + token + } + }); + }) + .catch(err => { + mylog.error(err); + res.json({ + code: 3, + msg: JSON.stringify(err), + }); + }); + } else { + res.json({ + code: 2, + msg: 'Invalid code', + }); + } + }; + }), signUp: inject(function(SysConfig) { const { JWT_SECRET, PWD_HASH_SALT } = SysConfig; return async (req, res) => { diff --git a/src/modules/user/user.controller.js b/src/modules/user/user.controller.js index 37bf8c8..a51b2c8 100644 --- a/src/modules/user/user.controller.js +++ b/src/modules/user/user.controller.js @@ -6,11 +6,9 @@ module.exports = { changePwd, async createNewUser (data) { let { phone, inviter = '', password } = data; - await (new User({ phone, inviter, password })).save().then(user => { - return user; - }).catch(err => { + return await (new User({ phone, inviter, password })).save().then(user => user).catch(err => { mylog.error('创建新用户失败', err); - throw new Error('创建新用户失败', err); + throw new Error('创建新用户失败', err.errmsg); }); }, async getUserInfo (req, res) {