后台:权限
This commit is contained in:
@@ -2,8 +2,6 @@ import { Service } from 'egg';
|
||||
import { STATUS, ACTIVITY_TYPE } from '@consts';
|
||||
import { ActivityModel } from '@db/Activity';
|
||||
import { ActivityGroupModel } from '@db/ActivityGroup';
|
||||
import { ServerlistModel } from '@db/Serverlist';
|
||||
// import { GMUserType } from '@db/GMUser';
|
||||
import { SignInData } from '@domain/activityField/signInField';
|
||||
import { ActivityGroupTypeModel } from '@db/ActivityGroupType';
|
||||
import { ActivityTaskPointModel } from '@db/ActivityTaskPoint';
|
||||
@@ -72,69 +70,6 @@ export default class Activity extends Service {
|
||||
return 0
|
||||
}
|
||||
|
||||
private async checkActivityGroupType(groupId: number, aids: number[], ctx) {
|
||||
|
||||
let activityGroup = await ActivityGroupModel.findGroupData(groupId);
|
||||
if(!activityGroup) return ctx.service.utils.resResult(STATUS.GM_ACTIVITY_GROUP_NOT_FOUND);
|
||||
if(activityGroup.type != 0) {
|
||||
let activityGroupType = await ActivityGroupTypeModel.findByGroupType(activityGroup.type);
|
||||
if(!activityGroupType) return ctx.service.utils.resResult(STATUS.GM_ACTIVITY_GROUP_TYPE_NOT_FOUND);
|
||||
let dic = activityGroupType.activityTypes;
|
||||
let activities = await ActivityModel.findActivityByIds(aids);
|
||||
for(let { type } of activities) {
|
||||
let index = dic.findIndex(cur => cur.activityType == type);
|
||||
if(index == -1) {
|
||||
return ctx.service.utils.resResult(STATUS.GM_ACTIVITY_NOT_FIT_GROUP_TYPE);
|
||||
} else {
|
||||
dic.splice(index, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
// public async updateActivity(activityId: number | string, groupId: number, beginTime: number, endTime: number, type: number, data: string) {
|
||||
// const { ctx } = this;
|
||||
// let gmuser: GMUserType = ctx.user;
|
||||
// if (!type || !data) {
|
||||
// return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// }
|
||||
// try {
|
||||
// let result = JSON.parse(data);
|
||||
// ctx.service.utils.checkActivityData(result, type);
|
||||
// let aids: number[] = [];
|
||||
// if (typeof activityId == 'number') {
|
||||
// aids.push(activityId);
|
||||
// } else {
|
||||
// activityId.split(',').forEach(aidStr => {
|
||||
// aids.push(parseInt(aidStr));
|
||||
// });
|
||||
// }
|
||||
|
||||
// let checkResult = await this.checkActivityGroupType(groupId, aids, ctx);
|
||||
// if(checkResult) return checkResult;
|
||||
|
||||
// let activities = await ActivityModel.addActivity(aids, groupId, beginTime ? new Date(beginTime) : undefined, endTime ? new Date(endTime) : undefined, type, data, gmuser.uid);
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
// activity: activities
|
||||
// })
|
||||
|
||||
// } catch (e) {
|
||||
// return ctx.service.utils.resResult(STATUS.INTERNAL_ERR, null, (<Error>e).stack);
|
||||
// }
|
||||
// }
|
||||
|
||||
public async deleteActivity(activityId: number) {
|
||||
const { ctx } = this;
|
||||
const result = await ActivityModel.deleteActivity(activityId, ctx.user?.uid);
|
||||
if (result) {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
} else {
|
||||
return ctx.service.utils.resResult(STATUS.ACTIVITY_MISSING);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获得活动组列表
|
||||
*/
|
||||
@@ -152,41 +87,6 @@ export default class Activity extends Service {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新活动组
|
||||
*/
|
||||
public async updateActivityGroup(groupId: number, groupName: string, activityIds: number[], serverIds: number[], type: number) {
|
||||
const { ctx } = this;
|
||||
try {
|
||||
let groupTypeObj = await ActivityGroupTypeModel.findByGroupType(type);
|
||||
if(!groupTypeObj) return ctx.service.utils.resResult(STATUS.GM_ACTIVITY_GROUP_TYPE_NOT_FOUND);
|
||||
|
||||
await ActivityGroupModel.updateGroup(groupId, {groupName, type}, ctx.user?.uid);
|
||||
|
||||
// 更新activities
|
||||
let checkResult = await this.checkActivityGroupType(groupId, activityIds, ctx);
|
||||
if(checkResult) return checkResult;
|
||||
await ActivityGroupModel.setActivitiesToGroupData(groupId, activityIds, ctx.user?.uid);
|
||||
|
||||
// 封信servers
|
||||
await ServerlistModel.pullByGroupId(groupId);
|
||||
let servers = await ServerlistModel.findServerByIds(serverIds);
|
||||
for(let server of servers) {
|
||||
let pushArr: number[] = [], pullArr: number[] = [];
|
||||
let activityGroupId = server.activityGroupId||[];
|
||||
if(!activityGroupId.includes(groupId)) {
|
||||
pushArr.push(groupId);
|
||||
}
|
||||
await ServerlistModel.updateActivityGroup(server._id, pushArr, pullArr);
|
||||
}
|
||||
await ActivityGroupModel.updateServerData(groupId, serverIds, ctx.user?.uid);
|
||||
|
||||
} catch(e) {
|
||||
return ctx.service.utils.resResult(STATUS.INTERNAL_ERR, null, (<Error>e).stack);
|
||||
}
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS)
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建一个新组
|
||||
*/
|
||||
@@ -247,17 +147,6 @@ export default class Activity extends Service {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
}
|
||||
|
||||
public async getGroupDataById(groupId: number) {
|
||||
const { ctx } = this;
|
||||
let activityGroup = await ActivityGroupModel.findGroupData(groupId);
|
||||
if(!activityGroup) return ctx.service.utils.resResult(STATUS.GM_ACTIVITY_GROUP_NOT_FOUND);
|
||||
let { type, activities: activityIds = [] } = activityGroup;
|
||||
let activities = await ActivityModel.findActivityByIds(activityIds);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
data: { groupId, groupType: type, activities }
|
||||
});
|
||||
}
|
||||
|
||||
public async getActivityTaskPoint(page: number, pageSize: number, sortField: string, sortOrder: string, form: {taskType?: number, taskId?: number, activityId?: number}) {
|
||||
const { ctx } = this;
|
||||
const list = await ActivityTaskPointModel.findByCondition(page, pageSize, sortField, sortOrder, form);
|
||||
|
||||
@@ -23,32 +23,6 @@ import { DicServerName } from '@pubUtils/dictionary/DicServerName';
|
||||
*/
|
||||
export default class Game extends Service {
|
||||
|
||||
/**
|
||||
* 获取正式服,测试服,开发服等环境
|
||||
*/
|
||||
// public async getServerListByEnv() {
|
||||
// const { ctx, app } = this;
|
||||
// let env = app.config.env
|
||||
// let serverEnv = await GameModel.getServerEnvList();
|
||||
// let curEnv = serverEnv.find(cur => cur.env == env);
|
||||
// const list = await ServerlistModel.findByServerType(curEnv?.serverType);
|
||||
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
// list
|
||||
// });
|
||||
// }
|
||||
|
||||
// public async getServerList(page: number, pageSize: number, sortField: string, sortOrder: string, form: { id?: number, serverId?: string|number, name?: string, groupName?: string, groupId?: number, serverType?: string } = {}) {
|
||||
// const { ctx } = this;
|
||||
|
||||
// const list = await ServerlistModel.findByCondition(page, pageSize, sortField, sortOrder, form);
|
||||
// const total = await ServerlistModel.countByCondition( form )
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
// list, total
|
||||
// });
|
||||
// }
|
||||
|
||||
|
||||
public async getRegions() {
|
||||
const { ctx } = this;
|
||||
|
||||
@@ -130,107 +104,6 @@ export default class Game extends Service {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { whitelist });
|
||||
}
|
||||
|
||||
// public async getMaintenanceList(page: number, pageSize: number, sortField: string, sortOrder: string, form: { isOpen?: boolean } = {}) {
|
||||
// const { ctx } = this;
|
||||
|
||||
// const list = await MaintenanceModel.findByCondition(page, pageSize, sortField, sortOrder, form);
|
||||
// const total = await MaintenanceModel.countByCondition( form )
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
// list: list.map(cur => {
|
||||
// let marquee = <MarqueeType>cur.marquee;
|
||||
// let notice = <NoticeType>cur.notice;
|
||||
// return {
|
||||
// ...cur, startTime: cur.startTime.getTime(),
|
||||
// marquee: marquee?{...marquee, startTime: marquee.startTime.getTime(), endTime: marquee.endTime.getTime()}:null,
|
||||
// notice: notice?{...notice, showStartTime: notice.showStartTime.getTime(), showEndTime: notice.showEndTime.getTime()}:null
|
||||
// }
|
||||
// }), total
|
||||
// });
|
||||
// }
|
||||
|
||||
// public async updateMaintenance(values: MaintenanceTypeParam, marquee: MarqueeParam, notice: NoticeTypeParam, mail: GMMailTypeParam) {
|
||||
// const { ctx } = this;
|
||||
// if(values.code == 'new') {
|
||||
// let serverEnv = await GameModel.getServerEnvList();
|
||||
// let curEnv = serverEnv.find(cur => cur.env == this.app.config.env);
|
||||
|
||||
// let marqueeResult = await MarqueeModel.createData({ ...marquee, serverIds: values.serverIds, type: MARQUEE_TYPE.SCHEDULE, isRunning: false }, ctx.user?.uid);
|
||||
// let noticeResult = await NoticeModel.updateNotice('new', { ...notice, type: 1, sort: 1000, serverType: curEnv?.serverType, isEnable: false }, ctx.user?.uid);
|
||||
// // let mailResult = await GMMailModel.addMail(mail, ctx.user?.uid);
|
||||
// await MaintenanceModel.createData(values, marqueeResult, noticeResult, null);
|
||||
// } else {
|
||||
// let maintenanceResult = await MaintenanceModel.updateData(values.code, values, ctx.user?.uid);
|
||||
// if(!maintenanceResult) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// let marqueeResult = <MarqueeType>maintenanceResult.marquee;
|
||||
// let noticeResult = <NoticeType>maintenanceResult.notice;
|
||||
// let mailResult = <GMMailType>maintenanceResult.mail;
|
||||
// if(marqueeResult) await MarqueeModel.updateData(marqueeResult.code, marquee, ctx.user?.uid);
|
||||
// if(noticeResult) await NoticeModel.updateNotice(noticeResult.id, notice, ctx.user?.uid);
|
||||
// if(mailResult) await GMMailModel.updateMailById(mailResult._id, mail, ctx.user?.uid);
|
||||
// }
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// }
|
||||
|
||||
// public async getServerStategyList(page: number, pageSize: number, sortField: string, sortOrder: string, form: { id?: number, name?: string }) {
|
||||
// const { ctx } = this;
|
||||
|
||||
// const list = await ServerStategyModel.findByCondition(page, pageSize, sortField, sortOrder, form);
|
||||
// const total = await ServerStategyModel.countByCondition( form )
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
// list, total
|
||||
// });
|
||||
// }
|
||||
|
||||
// public async updateServerStategy(values: ServerStategyTypeParam & {id: string|number}) {
|
||||
// const { ctx } = this;
|
||||
|
||||
// try {
|
||||
// await ServerStategyModel.updateServerStategy(values, ctx.user?.uid);
|
||||
|
||||
// } catch(e) {
|
||||
// return ctx.service.utils.resResult(STATUS.INTERNAL_ERR, null, (<Error>e).stack);
|
||||
// }
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// }
|
||||
|
||||
// public async createNewServer(name: string, openTime: number, serverType: string, stategyId: number ) {
|
||||
// const { ctx } = this;
|
||||
|
||||
// try {
|
||||
// let stategy = await ServerStategyModel.findBySId(stategyId);
|
||||
// if(!stategy) return ctx.service.utils.resResult(STATUS.GM_STATEGY_NOT_FOUND);
|
||||
|
||||
// await ServerlistModel.newServer({ name, openTime: new Date(openTime), serverType }, stategy, ctx.user?.uid);
|
||||
|
||||
// } catch(e) {
|
||||
// return ctx.service.utils.resResult(STATUS.INTERNAL_ERR, null, (<Error>e).stack);
|
||||
// }
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// }
|
||||
|
||||
// public async updateServer(id: number, name: string, groupName: string, serverStatus: number ) {
|
||||
// const { ctx } = this;
|
||||
|
||||
// try {
|
||||
// let server = await ServerlistModel.findByServerId(id);
|
||||
// if(!server) return ctx.service.utils.resResult(STATUS.GM_SERVER_NOT_FOUND);
|
||||
|
||||
// if(server.groupName != groupName) {
|
||||
// await ServerlistModel.updateGroupName(server.groupId, groupName);
|
||||
// }
|
||||
// let update: ServerlistUpdate = {};
|
||||
// if(name) update['name'] = name;
|
||||
// if(groupName) update['groupName'] = groupName;
|
||||
// if(serverStatus) update['serverStatus'] = serverStatus;
|
||||
|
||||
// await ServerlistModel.updateByServerId(id, update);
|
||||
|
||||
// } catch(e) {
|
||||
// return ctx.service.utils.resResult(STATUS.INTERNAL_ERR, null, (<Error>e).stack);
|
||||
// }
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// }
|
||||
|
||||
public async getDicHero() {
|
||||
let list: DicHero[] = [];
|
||||
for(let [heroId, hero] of gameData.hero) {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import { GMUserModel } from '@db/GMUser';
|
||||
import { GMGroupModel } from '@db/GMGroup';
|
||||
import { GMUserGroupModel } from '@db/GMUserGroup';
|
||||
import { ApiModel } from '@db/Api';
|
||||
import { Service } from 'egg';
|
||||
import { STATUS } from '@consts';
|
||||
import { gameData } from '@pubUtils/data';
|
||||
|
||||
/**
|
||||
* Test Service
|
||||
@@ -24,9 +24,9 @@ export default class GMUsers extends Service {
|
||||
if(!user) {
|
||||
return ctx.service.utils.resResult(STATUS.GM_ERR_PASSWORD);
|
||||
}
|
||||
let userGroups = await GMUserGroupModel.getUserGroupByUid(user.uid, 1);
|
||||
let userGroup = await GMUserGroupModel.getUserGroupByUid(user.uid);
|
||||
let group = new Array();
|
||||
for(let userGroup of userGroups) {
|
||||
if(userGroup) {
|
||||
let g = await GMGroupModel.getGroupById(userGroup.groupId);
|
||||
if(g) group.push(g.group);
|
||||
}
|
||||
@@ -42,8 +42,15 @@ export default class GMUsers extends Service {
|
||||
|
||||
public async currentUser() {
|
||||
const {ctx} = this;
|
||||
console.log('*****', ctx.user)
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, {user: ctx.user});
|
||||
let user = ctx.user;
|
||||
let userGroup = await GMUserGroupModel.getUserGroupByUid(user.uid);
|
||||
let group = new Array();
|
||||
if(userGroup) {
|
||||
let g = await GMGroupModel.getGroupById(userGroup.groupId);
|
||||
if(g) group.push(g.group);
|
||||
}
|
||||
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { user: ctx.user, group });
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -66,23 +73,23 @@ export default class GMUsers extends Service {
|
||||
* 后台账号列表
|
||||
*/
|
||||
public async getGmList() {
|
||||
// const {ctx} = this;
|
||||
let list = await GMUserModel.getGmAccountList();
|
||||
if(list) {
|
||||
let result = new Array();
|
||||
for(let user of list) {
|
||||
let uid = user.uid;
|
||||
let userGroupList = await GMUserGroupModel.getUserGroupByUid(uid, 1);
|
||||
let groupArr = new Array(), groupStrArr = new Array();
|
||||
for(let userGroup of userGroupList) {
|
||||
let userGroup = await GMUserGroupModel.getUserGroupByUid(uid);
|
||||
let groupId = 0, groupStr = '暂无', envs = [];
|
||||
if(userGroup) {
|
||||
let group = await GMGroupModel.getGroupById(userGroup.groupId);
|
||||
console.log(userGroup.groupId, group);
|
||||
if(group) {
|
||||
groupArr.push(userGroup.groupId);
|
||||
groupStrArr.push(group.name);
|
||||
groupId = userGroup.groupId;
|
||||
envs = userGroup.envs
|
||||
groupStr = group.name;
|
||||
}
|
||||
}
|
||||
result.push({...user, group:groupArr, groupStr: groupStrArr.length?groupStrArr.join():'暂无'});
|
||||
result.push({...user, group: groupId, groupStr, env: envs});
|
||||
}
|
||||
|
||||
return this.ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
@@ -115,7 +122,10 @@ export default class GMUsers extends Service {
|
||||
*/
|
||||
public async getApiList() {
|
||||
const {ctx} = this;
|
||||
let list = await ApiModel.getAllApi();
|
||||
let list = [];
|
||||
for(let [_, obj] of gameData.apiByUrl) {
|
||||
list.push(obj);
|
||||
}
|
||||
|
||||
if(list) {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
@@ -126,25 +136,6 @@ export default class GMUsers extends Service {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建Api
|
||||
*/
|
||||
public async saveApi(api:string, name:string) {
|
||||
const {ctx} = this;
|
||||
let result = await ApiModel.getApi(api);
|
||||
if(result) {
|
||||
return ctx.service.utils.resResult(STATUS.GM_DUPLICATE_API);
|
||||
} else {
|
||||
let result = await ApiModel.createApi(api, name);
|
||||
if(result) {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
} else {
|
||||
return ctx.service.utils.resResult(STATUS.INTERNAL_ERR);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 后台用户组列表
|
||||
*/
|
||||
@@ -207,32 +198,9 @@ export default class GMUsers extends Service {
|
||||
/**
|
||||
* 用户组添加接口
|
||||
*/
|
||||
public async saveGmGroupToUser(uid: number, groups: Array<number>) {
|
||||
let allUserGroup = await GMUserGroupModel.getUserGroupByUid(uid, 1);
|
||||
public async saveGmGroupToUser(uid: number, groupId: number, envs: string[]) {
|
||||
|
||||
let removeArr = allUserGroup.filter(userGroup => {
|
||||
let gid = userGroup.groupId;
|
||||
return groups.indexOf(gid) == -1;
|
||||
}).map(cur => cur.groupId);
|
||||
|
||||
let flag = 0;
|
||||
let result = await GMUserGroupModel.removeUserGroup(uid, 1, removeArr);
|
||||
if(!result) {
|
||||
flag = 1;
|
||||
}
|
||||
|
||||
if(!flag) {
|
||||
for(let group of groups) {
|
||||
let result = await GMUserGroupModel.addUserGroup(uid, 1, group);
|
||||
if(!result) {
|
||||
flag = 1; break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(flag) {
|
||||
return this.ctx.service.utils.resResult(STATUS.INTERNAL_ERR);
|
||||
}
|
||||
await GMUserGroupModel.addUserGroup(uid, groupId, envs);
|
||||
return this.ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
import { Service } from 'egg';
|
||||
import { GMMailModel, } from '@db/GMMail';
|
||||
import { STATUS } from '@consts';
|
||||
import { GMMailRecordModel } from '@db/GMMailRecord';
|
||||
import { SearchMailParam } from '@domain/backEndField/search';
|
||||
import { UpdateMailParams } from '@domain/backEndField/params';
|
||||
import { RoleModel, RoleType } from '@db/Role';
|
||||
@@ -43,12 +42,4 @@ export default class Mail extends Service {
|
||||
await GMMailModel.updateMailById(_id, params, ctx.user?.uid);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
}
|
||||
|
||||
public async getGMMailRecords(page: number, pageSize: number, sortField: string, sortOrder: string, form: {}) {
|
||||
const { ctx } = this;
|
||||
const list = await GMMailRecordModel.findByCondition(page, pageSize, sortField, sortOrder, form);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
list
|
||||
});
|
||||
}
|
||||
}
|
||||
+91
-153
@@ -5,9 +5,8 @@ import { EquipModel } from '@db/Equip';
|
||||
import { PvpDefenseModel } from '@db/PvpDefense';
|
||||
|
||||
import { Service } from 'egg';
|
||||
import Counter from '@db/Counter';
|
||||
import { STATUS, HERO_SYSTEM_TYPE, ITEM_CHANGE_REASON, REDIS_KEY, WAR_TYPE } from '@consts';
|
||||
import { ITID, COUNTER } from '@consts';
|
||||
import { ITID } from '@consts';
|
||||
import { ItemModel } from '@db/Item';
|
||||
import { gameData, getExpByLv } from '@pubUtils/data';
|
||||
import { calPlayerCeAndSave, calculatetopLineup, calEquipSeids } from '@pubUtils/playerCe';
|
||||
@@ -60,21 +59,21 @@ export default class GMUsers extends Service {
|
||||
|
||||
}
|
||||
|
||||
public async createRole(uid: number, serverId: number, roleName: string) {
|
||||
console.log('enter Auth createRole');
|
||||
const ctx = this.ctx;
|
||||
// public async createRole(uid: number, serverId: number, roleName: string) {
|
||||
// console.log('enter Auth createRole');
|
||||
// const ctx = this.ctx;
|
||||
|
||||
const roleId = ctx.service.utils.genCode(10);
|
||||
const code = ctx.service.utils.genCode(6);
|
||||
const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
||||
const role = await RoleModel.createRole(uid, serverId, { roleId, code, roleName, seqId });
|
||||
if (role) {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
} else {
|
||||
console.error('create role error');
|
||||
return ctx.service.utils.resResult(STATUS.INTERNAL_ERR);
|
||||
}
|
||||
}
|
||||
// const roleId = ctx.service.utils.genCode(10);
|
||||
// const code = ctx.service.utils.genCode(6);
|
||||
// const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
||||
// const role = await RoleModel.createRole(uid, serverId, { roleId, code, roleName, seqId });
|
||||
// if (role) {
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// } else {
|
||||
// console.error('create role error');
|
||||
// return ctx.service.utils.resResult(STATUS.INTERNAL_ERR);
|
||||
// }
|
||||
// }
|
||||
|
||||
// public async addAuth(uid: number, auth: number) {
|
||||
// console.log('enter Auth addAuth');
|
||||
@@ -309,14 +308,6 @@ export default class GMUsers extends Service {
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
||||
}
|
||||
|
||||
public async getPvpDefense(roleId: string) {
|
||||
const { ctx } = this;
|
||||
let result = await PvpDefenseModel.findByRoleId(roleId);
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
hasDefense: !!result, defense: result
|
||||
})
|
||||
}
|
||||
|
||||
// public async getHeroList(roleId: string) {
|
||||
// const {ctx} = this;
|
||||
// let herolist = await HeroModel.findByRole(roleId);
|
||||
@@ -340,59 +331,6 @@ export default class GMUsers extends Service {
|
||||
// })
|
||||
// }
|
||||
|
||||
// public async saveHeroToDefense(roleId: string, _roleName: string, hid: number) {
|
||||
// const { ctx } = this;
|
||||
// let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
// let role = await RoleModel.findByRoleId(roleId);
|
||||
// if (!hero || !role) {
|
||||
// return ctx.service.utils.resResult(STATUS.GM_HERO_NOT_FOUND);
|
||||
// }
|
||||
// let { lv, ce, attr: heroAttrs } = hero;
|
||||
// let { attr: roleAttrs } = role;
|
||||
|
||||
|
||||
// let dicHero = gameData.hero.get(hid);
|
||||
|
||||
// let attribute = new AttributeCal();
|
||||
// attribute.setByDbData(roleAttrs, heroAttrs);
|
||||
|
||||
// let heroInfo = {
|
||||
// actorId: dicHero.heroId,
|
||||
// actorName: dicHero.name,
|
||||
// attribute, lv,
|
||||
// ce
|
||||
// };
|
||||
|
||||
// let defense = await PvpDefenseModel.findByRoleId(roleId);
|
||||
// if (!defense) {
|
||||
// // defense = await PvpDefenseModel.createPvpDefense({roleId, roleName, heroes: [], defCe:ce});
|
||||
// } else {
|
||||
// defense = await PvpDefenseModel.addHeroToDefense(roleId, heroInfo, ce);
|
||||
// }
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
// defense
|
||||
// });
|
||||
// }
|
||||
|
||||
|
||||
// public async removeHeroFromDefense(roleId: string, hid: number) {
|
||||
// const { ctx } = this;
|
||||
|
||||
// let defense = await PvpDefenseModel.findByRoleId(roleId);
|
||||
// if (!defense) {
|
||||
// return ctx.service.utils.resResult(STATUS.GM_PVP_DEFENSE_NOT_FOUND);
|
||||
// }
|
||||
// let { heroes } = defense;
|
||||
// let curHero = heroes.find(cur => cur.actorId == hid);
|
||||
// if (!curHero) {
|
||||
// return ctx.service.utils.resResult(STATUS.GM_PVP_DEFENSE_HERO_NOT_FOUND);
|
||||
// }
|
||||
// defense = await PvpDefenseModel.removeHeroFromDefense(roleId, hid, curHero.ce);
|
||||
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, {
|
||||
// defense
|
||||
// });
|
||||
// }
|
||||
|
||||
/**
|
||||
* 根据类型等搜索玩家
|
||||
@@ -493,102 +431,102 @@ export default class GMUsers extends Service {
|
||||
}
|
||||
|
||||
|
||||
public async setItemCount(roleIdAndIds: string[], count: number) {
|
||||
console.log('enter Auth setItemCount');
|
||||
const ctx = this.ctx;
|
||||
let map = new Map<string, number[]>();
|
||||
for (let roleIdAndId of roleIdAndIds) {
|
||||
let [roleId, idStr] = roleIdAndId.split('|');
|
||||
if (isNaN(parseInt(idStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// public async setItemCount(roleIdAndIds: string[], count: number) {
|
||||
// console.log('enter Auth setItemCount');
|
||||
// const ctx = this.ctx;
|
||||
// let map = new Map<string, number[]>();
|
||||
// for (let roleIdAndId of roleIdAndIds) {
|
||||
// let [roleId, idStr] = roleIdAndId.split('|');
|
||||
// if (isNaN(parseInt(idStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
let id = parseInt(idStr);
|
||||
let cur = map.get(roleId);
|
||||
if (!cur) {
|
||||
cur = new Array<number>();
|
||||
map.set(roleId, cur);
|
||||
}
|
||||
cur.push(id);
|
||||
}
|
||||
// let id = parseInt(idStr);
|
||||
// let cur = map.get(roleId);
|
||||
// if (!cur) {
|
||||
// cur = new Array<number>();
|
||||
// map.set(roleId, cur);
|
||||
// }
|
||||
// cur.push(id);
|
||||
// }
|
||||
|
||||
for (let [roleId, ids] of map) {
|
||||
await ItemModel.updateCountByRoleAndIds(roleId, ids, count);
|
||||
}
|
||||
// for (let [roleId, ids] of map) {
|
||||
// await ItemModel.updateCountByRoleAndIds(roleId, ids, count);
|
||||
// }
|
||||
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
}
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// }
|
||||
|
||||
public async setHeroLv(roleIdAndHids: string[], _hlv: string) {
|
||||
// public async setHeroLv(roleIdAndHids: string[], _hlv: string) {
|
||||
|
||||
try {
|
||||
console.log('gm setHeroLv', roleIdAndHids, _hlv);
|
||||
const ctx = this.ctx;
|
||||
let hlv = parseInt(_hlv);
|
||||
if (isNaN(hlv)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// try {
|
||||
// console.log('gm setHeroLv', roleIdAndHids, _hlv);
|
||||
// const ctx = this.ctx;
|
||||
// let hlv = parseInt(_hlv);
|
||||
// if (isNaN(hlv)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
for (let roleIdAndHid of roleIdAndHids) {
|
||||
let [roleId, hidStr] = roleIdAndHid.split('|');
|
||||
if (isNaN(parseInt(hidStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// for (let roleIdAndHid of roleIdAndHids) {
|
||||
// let [roleId, hidStr] = roleIdAndHid.split('|');
|
||||
// if (isNaN(parseInt(hidStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
let hid = parseInt(hidStr);
|
||||
// let hid = parseInt(hidStr);
|
||||
|
||||
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
console.log(hid, roleId, !!hero);
|
||||
if (!hero) continue;
|
||||
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.LVUP, roleId, hero, { lv: hlv });
|
||||
}
|
||||
// let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
// console.log(hid, roleId, !!hero);
|
||||
// if (!hero) continue;
|
||||
// await calPlayerCeAndSave(HERO_SYSTEM_TYPE.LVUP, roleId, hero, { lv: hlv });
|
||||
// }
|
||||
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
} catch (e) {
|
||||
console.error((<Error>e).stack)
|
||||
}
|
||||
}
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// } catch (e) {
|
||||
// console.error((<Error>e).stack)
|
||||
// }
|
||||
// }
|
||||
|
||||
public async setHeroParam(roleIdAndHids: string[], star: number, colorStar: number, quality: number) {
|
||||
try {
|
||||
const ctx = this.ctx;
|
||||
if (typeof star != 'number'||typeof colorStar != 'number'||typeof quality != 'number') return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// public async setHeroParam(roleIdAndHids: string[], star: number, colorStar: number, quality: number) {
|
||||
// try {
|
||||
// const ctx = this.ctx;
|
||||
// if (typeof star != 'number'||typeof colorStar != 'number'||typeof quality != 'number') return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
for (let roleIdAndHid of roleIdAndHids) {
|
||||
let [roleId, hidStr] = roleIdAndHid.split('|');
|
||||
if (isNaN(parseInt(hidStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// for (let roleIdAndHid of roleIdAndHids) {
|
||||
// let [roleId, hidStr] = roleIdAndHid.split('|');
|
||||
// if (isNaN(parseInt(hidStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
let hid = parseInt(hidStr);
|
||||
// let hid = parseInt(hidStr);
|
||||
|
||||
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
console.log(hid, roleId, !!hero);
|
||||
if (!hero) continue;
|
||||
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.LVUP, roleId, hero, { star, colorStar, quality });
|
||||
}
|
||||
// let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
// console.log(hid, roleId, !!hero);
|
||||
// if (!hero) continue;
|
||||
// await calPlayerCeAndSave(HERO_SYSTEM_TYPE.LVUP, roleId, hero, { star, colorStar, quality });
|
||||
// }
|
||||
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
} catch (e) {
|
||||
console.error((<Error>e).stack)
|
||||
}
|
||||
}
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// } catch (e) {
|
||||
// console.error((<Error>e).stack)
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
public async setHeroJob(roleIdAndHids: string[], job: number) {
|
||||
try {
|
||||
const ctx = this.ctx;
|
||||
if(!gameData.job.has(job)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// public async setHeroJob(roleIdAndHids: string[], job: number) {
|
||||
// try {
|
||||
// const ctx = this.ctx;
|
||||
// if(!gameData.job.has(job)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
for (let roleIdAndHid of roleIdAndHids) {
|
||||
let [roleId, hidStr] = roleIdAndHid.split('|');
|
||||
if (isNaN(parseInt(hidStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
// for (let roleIdAndHid of roleIdAndHids) {
|
||||
// let [roleId, hidStr] = roleIdAndHid.split('|');
|
||||
// if (isNaN(parseInt(hidStr))) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
let hid = parseInt(hidStr);
|
||||
// let hid = parseInt(hidStr);
|
||||
|
||||
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
console.log(hid, roleId, !!hero);
|
||||
if (!hero) continue;
|
||||
await calPlayerCeAndSave(HERO_SYSTEM_TYPE.STAGEUP, roleId, hero, { job });
|
||||
}
|
||||
// let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||
// console.log(hid, roleId, !!hero);
|
||||
// if (!hero) continue;
|
||||
// await calPlayerCeAndSave(HERO_SYSTEM_TYPE.STAGEUP, roleId, hero, { job });
|
||||
// }
|
||||
|
||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
} catch (e) {
|
||||
console.error((<Error>e).stack)
|
||||
}
|
||||
}
|
||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||
// } catch (e) {
|
||||
// console.error((<Error>e).stack)
|
||||
// }
|
||||
// }
|
||||
|
||||
/**
|
||||
* 根据类型等搜索装备
|
||||
|
||||
Reference in New Issue
Block a user