后台添加武将批量添加
This commit is contained in:
@@ -179,37 +179,42 @@ export default class GMUsers extends Service {
|
|||||||
public async createHero(uids: Array<string>, _hid: string, _hlv: string) {
|
public async createHero(uids: Array<string>, _hid: string, _hlv: string) {
|
||||||
const {ctx} = this;
|
const {ctx} = this;
|
||||||
console.log('gm createHero', uids, _hid, _hlv);
|
console.log('gm createHero', uids, _hid, _hlv);
|
||||||
let hid = parseInt(_hid);
|
|
||||||
let hlv = parseInt(_hlv);
|
let hlv = parseInt(_hlv);
|
||||||
if(isNaN(hid) || isNaN(hlv)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
if( isNaN(hlv)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
|
let hids = (_hid as string).split('&').map(cur => parseInt(cur));
|
||||||
|
for(let hid of hids) {
|
||||||
|
if(isNaN(hid)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
|
}
|
||||||
|
|
||||||
let flag = 0, msg = '创建失败';
|
let flag = 0, msg = '创建失败',heroInfos = new Array();
|
||||||
for(let roleId of uids) {
|
for(let roleId of uids) {
|
||||||
let role = await RoleModel.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if(role) {
|
if(role) {
|
||||||
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
for(let hid of hids) {
|
||||||
if(hero) {
|
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||||
flag = 1, msg = "角色" + roleId + "已拥有武将" + hid;
|
if(hero) {
|
||||||
break;
|
flag = 1, msg = "角色" + roleId + "已拥有武将" + hid;
|
||||||
}
|
break;
|
||||||
const seqId = await CounterModel.getNewCounter('hid')||-1;
|
}
|
||||||
let dicHero = ctx.service.utils.getHeroById(hid);
|
const seqId = await CounterModel.getNewCounter('hid')||-1;
|
||||||
if(!dicHero) {
|
let dicHero = ctx.service.utils.getHeroById(hid);
|
||||||
flag = 1, msg = "未找到武将" + hid;
|
if(!dicHero) {
|
||||||
break;
|
flag = 1, msg = "未找到武将" + hid;
|
||||||
}
|
break;
|
||||||
let ce = ctx.service.utils.calculateCE({hid: hid, lv: hlv});
|
}
|
||||||
|
let ce = ctx.service.utils.calculateCE({hid: hid, lv: hlv});
|
||||||
|
|
||||||
const heroInfo = {
|
const heroInfo = {
|
||||||
roleId,
|
roleId,
|
||||||
roleName: role.roleName,
|
roleName: role.roleName,
|
||||||
hid: hid,
|
hid: hid,
|
||||||
hName: dicHero.name,
|
hName: dicHero.name,
|
||||||
seqId,
|
seqId,
|
||||||
lv: hlv,
|
lv: hlv,
|
||||||
ce
|
ce
|
||||||
|
}
|
||||||
|
heroInfos.push(heroInfo);
|
||||||
}
|
}
|
||||||
await HeroModel.createHero(heroInfo);
|
|
||||||
} else {
|
} else {
|
||||||
flag = 1, msg = '未找到角色' + roleId;
|
flag = 1, msg = '未找到角色' + roleId;
|
||||||
}
|
}
|
||||||
@@ -218,6 +223,9 @@ export default class GMUsers extends Service {
|
|||||||
if (flag) {
|
if (flag) {
|
||||||
return ctx.service.utils.resResult(STATUS.GM_CREATE_ERROR, null, msg);
|
return ctx.service.utils.resResult(STATUS.GM_CREATE_ERROR, null, msg);
|
||||||
} else {
|
} else {
|
||||||
|
for(let heroInfo of heroInfos) {
|
||||||
|
await HeroModel.createHero(heroInfo);
|
||||||
|
}
|
||||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user