超值返利活动修改提交
parent
92b7b7ee82
commit
e2fc3f54cd
|
@ -5,10 +5,7 @@ import com.ljsd.jieling.jbean.ActivityManager;
|
|||
import com.ljsd.jieling.jbean.ActivityMission;
|
||||
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||
import com.ljsd.jieling.logic.activity.event.BuyGoodsDirectEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.NewWelfareEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.activity.event.*;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.logic.store.GiftGoodsType;
|
||||
|
@ -26,40 +23,33 @@ class NewRechargeSumDayActivity extends AbstractActivity {
|
|||
|
||||
public NewRechargeSumDayActivity(int id) {
|
||||
super(id);
|
||||
Poster.getPoster().listenEvent(this, BuyGoodsDirectEvent.class);
|
||||
Poster.getPoster().listenEvent(this, RechargeRewardEvent.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEvent(IEvent event) throws Exception {
|
||||
super.onEvent(event);
|
||||
if (!(event instanceof BuyGoodsDirectEvent)) {
|
||||
if (!(event instanceof RechargeRewardEvent)) {
|
||||
return;
|
||||
}
|
||||
BuyGoodsDirectEvent buyGoodsDirectEvent = (BuyGoodsDirectEvent) event;
|
||||
int goodsId=buyGoodsDirectEvent.getGoodsId();
|
||||
SRechargeCommodityNewConfig rechargeConfig=SRechargeCommodityNewConfig.getConfigById(goodsId);
|
||||
if (rechargeConfig==null||rechargeConfig.getType()!= GiftGoodsType.RechargeSumDay){
|
||||
return;
|
||||
}
|
||||
User user = UserManager.getUser(buyGoodsDirectEvent.getUid());
|
||||
RechargeRewardEvent rechargeRewardEvent = (RechargeRewardEvent) event;
|
||||
int rechargeCount=rechargeRewardEvent.getRechargeCount();
|
||||
User user = UserManager.getUser(rechargeRewardEvent.getUid());
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
boolean isSend=false;
|
||||
for (Map.Entry<Integer, ActivityProgressInfo> item : activityMission.getActivityMissionMap().entrySet()) {
|
||||
ActivityProgressInfo activityProgressInfo = item.getValue();
|
||||
int missionId=item.getKey();
|
||||
SActivityRewardConfig missionConfig=SActivityRewardConfig.getsActivityRewardConfigByMissionId(missionId);
|
||||
if (missionConfig.getValues()[0][0]==goodsId&&missionConfig.getSort()-1==activityMission.getV()&&activityProgressInfo.getState()==ActivityType.WILL_TAKE){
|
||||
activityProgressInfo.setState(1);
|
||||
isSend=true;
|
||||
if (missionConfig.getSort()-1==activityMission.getV()&&activityProgressInfo.getState()==ActivityType.WILL_TAKE){
|
||||
int dayRechargeCount= activityProgressInfo.getProgrss()+rechargeCount;
|
||||
activityProgressInfo.setProgrss(dayRechargeCount);
|
||||
}
|
||||
activityMission.getActivityMissionMap().put(item.getKey(), activityProgressInfo);
|
||||
}
|
||||
if (isSend){
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
}
|
||||
|
||||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -68,14 +58,20 @@ class NewRechargeSumDayActivity extends AbstractActivity {
|
|||
ActivityMission activityMission = activityManager.getActivityMissionMap().get(id);
|
||||
int buyNum=0;
|
||||
for (Map.Entry<Integer, ActivityProgressInfo> progressInfoEntry : activityMission.getActivityMissionMap().entrySet()) {
|
||||
if (progressInfoEntry.getValue().getState()==ActivityType.HAD_TAKED){
|
||||
SActivityRewardConfig rewardConfig= SActivityRewardConfig.getsActivityRewardConfigByMissionId(progressInfoEntry.getKey());
|
||||
if (progressInfoEntry.getValue().getProgrss()>=rewardConfig.getValues()[0][0]){
|
||||
buyNum++;
|
||||
}else{
|
||||
progressInfoEntry.getValue().setProgrss(0);
|
||||
}
|
||||
}
|
||||
if (buyNum > activityMission.getV()) {
|
||||
activityMission.setV(activityMission.getV() + 1);
|
||||
}
|
||||
if (activityMission.getV() >= SActivityRewardConfig.getsActivityRewardConfigByActivityId(id).size()) {
|
||||
//补发未领取的奖励
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
takeAllReward(sessionByUid);
|
||||
ActivityLogic.getInstance().initMissionInfo(activityMission,id);
|
||||
}
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
|
|
|
@ -384,8 +384,8 @@ public class BuyGoodsNewLogic {
|
|||
if(dropArray!=null && dropArray.length>=1){
|
||||
drop = ItemUtil.drop(user,dropArray, BIReason.DIRECT_BUY);
|
||||
}
|
||||
//红包事件 和积天豪礼事件
|
||||
if(type==GiftGoodsType.RED_PACKET||type==GiftGoodsType.RechargeSumDay){
|
||||
//红包事件
|
||||
if(type==GiftGoodsType.RED_PACKET){
|
||||
Poster.getPoster().dispatchEvent(new BuyGoodsDirectEvent(user.getId(),config.getId()));
|
||||
}
|
||||
if(type==GiftGoodsType.SKY_TREASURE){
|
||||
|
|
Loading…
Reference in New Issue