sdk:添加获取服务器列表、本地屏蔽词库
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { Controller } from 'egg';
|
||||
import { GetGuildInfoByUserParam, GuildNameCallBackParam, PayCallback37Data, RoleNameCallBackParam } from '../domain/sdk';
|
||||
import { GetGuildInfoByUserParam, GetServerListParam, GuildNameCallBackParam, PayCallback37Data, RoleNameCallBackParam } from '../domain/sdk';
|
||||
|
||||
export default class SdkController extends Controller {
|
||||
|
||||
@@ -32,4 +32,12 @@ export default class SdkController extends Controller {
|
||||
ctx.body = await ctx.service.sdk.getGuildByUser(params);
|
||||
return;
|
||||
}
|
||||
|
||||
public async getServerList() {
|
||||
const { ctx } = this;
|
||||
|
||||
const params = new GetServerListParam(ctx.method == 'GET'? ctx.query: ctx.request.body);
|
||||
ctx.body = await ctx.service.sdk.getServerList(params);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,5 +30,6 @@ export default (app: Application) => {
|
||||
router.get('/cb/treatusername', controller.sdk.treatRoleName);
|
||||
router.get('/cb/treatguildname', controller.sdk.treatGuildName);
|
||||
router.get('/cb/getguildbyuser', controller.sdk.getGuildByUser);
|
||||
|
||||
router.get('/cb/getserverlist', controller.sdk.getServerList);
|
||||
router.post('/cb/getserverlist', controller.sdk.getServerList);
|
||||
};
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
|
||||
import { Service } from 'egg';
|
||||
import { REDIS_KEY, PAY_37_CALLBACK_CODE, SDK_37_CONST, ORDER_STATE, SDK_37_TREAT_CODE } from '@consts';
|
||||
import { GetGuildInfoByUserParam, GuildNameCallBackParam, PayCallback37Data, RoleNameCallBackParam } from '../domain/sdk';
|
||||
import { REDIS_KEY, PAY_37_CALLBACK_CODE, SDK_37_CONST, ORDER_STATE, SDK_37_TREAT_CODE, SERVER_STATUS } from '@consts';
|
||||
import { GetGuildInfoByUserParam, GetServerListParam, GuildNameCallBackParam, PayCallback37Data, RoleNameCallBackParam } from '../domain/sdk';
|
||||
import { RedisClient } from 'redis';
|
||||
import { get37Md5Sign, get37PostMd5Sign, getChannelId, getRedisSubChannel } from '../pubUtils/sdkUtil';
|
||||
import { get37GetServerMd5Sign, get37Md5SignA, get37Md5SignB, getChannelId, getRedisSubChannel } from '../pubUtils/sdkUtil';
|
||||
import { UserOrderModel } from '@db/UserOrder';
|
||||
import { nowSeconds } from 'app/pubUtils/timeUtil';
|
||||
import { RoleModel } from '@db/Role';
|
||||
@@ -12,6 +12,8 @@ import { resResult } from 'app/pubUtils/util';
|
||||
import { UserModel } from '@db/User';
|
||||
import { UserGuildModel } from '@db/UserGuild';
|
||||
import { GuildModel } from '@db/Guild';
|
||||
import { ServerlistModel } from '@db/Serverlist';
|
||||
import moment = require('moment');
|
||||
|
||||
/**
|
||||
* Test Service
|
||||
@@ -19,7 +21,7 @@ import { GuildModel } from '@db/Guild';
|
||||
export default class Sdk extends Service {
|
||||
|
||||
public check37Sign(params: PayCallback37Data) {
|
||||
let sign = get37Md5Sign(params.getBody(), SDK_37_CONST.PAY_KEY);
|
||||
let sign = get37Md5SignA(params.getBody(), SDK_37_CONST.PAY_KEY);
|
||||
console.log('******37Sign', sign);
|
||||
return sign == params.sign;
|
||||
}
|
||||
@@ -87,7 +89,7 @@ export default class Sdk extends Service {
|
||||
|
||||
|
||||
public check37WordsSign(params: RoleNameCallBackParam|GuildNameCallBackParam|GetGuildInfoByUserParam) {
|
||||
let sign = get37PostMd5Sign(params.getBody(), SDK_37_CONST.CHAT_KEY);
|
||||
let sign = get37Md5SignB(params.getBody(), SDK_37_CONST.CHAT_KEY);
|
||||
console.log('******37Sign', sign);
|
||||
return sign == params.sign;
|
||||
}
|
||||
@@ -206,4 +208,54 @@ export default class Sdk extends Service {
|
||||
|
||||
return resResult(check, []);
|
||||
}
|
||||
|
||||
private valiedateGetServerList(params:GetServerListParam) {
|
||||
if(!params.checkParams()) return SDK_37_TREAT_CODE.WRONG_PARAMS;
|
||||
if(params.gid != SDK_37_CONST.GAME_ID) return SDK_37_TREAT_CODE.WRONG_PARAMS
|
||||
|
||||
let sign = get37GetServerMd5Sign(params, SDK_37_CONST.LOGIN_KEY);
|
||||
if(sign != params.sign) return SDK_37_TREAT_CODE.SIGN_ERR;
|
||||
|
||||
if(nowSeconds() - params.time > 15 * 60) {
|
||||
return SDK_37_TREAT_CODE.TIME_IS_EXPIRED;
|
||||
}
|
||||
return SDK_37_TREAT_CODE.SUCCESS;
|
||||
}
|
||||
|
||||
public async getServerList(params:GetServerListParam) {
|
||||
let validate = this.valiedateGetServerList(params);
|
||||
if(validate.code != SDK_37_TREAT_CODE.SUCCESS.code) {
|
||||
return {
|
||||
state: 0,
|
||||
data: null,
|
||||
msg: resResult(validate).msg
|
||||
}
|
||||
}
|
||||
|
||||
let servers = await ServerlistModel.getAllServerList();
|
||||
let data = servers.map(server => {
|
||||
let statue = 0;
|
||||
switch(server.status) {
|
||||
case SERVER_STATUS.MAINTENANCE:
|
||||
statue = 0; break;
|
||||
case SERVER_STATUS.WILL_OPEN:
|
||||
statue = 1; break;
|
||||
case SERVER_STATUS.NEW:
|
||||
case SERVER_STATUS.HOT:
|
||||
statue = 2; break;
|
||||
}
|
||||
return {
|
||||
dsid: server.id,
|
||||
dsname: server.name,
|
||||
start_time: moment(server.openTime, 'YYYY-MM-DD HH:mm:ss'),
|
||||
statue
|
||||
}
|
||||
})
|
||||
|
||||
return {
|
||||
state: 1,
|
||||
data,
|
||||
msg: '成功'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user