后台:设置武将星级和职业

This commit is contained in:
luying
2021-07-16 16:09:50 +08:00
parent 23750e89b9
commit 5dba5632c2
3 changed files with 62 additions and 0 deletions

View File

@@ -86,6 +86,18 @@ export default class UserController extends Controller {
ctx.body = await ctx.service.users.setHeroLv(roleIdAndHids, lv); ctx.body = await ctx.service.users.setHeroLv(roleIdAndHids, lv);
} }
public async setHeroParam() {
const { ctx } = this;
const { selectedRowKeys: roleIdAndHids, star, colorStar, quality } = ctx.request.body;
ctx.body = await ctx.service.users.setHeroParam(roleIdAndHids, star, colorStar, quality);
}
public async setHeroJob() {
const { ctx } = this;
const { selectedRowKeys: roleIdAndHids, job } = ctx.request.body;
ctx.body = await ctx.service.users.setHeroJob(roleIdAndHids, job);
}
public async saveHeroToDefense() { public async saveHeroToDefense() {
const { ctx } = this; const { ctx } = this;
const { roleId, roleName, hid } = ctx.request.body; const { roleId, roleName, hid } = ctx.request.body;

View File

@@ -35,6 +35,8 @@ export default (app: Application) => {
router.post('/api/users/getherolist',tokenParser, controller.users.getHeroList); router.post('/api/users/getherolist',tokenParser, controller.users.getHeroList);
router.post('/api/users/deletehero', tokenParser, controller.users.deleteHero); router.post('/api/users/deletehero', tokenParser, controller.users.deleteHero);
router.post('/api/users/setherolv', tokenParser, controller.users.setHeroLv); router.post('/api/users/setherolv', tokenParser, controller.users.setHeroLv);
router.post('/api/users/setheroparam', controller.users.setHeroParam);
router.post('/api/users/setherojob', controller.users.setHeroJob);
router.post('/api/users/saveherotodefense',tokenParser, controller.users.saveHeroToDefense); router.post('/api/users/saveherotodefense',tokenParser, controller.users.saveHeroToDefense);
router.post('/api/users/removeherofromdefense',tokenParser, controller.users.removeHeroFromDefense); router.post('/api/users/removeherofromdefense',tokenParser, controller.users.removeHeroFromDefense);
router.post('/api/users/getequiplist', tokenParser, controller.users.getEquipList); router.post('/api/users/getequiplist', tokenParser, controller.users.getEquipList);

View File

@@ -35,6 +35,7 @@ import { FriendRelationModel } from '@db/FriendRelation';
import { createHero as pubCreateHero, addSkin } from '@pubUtils/itemUtils'; import { createHero as pubCreateHero, addSkin } from '@pubUtils/itemUtils';
import { GiftCodeModel } from '@db/GiftCode'; import { GiftCodeModel } from '@db/GiftCode';
import { GiftCodeDetailModel } from '@db/GiftCodeDetail'; import { GiftCodeDetailModel } from '@db/GiftCodeDetail';
// import { resResult } from '@pubUtils/util';
// import * as fs from 'fs'; // import * as fs from 'fs';
@@ -627,6 +628,53 @@ export default class GMUsers extends Service {
} }
} }
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);
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 });
}
return ctx.service.utils.resResult(STATUS.SUCCESS);
} catch (e) {
console.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);
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 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(e.stack)
}
}
/** /**
* 根据类型等搜索装备 * 根据类型等搜索装备
*/ */