手机号固定写进数据库
This commit is contained in:
@@ -26,6 +26,9 @@ export default class Sms extends BaseModel {
|
|||||||
@prop({ required: true })
|
@prop({ required: true })
|
||||||
countToday: number;
|
countToday: number;
|
||||||
|
|
||||||
|
@prop({ required: true })
|
||||||
|
isFixed: boolean;
|
||||||
|
|
||||||
public static async findByTel(tel: string, lean = true) {
|
public static async findByTel(tel: string, lean = true) {
|
||||||
const sms: SmsType = await smsModel.findOne({ tel }).lean(lean);
|
const sms: SmsType = await smsModel.findOne({ tel }).lean(lean);
|
||||||
return sms;
|
return sms;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { FIX_SMS_CODE_TELS, COUNTER, HERO_SYSTEM_TYPE } from '@consts';
|
import { COUNTER, HERO_SYSTEM_TYPE } from '@consts';
|
||||||
import { DEFAULT_HEROES } from '@consts';
|
import { DEFAULT_HEROES } from '@consts';
|
||||||
import { HeroModel } from '@db/Hero';
|
import { HeroModel } from '@db/Hero';
|
||||||
import { RoleModel } from '@db/Role';
|
import { RoleModel } from '@db/Role';
|
||||||
@@ -64,7 +64,7 @@ export default class Auth extends Service {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let code = '';
|
let code = '';
|
||||||
if (sms && (!sms.used || FIX_SMS_CODE_TELS.indexOf(tel) !== -1)) {
|
if (sms && (!sms.used || sms.isFixed)) {
|
||||||
code = sms.code;
|
code = sms.code;
|
||||||
} else {
|
} else {
|
||||||
code = this.ctx.service.utils.generateNum(6);
|
code = this.ctx.service.utils.generateNum(6);
|
||||||
@@ -94,16 +94,16 @@ export default class Auth extends Service {
|
|||||||
if (!_.isString(code) || code.length !== 6) {
|
if (!_.isString(code) || code.length !== 6) {
|
||||||
return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
}
|
}
|
||||||
// 指定手机号不检查验证码是否使用
|
|
||||||
if (FIX_SMS_CODE_TELS.indexOf(tel) === -1) {
|
// 手机验证码核验
|
||||||
// 手机验证码核验
|
const smsValid: boolean = await smsModel.validateSms(tel, code);
|
||||||
const smsValid: boolean = await smsModel.validateSms(tel, code);
|
if (!smsValid) {
|
||||||
if (!smsValid) {
|
|
||||||
return ctx.service.utils.resResult(STATUS.SMS_INVALID);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
const sms = await smsModel.findByTel(tel);
|
const sms = await smsModel.findByTel(tel);
|
||||||
if (!sms || sms.code !== code) {
|
if(sms && sms.isFixed) { // 固定手机号登录
|
||||||
|
if (sms.code !== code) {
|
||||||
|
return ctx.service.utils.resResult(STATUS.SMS_INVALID);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
return ctx.service.utils.resResult(STATUS.SMS_INVALID);
|
return ctx.service.utils.resResult(STATUS.SMS_INVALID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user