团购:修改字段
This commit is contained in:
@@ -60,8 +60,8 @@ export class GroupShopHandler {
|
||||
* @param {BackendSession} session
|
||||
* @memberof GroupShopHandler
|
||||
*/
|
||||
async buy(msg: { activityId: number, price: number, id: number, buyCnt: number }, session: BackendSession) {
|
||||
const { activityId, price: clientPrice, id, buyCnt } = msg;
|
||||
async buy(msg: { activityId: number, price: number, itemId: number, buyCnt: number }, session: BackendSession) {
|
||||
const { activityId, price: clientPrice, itemId, buyCnt } = msg;
|
||||
const roleId: string = session.get('roleId');
|
||||
const roleName: string = session.get('roleName');
|
||||
const sid: string = session.get('sid');
|
||||
@@ -69,7 +69,7 @@ export class GroupShopHandler {
|
||||
let playerData = await getGroupShopData(activityId, roleId);
|
||||
if (!playerData) return resResult(STATUS.ACTIVITY_MISSING);
|
||||
|
||||
let item = playerData.findItemById(id);
|
||||
let item = playerData.findItemById(itemId);
|
||||
if (!item) return resResult(STATUS.ACTIVITY_GROUP_SHOP_ITEM_NOT_FOUND);
|
||||
if(!item.checkBuyCnt(buyCnt)) return resResult(STATUS.ACTIVITY_GROUP_SHOP_BUY_CNT_MAX);
|
||||
|
||||
@@ -81,24 +81,24 @@ export class GroupShopHandler {
|
||||
if(!result) return resResult(STATUS.BATTLE_GOLD_NOT_ENOUGH);
|
||||
|
||||
// 玩家添加次数
|
||||
let playerRecord = await ActivityGroupShopUserRecModel.incBuyCnt(activityId, roleId, id, item.gid, buyCnt, new GroupShopBuyRecord(curDiscount, buyCnt));
|
||||
let playerRecord = await ActivityGroupShopUserRecModel.incBuyCnt(activityId, roleId, itemId, item.id, buyCnt, new GroupShopBuyRecord(curDiscount, buyCnt));
|
||||
playerData.setPlayerRecord([playerRecord]);
|
||||
// 全服添加次数
|
||||
let serverRecord = await ActivityGroupShopRecModel.incBuyCnt(activityId, id, item.gid, buyCnt);
|
||||
let serverRecord = await ActivityGroupShopRecModel.incBuyCnt(activityId, itemId, item.id, buyCnt);
|
||||
let isRankUp = playerData.incAllRecord(serverRecord);
|
||||
|
||||
item = playerData.findItemById(id);
|
||||
item = playerData.findItemById(itemId);
|
||||
let nextDiscount = item.getCurDiscount();
|
||||
if(isRankUp) {
|
||||
await ActivityGroupShopRecModel.addRecord(activityId, id, new GroupShopRecord(nextDiscount));
|
||||
await ActivityGroupShopRecModel.addRecord(activityId, itemId, new GroupShopRecord(nextDiscount));
|
||||
// 推送频道
|
||||
await sendMessageToGroupShopWithSuc(PUSH_ROUTE.GROUP_SHOP_UPDATE, { activityId, id, sum: item.sum, curDiscount: nextDiscount });
|
||||
await sendMessageToGroupShopWithSuc(PUSH_ROUTE.GROUP_SHOP_UPDATE, { activityId, itemId, sum: item.sum, curDiscount: nextDiscount });
|
||||
}
|
||||
let reward = [{ id: item.gid, count: item.count * buyCnt }];
|
||||
let reward = [{ id: item.id, count: item.count * buyCnt }];
|
||||
let goods = await addItems(roleId, roleName, sid, reward, ITEM_CHANGE_REASON.ACT_GROUP_SHOP_BUY);
|
||||
|
||||
return resResult(STATUS.SUCCESS, {
|
||||
curItem: pick(item, ['id', 'gid', 'sum', 'hasBoughtCnt']),
|
||||
curItem: pick(item, ['itemId', 'id', 'sum', 'hasBoughtCnt']),
|
||||
goods,
|
||||
status: priceStatus,
|
||||
oldDiscount: curDiscount,
|
||||
@@ -111,23 +111,23 @@ export class GroupShopHandler {
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
|
||||
async debugSetSum(msg: { id: number, sum: number }, session: BackendSession) {
|
||||
async debugSetSum(msg: { itemId: number, sum: number }, session: BackendSession) {
|
||||
const roleId: string = session.get('roleId');
|
||||
const serverId = session.get('serverId');
|
||||
let { id = 0, sum = 0 } = msg;
|
||||
let { itemId = 0, sum = 0 } = msg;
|
||||
let activities = await getActivitiesByType(serverId, ACTIVITY_TYPE.GROUP_SHOP);
|
||||
if(activities.length <= 0) return resResult(STATUS.ACTIVITY_MISSING);
|
||||
for(let activityData of activities) {
|
||||
let recs = await ActivityGroupShopRecModel.debugSetSum(activityData.activityId, id, sum);
|
||||
let recs = await ActivityGroupShopRecModel.debugSetSum(activityData.activityId, itemId, sum);
|
||||
let playerData = new GroupShopData(activityData, 0, 0);
|
||||
playerData.setRecords(recs);
|
||||
|
||||
let items = id == 0? playerData.items: [playerData.findItemById(id)];
|
||||
let items = itemId == 0? playerData.items: [playerData.findItemById(itemId)];
|
||||
for(let item of items) {
|
||||
if(!item) continue;
|
||||
let nextDiscount = item.getCurDiscount();
|
||||
// 推送频道
|
||||
await sendMessageToGroupShopWithSuc(PUSH_ROUTE.GROUP_SHOP_UPDATE, { activityId: activityData.activityId, id, sum: item.sum, curDiscount: nextDiscount });
|
||||
await sendMessageToGroupShopWithSuc(PUSH_ROUTE.GROUP_SHOP_UPDATE, { activityId: activityData.activityId, itemId, sum: item.sum, curDiscount: nextDiscount });
|
||||
}
|
||||
}
|
||||
let playerData = await getGroupShopDataShow(activities[0].activityId, roleId);
|
||||
|
||||
Reference in New Issue
Block a user