活动:修复每日特惠礼包刷新时间

This commit is contained in:
luying
2022-05-18 07:09:57 +08:00
parent a2270ae8e7
commit 3c5c40ba9c
3 changed files with 10 additions and 8 deletions

View File

@@ -5,6 +5,7 @@ import { RoleModel } from '../../db/Role';
import { getActivitiesByType, getActivityById, pushActivities, pushActivityInter } from './activityService';
import { ACTIVITY_TYPE } from '../../consts';
import { getRoleCreateTime, getRoleOnlineInfo, getServerCreateTime } from '../redisService';
import { getZeroPointD, getZeroPointOfTime } from '../../pubUtils/timeUtil';
/**
* 玩家活动数据
@@ -19,8 +20,8 @@ export async function getPlayerRechargeMoneyData(activityId: number, serverId: n
let createTime = await getRoleCreateTime(roleId);
let serverTime = await getServerCreateTime(serverId);
let playerData = new RechargeMoneyData(activityData, createTime, serverTime);
let beginTime = moment(playerData.beginTime).startOf('d').toDate();
let endTime = moment(new Date()).endOf('d').toDate();
let beginTime = new Date(getZeroPointOfTime(playerData.beginTime));
let endTime = new Date(getZeroPointD().getTime() + 24 * 60 * 60 * 1000);
let playerRecord: ActivityRechargeMoneyModelType[] = await ActivityRechargeMoneyModel.findDataByTime(serverId, roleId, beginTime, endTime);
playerData.setPlayerRecords(playerRecord);
@@ -44,8 +45,8 @@ export async function getPlayerRechargeMoneyDataShow(activityId: number, serverI
*
*/
export async function addRechargeMoney(roleId: string, serverId: number, RMB: number) {
let beginTime = moment(new Date()).startOf('d').toDate();
let endTime = moment(new Date()).endOf('d').toDate();
let beginTime = getZeroPointD();
let endTime = new Date(getZeroPointD().getTime() + 24 * 60 * 60 * 1000);
let result = await ActivityRechargeMoneyModel.addRMB(serverId, roleId, RMB, beginTime, endTime);
if(result.RMB == RMB) { // 获得木签的时候推送给在线玩家
let onlineUser = await getRoleOnlineInfo(roleId);

View File

@@ -57,9 +57,6 @@ export abstract class ActivityBase {
this.groupId = activityData.groupId;
this.delayDay = activityData.delayDay ? activityData.delayDay : 0;
this.hideDayByServer = activityData.hideDayByServer||0;
this.beginTime = moment(activityData.beginTime).add(this.delayDay, 'd').valueOf();
this.endTime = moment(activityData.endTime).add(this.delayDay, 'd').valueOf();
this.todayIndex = deltaDays(moment(this.beginTime).toDate(), new Date) + 1;
this.roundIndex = 1;
this.name = activityData.name;
this.isEnable = activityData.isEnable;
@@ -91,6 +88,10 @@ export abstract class ActivityBase {
break;
}
case ACTIVITY_TIME_TYPE.DATE_TIME: {
this.beginTime = moment(activityData.beginTime).add(this.delayDay, 'd').startOf('d').add(REFRESH_TIME, 'h').valueOf();
this.endTime = moment(activityData.endTime).add(this.delayDay, 'd').startOf('d').add(REFRESH_TIME, 'h').valueOf();
this.todayIndex = deltaDays(moment(this.beginTime).toDate(), new Date) + 1;
break;
}
default: {

View File

@@ -492,7 +492,7 @@ export function getZeroPointD(refreshType: SHOP_REFRESH_TYPE = SHOP_REFRESH_TYPE
}
}
export function getZeroPointOfTime(refTime: Date, refreshType: SHOP_REFRESH_TYPE = SHOP_REFRESH_TYPE.DAILY) {
export function getZeroPointOfTime(refTime: Date|number, refreshType: SHOP_REFRESH_TYPE = SHOP_REFRESH_TYPE.DAILY) {
let t = new Time(TIME_OUTPUT_TYPE.STAMP_10, refTime);
if(refreshType == SHOP_REFRESH_TYPE.DAILY) {
return <number>t.getDayZeroPoint();