活动:修改显示逻辑

This commit is contained in:
luying
2022-01-24 17:20:22 +08:00
parent 42ca899e70
commit 685e9779e2
6 changed files with 17 additions and 4 deletions
@@ -42,7 +42,7 @@ export class ActivityHandler {
let activityData = await getActivityById(activityId); let activityData = await getActivityById(activityId);
if (activityData) { if (activityData) {
let playerActivityData = await getActivity(serverId, roleId, activityId, activityData.type); let playerActivityData = await getActivity(serverId, roleId, activityId, activityData.type);
if(playerActivityData && playerActivityData.beginTime <= Date.now() && playerActivityData.endTime >= Date.now()) { if(playerActivityData && playerActivityData.canShow && playerActivityData.canShow()) {
playerGroupActivityArray.push(playerActivityData); playerGroupActivityArray.push(playerActivityData);
} }
} }
@@ -417,7 +417,12 @@ export class FriendHandler {
if (!friend) { if (!friend) {
str = getResStr(STATUS.FRIEND_HIS_APPLY_MAX); str = getResStr(STATUS.FRIEND_HIS_APPLY_MAX);
} else { } else {
await FriendApplyModel.createApply(hisRoleId, role); let apply = await FriendApplyModel.createApply(hisRoleId, role);
let hisOnlineInfo = await getRoleOnlineInfo(hisRoleId);
if(hisOnlineInfo) {
let myApply = await getMyApplyParam(apply.applyCode, role);
this.channelService.pushMessageByUids('onFriendApply', resResult(STATUS.SUCCESS, { apply: myApply }), [{uid: hisRoleId, sid: hisOnlineInfo.sid}]);
}
} }
} }
blackRoleIds.push(roleId); blackRoleIds.push(roleId);
@@ -66,14 +66,14 @@ export async function getActivity(serverId: number, roleId: string, activityId:
{ {
let data = await getPlayerThirtyDaysData(activityId, serverId, roleId); let data = await getPlayerThirtyDaysData(activityId, serverId, roleId);
let todayIndex = await playerThirtyDaysActivityDays(roleId); let todayIndex = await playerThirtyDaysActivityDays(roleId);
activityData = { playerData: data, todayIndex, beginTime: data.beginTime, endTime: data.endTime } activityData = { playerData: data, todayIndex, canShow: () => data.canShow }
break; break;
} }
case ACTIVITY_TYPE.SELF_SERVICE_SHOP://自选商店 糜家商队 13 case ACTIVITY_TYPE.SELF_SERVICE_SHOP://自选商店 糜家商队 13
{ {
let data = await getPlayerActivityData(activityId, serverId, roleId); let data = await getPlayerActivityData(activityId, serverId, roleId);
let playerGoods = await ActivitySelfServiceGoodsModel.findData(activityId, roleId, data.roundIndex, true); let playerGoods = await ActivitySelfServiceGoodsModel.findData(activityId, roleId, data.roundIndex, true);
activityData = { playerData: data, playerGoods: playerGoods ? playerGoods : [], beginTime: data.beginTime, endTime: data.endTime } activityData = { playerData: data, playerGoods: playerGoods ? playerGoods : [], canShow: () => data.canShow }
break; break;
} }
case ACTIVITY_TYPE.FIRST_GIFT://首冲礼包活动 14 case ACTIVITY_TYPE.FIRST_GIFT://首冲礼包活动 14
@@ -55,6 +55,7 @@ export async function getPlayerPopUpShopData(activityId: number, serverId: numbe
} }
} }
} }
allPlayerShop['canShow'] = () => true;
return allPlayerShop; return allPlayerShop;
} }
@@ -22,6 +22,10 @@ export abstract class ActivityBase {
return this.todayIndex; return this.todayIndex;
} }
public canShow() {
return this.beginTime <= Date.now() && this.endTime >= Date.now()
}
constructor(activityData: ActivityModelType, createTime: number) { constructor(activityData: ActivityModelType, createTime: number) {
this.activityId = activityData.activityId; this.activityId = activityData.activityId;
this.delayDay = activityData.delayDay ? activityData.delayDay : 0; this.delayDay = activityData.delayDay ? activityData.delayDay : 0;
@@ -55,6 +55,9 @@ export class MonthlyTicketData extends ActivityBase {
this.dayIndex = 0; this.dayIndex = 0;
this.endTime = 0; this.endTime = 0;
} }
public canShow() { // 开始结束时间用于判断是否购买了月卡了,所以直接显示
return true
}
constructor(activityData: ActivityModelType, createTime: number) { constructor(activityData: ActivityModelType, createTime: number) {
super(activityData, createTime) super(activityData, createTime)