后台添加清空账号功能

This commit is contained in:
luying
2020-10-21 10:14:19 +08:00
parent 7b65c1856b
commit aa0b2ba9ee
23 changed files with 149 additions and 0 deletions

View File

@@ -16,6 +16,12 @@ export default class UserController extends Controller {
ctx.body = await ctx.service.users.createRole(uid, serverId, roleName);
}
public async deleteRole() {
const { ctx } = this;
const { roleId } = ctx.request.body;
ctx.body = await ctx.service.users.deleteRole(roleId);
}
public async getrolelist() {
const { ctx } = this;
const { field, value } = ctx.request.body;

View File

@@ -25,6 +25,7 @@ export default (app: Application) => {
router.post('/api/users/getuserlist',tokenParser, controller.users.getuserlist);
router.post('/api/users/createrole',tokenParser, controller.users.createRole);
router.post('/api/users/deleterole',tokenParser, controller.users.deleteRole);
router.post('/api/users/getrolelist',tokenParser, controller.users.getrolelist);
router.post('/api/users/createroledata',tokenParser, controller.users.createRoleData);

View File

@@ -4,6 +4,22 @@ import { HeroModel } from '@db/Hero';
import { EquipModel } from '@db/Equip';
import { ItemModel } from '@db/Item';
import { CounterModel } from '@db/Counter';
import { ActionPointModel } from '@db/ActionPoint';
import { BattleDropModel } from '@db/BattleDrop';
import { BattleRecordModel } from '@db/BattleRecord';
import { BattleSweepRecordModel } from '@db/BattleSweepRecord';
import { DailyRecordModel } from '@db/DailyRecord';
import { EventRecordModel } from '@db/EventRecord';
import { ExpeditionPointModel } from '@db/ExpeditionPoint';
import { ExpeditionRecordModel } from '@db/ExpeditionRecord';
import { ExpeditionWarRecordModel } from '@db/ExpeditionWarRecord';
import { HangUpRecordModel } from '@db/HangUpRecord';
import { HangUpSpdUpRecModel } from '@db/HangUpSpdUpRec';
import { HeroSoulModel } from '@db/HeroSoul';
import { ScriptItemModel } from '@db/ScriptItem';
import { SearchRecordModel } from '@db/SearchRecord';
import { TowerRecordModel } from '@db/TowerRecord';
import { TowerTaskRecModel } from '@db/TowerTaskRec';
import { Service } from 'egg';
import Counter from '@db/Counter';
@@ -75,6 +91,34 @@ export default class GMUsers extends Service {
}
}
public async deleteRole(roleId: string) {
console.log('enter Auth deleteRole');
const ctx = this.ctx;
await ActionPointModel.deleteAccount(roleId);
await BattleDropModel.deleteAccount(roleId);
await BattleRecordModel.deleteAccount(roleId);
await BattleSweepRecordModel.deleteAccount(roleId);
await DailyRecordModel.deleteAccount(roleId);
await EquipModel.deleteAccount(roleId);
await EventRecordModel.deleteAccount(roleId);
await ExpeditionPointModel.deleteAccount(roleId);
await ExpeditionRecordModel.deleteAccount(roleId);
await ExpeditionWarRecordModel.deleteAccount(roleId);
await HangUpSpdUpRecModel.deleteAccount(roleId);
await HangUpRecordModel.deleteAccount(roleId);
await HeroModel.deleteAccount(roleId);
await HeroSoulModel.deleteAccount(roleId);
await ItemModel.deleteAccount(roleId);
await RoleModel.deleteAccount(roleId);
await ScriptItemModel.deleteAccount(roleId);
await SearchRecordModel.deleteAccount(roleId);
await TowerTaskRecModel.deleteAccount(roleId);
await TowerRecordModel.deleteAccount(roleId);
return ctx.service.utils.resResult(STATUS.SUCCESS);
}
/**
* 根据类型等搜索玩家

View File

@@ -27,6 +27,11 @@ export default class ActionPoint extends BaseModel {
let result = await ActionPointModel.findOneAndUpdate({roleId}, { ap, refTime }, {upsert: true, new: true}).lean(lean);
return result||{};
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await ActionPointModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const ActionPointModel = getModelForClass(ActionPoint);

View File

@@ -33,6 +33,11 @@ export default class BattleDrop extends BaseModel {
const result = await BattleDropModel.findOneAndUpdate({roleId, battleId, gid}, {$set: params}).lean(lean);
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await BattleDropModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const BattleDropModel = getModelForClass(BattleDrop);

View File

@@ -72,6 +72,10 @@ export default class BattleRecord extends BaseModel {
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await BattleRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const BattleRecordModel = getModelForClass(BattleRecord);

View File

@@ -27,6 +27,10 @@ export default class BattleSweepRecord extends BaseModel {
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await BattleSweepRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const BattleSweepRecordModel = getModelForClass(BattleSweepRecord);

View File

@@ -38,6 +38,11 @@ export default class DailyRecord extends BaseModel {
const result = await DailyRecordModel.findOneAndUpdate({ roleId, type }, {$inc: { count } }, {new: true, upsert: true}).lean(lean);
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await DailyRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const DailyRecordModel = getModelForClass(DailyRecord);

View File

@@ -57,6 +57,11 @@ export default class Equip extends BaseModel {
const equip = await EquipModel.findOneAndUpdate({ _id: equipId }, {hid}, {new: true}).lean(lean);
return equip;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await EquipModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const EquipModel = getModelForClass(Equip);

View File

@@ -85,6 +85,10 @@ export default class EventRecord extends BaseModel {
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await EventRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const EventRecordModel = getModelForClass(EventRecord);

View File

@@ -38,6 +38,11 @@ export default class ExpeditionPoint extends BaseModel {
).lean(lean);
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await ExpeditionPointModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const ExpeditionPointModel = getModelForClass(ExpeditionPoint);

View File

@@ -70,6 +70,11 @@ export default class ExpeditionRecord extends BaseModel {
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await ExpeditionRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const ExpeditionRecordModel = getModelForClass(ExpeditionRecord);

View File

@@ -111,6 +111,11 @@ export default class ExpeditionWarRecord extends BaseModel {
const result = await ExpeditionWarRecordModel.findOneAndUpdate({ expeditionCode, expeditionId }, {received, reward}, {new: true}).lean(lean);
return result;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await ExpeditionWarRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const ExpeditionWarRecordModel = getModelForClass(ExpeditionWarRecord);

View File

@@ -49,6 +49,11 @@ export default class HangUpRecord extends BaseModel {
const newRec = await HangUpRecordModel.findOneAndUpdate({roleId, startLv: endLv}, update, {upsert: true, new: true}).lean(lean);
return newRec;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await HangUpRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const HangUpRecordModel = getModelForClass(HangUpRecord);

View File

@@ -24,6 +24,11 @@ export default class HangUpSpdUpRec extends BaseModel {
return rec;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await HangUpSpdUpRecModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const HangUpSpdUpRecModel = getModelForClass(HangUpSpdUpRec);

View File

@@ -92,6 +92,12 @@ export default class Hero extends BaseModel {
]);
return ce[0].ce;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await HeroModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const HeroModel = getModelForClass(Hero);

View File

@@ -46,6 +46,10 @@ export default class HeroSoul extends BaseModel {
return item;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await HeroSoulModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const HeroSoulModel = getModelForClass(HeroSoul);

View File

@@ -44,6 +44,10 @@ export default class Item extends BaseModel {
return item;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await ItemModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const ItemModel = getModelForClass(Item);

View File

@@ -176,6 +176,11 @@ export default class Role extends BaseModel {
let role = await RoleModel.findOneAndUpdate({roleId}, {$set: { exp, lv }}, {new: true}).lean(lean);
return role;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await RoleModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const RoleModel = getModelForClass(Role);

View File

@@ -44,6 +44,11 @@ export default class ScriptItem extends BaseModel {
return item;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await ScriptItemModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const ScriptItemModel = getModelForClass(ScriptItem);

View File

@@ -26,6 +26,12 @@ export default class SearchRecord extends BaseModel {
batchCode: string; // 本批派遣任务唯一标识
@prop({ required: true, default: [] })
tasks: Array<SearchTask>;
public static async deleteAccount(roleId: string, lean = true) {
let result = await SearchRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const SearchRecordModel = getModelForClass(SearchRecord);

View File

@@ -72,6 +72,12 @@ export default class TowerRecord extends BaseModel {
{new: true}).lean(lean);
return rec;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await TowerRecordModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const TowerRecordModel = getModelForClass(TowerRecord);

View File

@@ -94,6 +94,11 @@ export default class TowerTaskRec extends BaseModel {
}
return recs;
}
public static async deleteAccount(roleId: string, lean = true) {
let result = await TowerTaskRecModel.deleteMany({roleId}).lean(lean);
return result||{};
}
}
export const TowerTaskRecModel = getModelForClass(TowerTaskRec);