From 689adb3c5b56738b9d1e6ac9cda14758d3230496 Mon Sep 17 00:00:00 2001 From: chaosBreaking Date: Thu, 5 Sep 2019 16:16:50 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=B5=84=E9=87=91=E5=AF=86=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/modules/user/user.controller.js | 30 ++++++++++++++++++++++++++++- src/modules/user/user.model.js | 3 +++ src/modules/user/user.service.js | 10 ++++++++++ 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/src/modules/user/user.controller.js b/src/modules/user/user.controller.js index d771e30..ff0f1fa 100644 --- a/src/modules/user/user.controller.js +++ b/src/modules/user/user.controller.js @@ -1,6 +1,7 @@ const User = require('./user.model'); const MsgCode = require('../msgCode/msgCode.controller'); const changePwd = require('../sign/sign.controller').changePasswd; +const Crypto = require('../../utils/crypto'); module.exports = { changePwd, @@ -85,5 +86,32 @@ module.exports = { code: 500, error: JSON.stringify(err) })); - }, + }, + async checkFundPwd (req, res) { + const { userId } = res.locals.user; + return User.findById(userId).then(user => { + return res.json({ + code: 0, + data: user.fundPwd ? 1 : 0 + }); + }); + }, + async changeFundPwd (req, res) { + const { userId } = res.locals.user; + const { password, newPassword } = req.body; + return User.findById(userId).then(async user => { + const hashPasswd = Crypto.hash(password); + if (user.fundPwd !== hashPasswd) return res.json({ + code: 1, + msg: '原资金密码不正确' + }); + const newHashFundPwd = Crypto.hash(newPassword); + user.updateOne({ fundPwd: newHashFundPwd }).then(() => { + return res.json({ + code: 0, + msg: '修改成功' + }); + }); + }); + }, }; \ No newline at end of file diff --git a/src/modules/user/user.model.js b/src/modules/user/user.model.js index e0e016e..7c4a38e 100644 --- a/src/modules/user/user.model.js +++ b/src/modules/user/user.model.js @@ -12,6 +12,9 @@ const UserSchema = new mongoose.Schema({ type: String, required: true }, + fundPwd: { + type: String, + }, nickname: { type: String, required: false diff --git a/src/modules/user/user.service.js b/src/modules/user/user.service.js index a660667..d8862e3 100644 --- a/src/modules/user/user.service.js +++ b/src/modules/user/user.service.js @@ -26,6 +26,16 @@ const services = [ method: 'GET', controller: controller.getGroup }, + { + url: '/checkFundPwd', + method: 'GET', + controller: controller.checkFundPwd + }, + { + url: '/chFundPwd', + method: 'GET', + controller: controller.changeFundPwd + }, ]; module.exports = services.map(service => {