活动:每日兑换铜钱也改为每日刷新

This commit is contained in:
luying
2021-12-03 19:17:51 +08:00
parent 7c8530db0e
commit f2bb00637b
3 changed files with 13 additions and 11 deletions

View File

@@ -128,7 +128,7 @@ export class DailyCoinHandler {
//免费期间 //免费期间
let time = moment(new Date()).valueOf(); let time = moment(new Date()).valueOf();
let result = await addReward(roleId, roleName, sid, serverId, newReward) let result = await addReward(roleId, roleName, sid, serverId, newReward)
await ActivityDailyCoinModel.addExchangeRecord(serverId, activityId, roleId, playerData.beginTime, count, addCoin, `${count}&${consumeGold}&${addCoin}&${time}`); await ActivityDailyCoinModel.addExchangeRecord(serverId, activityId, roleId, playerData.roundIndex, count, addCoin, `${count}&${consumeGold}&${addCoin}&${time}`);
let exchangeCount = playerData.exchangeCount + count; let exchangeCount = playerData.exchangeCount + count;
return resResult(STATUS.SUCCESS, Object.assign(result, { return resResult(STATUS.SUCCESS, Object.assign(result, {

View File

@@ -25,7 +25,7 @@ export async function dailyCoinActivity(serverId: number, roleId: string) {
let { createTime } = await RoleModel.findByRoleId(roleId); let { createTime } = await RoleModel.findByRoleId(roleId);
let playerData = new DailyCoinData(activityData, createTime); let playerData = new DailyCoinData(activityData, createTime);
let playerRecord: ActivityDailyCoinModelType = await ActivityDailyCoinModel.findData(serverId, activityData.activityId, roleId, playerData.beginTime); let playerRecord: ActivityDailyCoinModelType = await ActivityDailyCoinModel.findData(serverId, activityData.activityId, roleId, playerData.roundIndex);
playerData.setPlayerRecords(playerRecord); playerData.setPlayerRecords(playerRecord);
return playerData; return playerData;
} }
@@ -44,7 +44,7 @@ export async function getPlayerDailyCoinData(activityId: number, serverId: numbe
let { createTime } = await RoleModel.findByRoleId(roleId); let { createTime } = await RoleModel.findByRoleId(roleId);
let playerData = new DailyCoinData(activityData, createTime); let playerData = new DailyCoinData(activityData, createTime);
let playerRecord: ActivityDailyCoinModelType = await ActivityDailyCoinModel.findData(serverId, activityData.activityId, roleId, playerData.beginTime); let playerRecord: ActivityDailyCoinModelType = await ActivityDailyCoinModel.findData(serverId, activityData.activityId, roleId, playerData.roundIndex);
playerData.setPlayerRecords(playerRecord); playerData.setPlayerRecords(playerRecord);
return playerData; return playerData;
} }

View File

@@ -13,8 +13,8 @@ export default class Activity_Daily_Coin extends BaseModel {
activityId: number; // 活动Id activityId: number; // 活动Id
@prop({ required: true }) @prop({ required: true })
roleId: string; // 用户Id roleId: string; // 用户Id
@prop({ required: true }) // @prop({ required: true })
beginTime: number; // 开始统计的时间 // beginTime: number; // 开始统计的时间
@prop({ required: true }) @prop({ required: true })
exchangeCount: number; // 兑换次数 exchangeCount: number; // 兑换次数
@prop({ required: true }) @prop({ required: true })
@@ -22,26 +22,28 @@ export default class Activity_Daily_Coin extends BaseModel {
@prop({ required: true }) @prop({ required: true })
recordMsg: string[]; // 兑换记录 exchangeCount&cointCount recordMsg: string[]; // 兑换记录 exchangeCount&cointCount
@prop({ required: true })
roundIndex: number; // 周期数
//兑换记录 //兑换记录
public static async addExchangeRecord(serverId: number, activityId: number, roleId: string, beginTime: number, count: number, coinCount: number, msg: string) { public static async addExchangeRecord(serverId: number, activityId: number, roleId: string, roundIndex: number, count: number, coinCount: number, msg: string) {
let result = await ActivityDailyCoinModel.findOneAndUpdate({ serverId, activityId, roleId, beginTime }, let result = await ActivityDailyCoinModel.findOneAndUpdate({ serverId, activityId, roleId, roundIndex },
{ $inc: { exchangeCount: count, coinCount: coinCount }, $push: { recordMsg: msg } }, { upsert: true, new: true }).lean(true) { $inc: { exchangeCount: count, coinCount: coinCount }, $push: { recordMsg: msg } }, { upsert: true, new: true }).lean(true)
return result; return result;
} }
//根据活动时间查询活动数据 //根据活动时间查询活动数据
public static async findData(serverId: number, activityId: number, roleId: string, beginTime: number) { public static async findData(serverId: number, activityId: number, roleId: string, roundIndex: number) {
let result: ActivityDailyCoinModelType = await ActivityDailyCoinModel.findOne({ let result: ActivityDailyCoinModelType = await ActivityDailyCoinModel.findOne({
serverId, roleId, activityId, beginTime, serverId, roleId, activityId, roundIndex,
}).lean(true); }).lean(true);
return result; return result;
} }
//删除活动兑换记录 //删除活动兑换记录
public static async deleteActivity(serverId: number, activityId: number, roleId: string, beginTime: number) { public static async deleteActivity(serverId: number, activityId: number, roleId: string, roundIndex: number) {
await ActivityDailyCoinModel.deleteMany({ serverId, roleId, activityId, beginTime }); await ActivityDailyCoinModel.deleteMany({ serverId, roleId, activityId, roundIndex });
} }
} }