修改状态码机制,初步改造web-server中接口返回

This commit is contained in:
liangtongchuan
2020-10-16 16:02:34 +08:00
parent c8a826466b
commit fefd2dfdd5
7 changed files with 46 additions and 34 deletions

View File

@@ -1,6 +1,6 @@
import { RoleModel } from '@db/Role';
import { UserModel } from '@db/User';
import { SMS_IN_60S, SMS_CNT_LIMIT, STATUS_SUC, STATUS_WRONG_PARMS, SMS_INVALID, ROLE_NOT_FOUND } from '@consts/statusCode';
import { STATUS } from '@consts/statusCode';
import { smsModel } from '@db/Sms';
import { Service } from 'egg';
import Counter from '@db/Counter';
@@ -51,10 +51,10 @@ export default class Auth extends Service {
const sms = await smsModel.findByTel(tel, false);
if (sms) {
if (await sms.timeLimit(10000)) {
return this.ctx.service.utils.exceptionResult(SMS_IN_60S);
return this.ctx.service.utils.resResult(STATUS.SMS_IN_60S);
}
if (await sms.cntLimit(8)) {
return this.ctx.service.utils.exceptionResult(SMS_CNT_LIMIT);
return this.ctx.service.utils.resResult(STATUS.SMS_CNT_LIMIT);
}
}
@@ -68,7 +68,7 @@ export default class Auth extends Service {
const smsResult = await this.sendSmsCodeByGuodu(tel, code);
console.log(smsResult);
await smsModel.updateByTel(tel, code, false, new Date(), sms?.hasSendToday() ? sms.countToday + 1 : 1);
return this.ctx.service.utils.exceptionResult(STATUS_SUC);
return this.ctx.service.utils.resResult(STATUS.SUCCESS);
}
/**
@@ -87,19 +87,19 @@ export default class Auth extends Service {
return telVerify;
}
if (!_.isString(code) || code.length !== 6) {
return ctx.service.utils.exceptionResult(STATUS_WRONG_PARMS);
return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
}
// 手机验证码核验
const smsValid: boolean = await smsModel.validateSms(tel, code);
if (!smsValid) {
return ctx.service.utils.exceptionResult(SMS_INVALID);
return ctx.service.utils.resResult(STATUS.SMS_INVALID);
}
// 用户注册登录
const token = ctx.service.utils.generateStr(256);
const user = await UserModel.updateToken(tel, token, platform, pkgName, serverType);
return { status: STATUS_SUC.code, data: { token, uid: user?.uid } };
return ctx.service.utils.resResult(STATUS.SUCCESS, { token, uid: user?.uid });
}
public async checkRole(serverId: number) {
@@ -107,9 +107,9 @@ export default class Auth extends Service {
const { uid } = ctx;
const role = await RoleModel.findByUid(uid, serverId);
if (role) {
return { status: STATUS_SUC.code, data: { roleId: role.roleId } };
return ctx.service.utils.resResult(STATUS.SUCCESS, { roleId: role.roleId });
}
return ctx.service.utils.exceptionResult(ROLE_NOT_FOUND);
return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
}
public async createRole(serverId: number, roleName: string) {
@@ -121,8 +121,8 @@ export default class Auth extends Service {
const seqId = await Counter.getNewCounter('role') || -1;
const role = await RoleModel.createRole(uid, serverId, { roleId, code, roleName, seqId });
if (role) {
return { status: STATUS_SUC.code, data: { roleId: role.roleId } };
return ctx.service.utils.resResult(STATUS.SUCCESS, { roleId: role.roleId });
}
return ctx.service.utils.exceptionResult(ROLE_NOT_FOUND);
return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
}
}

View File

@@ -1,4 +1,5 @@
import { Service } from 'egg';
import { resResult as pubResult } from '../pubUtils/util';
const csprng = require('csprng');
/**
* Utils Service
@@ -35,8 +36,7 @@ export default class Utils extends Service {
return code;
}
public exceptionResult(status) {
const { code, simStr } = status;
return { status: code, data: simStr };
public resResult(status: {code: number, simStr: string}, data?) {
return pubResult(status, data);
}
}