| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- const {
- postRegister,
- preRegisterWithPassword
- } = require('../../lib/utils/register')
- const {
- verifyCaptcha
- } = require('../../lib/utils/captcha')
- const {
- CAPTCHA_SCENE
- } = require('../../common/constants')
- /**
- * 注册普通用户
- * @tutorial https://uniapp.dcloud.net.cn/uniCloud/uni-id-pages.html#register-user
- * @param {Object} params
- * @param {String} params.username 用户名
- * @param {String} params.password 密码
- * @param {String} params.captcha 图形验证码
- * @param {String} params.nickname 昵称
- * @param {String} params.inviteCode 邀请码
- * @returns
- */
- module.exports = async function (params = {}) {
- const schema = {
- username: 'username',
- password: 'password',
- captcha: 'string',
- nickname: {
- required: false,
- type: 'nickname'
- },
- inviteCode: {
- required: false,
- type: 'string'
- }
- }
- this.middleware.validate(params, schema)
- const {
- username,
- password,
- nickname,
- captcha,
- inviteCode
- } = params
- await verifyCaptcha.call(this, {
- captcha,
- scene: CAPTCHA_SCENE.REGISTER
- })
- const {
- user,
- extraData
- } = await preRegisterWithPassword.call(this, {
- user: {
- username
- },
- password
- })
- return postRegister.call(this, {
- user,
- extraData: {
- ...extraData,
- nickname
- },
- inviteCode
- })
- }
|