diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/DailyPreferentialGiftActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/DailyPreferentialGiftActivity.java index f6b20188d..513b47b19 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/DailyPreferentialGiftActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/DailyPreferentialGiftActivity.java @@ -43,12 +43,9 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{ // 初始化阶段奖励 List sActivityRewardConfigs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id); ActivityLogic.getInstance().initOtherMission(mission, sActivityRewardConfigs.stream().mapToInt(n->n.getId()).boxed().collect(Collectors.toList())); - //mission.setV((int)(TimeUtils.getAppointTime(0)/1000)+3600*24*7); mission.setV(0); mission.setCreatTime(TimeUtils.getAppointTime(0)); user.getActivityManager().getActivityMissionMap().put(id, mission); - //ActivityMission activityMission =user.getActivityManager().getActivityMissionMap().get(this.id); - //sendActivityProgress(user, activityMission, null); ActivityLogic.getInstance().sendActivityInfo(user, id); } @@ -67,7 +64,6 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{ if(mission == null){ return; } - //long timeTemp = mission.getCreatTime(); //开启礼包的第几天 int day = (int)TimeUtils.getGapDaysByTwoTime(TimeUtils.getTimeStamp2(mission.getCreatTime()),TimeUtils.getTimeStamp2(TimeUtils.now()))+1; List rewardConfig = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id); @@ -87,13 +83,12 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{ String title = SErrorCodeEerverConfig.getI18NMessage("sevendaycard_mail_title"); String content = SErrorCodeEerverConfig.getI18NMessage("sevendaycard_mail_txt"); if(day >7){ - //第八天登錄 發送所有獎勵 TODO + //第八天登錄 發送所有獎勵 //下线当天的活动处理 sendSpecailMail(user,title,content,mission); for(int i = mission.getV()+1;i <= 7;i++){ MailLogic.getInstance().sendMail(user.getId(), title, content, StringUtil.parseArrayToString(rewardMap.entrySet().stream().map(n->new int[]{n.getKey(),n.getValue()}) .toArray(int[][]::new)), TimeUtils.nowInt(), Global.MAIL_EFFECTIVE_TIME); - LOGGER.info("11:"+i); } //刪除數據 user.getActivityManager().getActivityMissionMap().remove(id); @@ -110,13 +105,11 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{ for(int i = mission.getV()+1;inew int[]{n.getKey(),n.getValue()}) .toArray(int[][]::new)), TimeUtils.nowInt(), Global.MAIL_EFFECTIVE_TIME); - LOGGER.info("22:"+i); } List sActivityRewardConfigs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id); if(sActivityRewardConfigs == null){return;} for(SActivityRewardConfig sActivityRewardConfig : sActivityRewardConfigs){ ActivityProgressInfo activityProgressInfo = new ActivityProgressInfo(); - //activityProgressInfo.setProgrss(ActivityLogic.getInstance().getInitActivityMissionProgress(id)); activityProgressInfo.setState(0); mission.getActivityMissionMap().put(sActivityRewardConfig.getId(), activityProgressInfo); } @@ -132,12 +125,14 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{ public static void sendSpecailMail( User user,String title,String content, ActivityMission mission ){ Map progressMap = mission.getActivityMissionMap(); Map rewardMap1 = new HashMap(); + int num=0; for (Map.Entry progress:progressMap.entrySet()){ if(progress.getValue().getState() == ActivityType.WILL_TAKE){ SActivityRewardConfig sActivityRewardConfig = SActivityRewardConfig.getsActivityRewardConfigByMissionId(progress.getKey()); if(sActivityRewardConfig == null){ continue; } + num++; for(int[]reward:sActivityRewardConfig.getReward()){ if(rewardMap1.containsKey(reward[0])){ rewardMap1.put(reward[0],rewardMap1.get(reward[0])+reward[1]); @@ -148,7 +143,9 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{ } } if(rewardMap1.size()>0){ - mission.setV(mission.getV()+1); + if(progressMap.size()==num){ + mission.setV(mission.getV()+1); + } MailLogic.getInstance().sendMail(user.getId(), title, content, StringUtil.parseArrayToString(rewardMap1.entrySet().stream().map(n->new int[]{n.getKey(),n.getValue()}) .toArray(int[][]::new)), TimeUtils.nowInt(), Global.MAIL_EFFECTIVE_TIME); } @@ -172,7 +169,6 @@ public class DailyPreferentialGiftActivity extends AbstractActivity{ throw new ErrorCodeException(ErrorCode.newDefineCode("活动奖励已经领取")); } int day = (int)TimeUtils.getGapDaysByTwoTime(TimeUtils.getTimeStamp2(activityMission.getCreatTime()),TimeUtils.getTimeStamp2(TimeUtils.now())); - //if(activityMission.getV()