add mq and redis
This commit is contained in:
parent
91b5cce39b
commit
de01ffd7c7
80
src/modules/user/dtos/captcha.dto.ts
Normal file
80
src/modules/user/dtos/captcha.dto.ts
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
import { PickType } from '@nestjs/swagger';
|
||||||
|
|
||||||
|
import { DtoValidation } from '@/modules/core/decorator/dto.validation.decorator';
|
||||||
|
|
||||||
|
import { CaptchaDtoGroups } from '../constants';
|
||||||
|
|
||||||
|
import { UserCommonDto } from './user.common.dto';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送邮件或短信验证码消息
|
||||||
|
*/
|
||||||
|
export class CaptchaMessage extends PickType(UserCommonDto, ['phone', 'email']) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送短信验证码DTO类型
|
||||||
|
*/
|
||||||
|
export class PhoneCaptchaMessageDto extends PickType(CaptchaMessage, ['phone'] as const) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送邮件验证码DTO类型
|
||||||
|
*/
|
||||||
|
export class EmailCaptchaMessageDto extends PickType(CaptchaMessage, ['email'] as const) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过已登录账户发送验证码消息
|
||||||
|
*/
|
||||||
|
export class UserCaptchaMessageDto extends PickType(UserCommonDto, ['type']) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过用户凭证发送验证码消息
|
||||||
|
*/
|
||||||
|
export class CredentialCaptchaMessageDto extends PickType(UserCommonDto, ['credential']) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送登录验证码短信
|
||||||
|
*/
|
||||||
|
@DtoValidation({ groups: [CaptchaDtoGroups.PHONE_LOGIN] })
|
||||||
|
export class LoginPhoneCaptchaDto extends PhoneCaptchaMessageDto {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送登录验证码邮件
|
||||||
|
*/
|
||||||
|
@DtoValidation({ groups: [CaptchaDtoGroups.EMAIL_LOGIN] })
|
||||||
|
export class LoginEmailCaptchaDto extends EmailCaptchaMessageDto {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送注册验证码短信
|
||||||
|
*/
|
||||||
|
@DtoValidation({ groups: [CaptchaDtoGroups.PHONE_REGISTER] })
|
||||||
|
export class RegisterPhoneCaptchaDto extends PhoneCaptchaMessageDto {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送注册验证码邮件
|
||||||
|
*/
|
||||||
|
@DtoValidation({ groups: [CaptchaDtoGroups.PHONE_REGISTER] })
|
||||||
|
export class RegisterEmailCaptchaDto extends EmailCaptchaMessageDto {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送找回密码短信
|
||||||
|
*/
|
||||||
|
@DtoValidation({ groups: [CaptchaDtoGroups.EMAIL_RETRIEVE_PASSWORD] })
|
||||||
|
export class RetrievePasswordPhoneCaptchaDto extends PhoneCaptchaMessageDto {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送找回密码邮件
|
||||||
|
*/
|
||||||
|
@DtoValidation({ groups: [CaptchaDtoGroups.EMAIL_RETRIEVE_PASSWORD] })
|
||||||
|
export class RetrievePasswordEmailCaptchaDto extends EmailCaptchaMessageDto {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送手机绑定短信
|
||||||
|
*/
|
||||||
|
@DtoValidation({ groups: [CaptchaDtoGroups.BOUND_PHONE] })
|
||||||
|
export class BoundPhoneCaptchaDto extends PhoneCaptchaMessageDto {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送邮箱绑定邮件
|
||||||
|
*/
|
||||||
|
@DtoValidation({ groups: [CaptchaDtoGroups.BOUND_EMAIL] })
|
||||||
|
export class BoundEmailCaptchaDto extends EmailCaptchaMessageDto {}
|
Loading…
Reference in New Issue
Block a user