diff --git a/game-server/app/services/activity/rechargeMoneyService.ts b/game-server/app/services/activity/rechargeMoneyService.ts index ffe76b70e..aa5af5c62 100644 --- a/game-server/app/services/activity/rechargeMoneyService.ts +++ b/game-server/app/services/activity/rechargeMoneyService.ts @@ -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); diff --git a/shared/domain/activityField/activityField.ts b/shared/domain/activityField/activityField.ts index 4ed895533..7ac970f36 100644 --- a/shared/domain/activityField/activityField.ts +++ b/shared/domain/activityField/activityField.ts @@ -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: { diff --git a/shared/pubUtils/timeUtil.ts b/shared/pubUtils/timeUtil.ts index a5a8bad04..b79a5be85 100644 --- a/shared/pubUtils/timeUtil.ts +++ b/shared/pubUtils/timeUtil.ts @@ -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 t.getDayZeroPoint();