社稷大典埋点

back_recharge
lvxinran 2020-12-14 11:42:10 +08:00
parent fbc893124f
commit d2c1b418a9
5 changed files with 45 additions and 6 deletions

View File

@ -6,6 +6,8 @@ import com.ljsd.jieling.exception.ErrorCode;
import com.ljsd.jieling.exception.ErrorCodeException;
import com.ljsd.jieling.globals.BIReason;
import com.ljsd.jieling.handler.BaseHandler;
import com.ljsd.jieling.ktbeans.ReportEventEnum;
import com.ljsd.jieling.ktbeans.ReportUtil;
import com.ljsd.jieling.logic.activity.ActivityLogic;
import com.ljsd.jieling.logic.activity.ActivityTypeEnum;
import com.ljsd.jieling.logic.activity.event.CommitSheJiEvent;
@ -14,6 +16,9 @@ import com.ljsd.jieling.logic.dao.GuilidManager;
import com.ljsd.jieling.logic.dao.UserManager;
import com.ljsd.jieling.logic.dao.root.GuildInfo;
import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.rank.RankContext;
import com.ljsd.jieling.logic.rank.RankEnum;
import com.ljsd.jieling.logic.rank.RankLogic;
import rpc.protocols.ActivityProto;
import rpc.protocols.CommonProto;
import rpc.protocols.MessageTypeProto;
@ -99,7 +104,7 @@ public class CommitShejiActivityItemRequestHandler extends BaseHandler<ActivityP
_result[0][1]= sGodSacrificeSetting.getRewardItemChangRate()[index+3]*proto.getItemNum();
CommonProto.Drop.Builder drop = ItemUtil.drop(user, _result, BIReason.SHEJI_ACTIVITY);
guildInfo.setGuildSheJiScore(score+guildInfo.getGuildSheJiScore());
Poster.getPoster().dispatchEvent(new CommitSheJiEvent(guildId,uid,score));
Poster.getPoster().dispatchEvent(new CommitSheJiEvent(guildId,uid,score,proto.getItemId(),proto.getItemNum()));
return ActivityProto.CommitShejiActivityItemResponse.newBuilder().setDrop(drop).build();
}
}

View File

@ -93,7 +93,7 @@ public enum ReportEventEnum {
GET_TREASURE(65,"get_treasure",new CommonEventHandler(),new String[]{"treasure_id","get_entrance"}),
ARENA_CHALLENGE(66,"arena_challenge",new CommonEventHandler(),new String[]{"battle_result","own_integral_num","rewards_num","own_new_integral_num","own_ranking","role_id","enemy_integral_num","new_enemy_integral_num","enemy_ranking","hero1","hero2","hero3","hero4","hero5","hero6","attack_pokemon","defend_hero1","defend_hero2","defend_hero3","defend_hero4","defend_hero5","defend_hero6","defend_pokemon"}),
CEREMONY(67,"ceremony",new CommonEventHandler(),new String[]{"cost_item_id","integral_num","new_integral_num","own_ranking","guild_ranking"}),
VIP_LEVEL_UP(100,"", new VipLevelUpEventHandler(),new String[]{""});

View File

@ -6,6 +6,8 @@ import com.ljsd.jieling.db.mongo.MongoUtil;
import com.ljsd.jieling.globals.Global;
import com.ljsd.jieling.jbean.ActivityMission;
import com.ljsd.jieling.jbean.ActivityProgressInfo;
import com.ljsd.jieling.ktbeans.ReportEventEnum;
import com.ljsd.jieling.ktbeans.ReportUtil;
import com.ljsd.jieling.logic.activity.event.CommitSheJiEvent;
import com.ljsd.jieling.logic.activity.event.IEvent;
import com.ljsd.jieling.logic.activity.event.Poster;
@ -96,7 +98,8 @@ class SheJiActivity extends AbstractActivity {
if(!ActivityLogic.getInstance().checkGlobleActivityOpen(id)){
return;
}
int guildId = ((CommitSheJiEvent) event).getGuild();
CommitSheJiEvent commitSheJiEvent = (CommitSheJiEvent) event;
int guildId = commitSheJiEvent.getGuild();
if (guildId == 0) {
LOGGER.error("Exception guild id=>{} not exit", guildId);
}
@ -122,8 +125,13 @@ class SheJiActivity extends AbstractActivity {
if(guildInfo.getGuildSheJiScore()>=sGodSacrificeSetting.getL1Score()){
guildRank.addRank(guildId,String.valueOf(id),guildInfo.getGuildSheJiScore());
}
if( ((CommitSheJiEvent) event).getScore()!=0){
RankContext.getRankEnum(RankEnum.EXPERT_RANK.getType()).incrementRankScoreOnly(((CommitSheJiEvent) event).getCommitUid(), String.valueOf(id), ((CommitSheJiEvent) event).getScore());
if( commitSheJiEvent.getScore()!=0){
RankContext.getRankEnum(RankEnum.EXPERT_RANK.getType()).incrementRankScoreOnly(commitSheJiEvent.getCommitUid(), String.valueOf(id), commitSheJiEvent.getScore());
}
if(commitSheJiEvent.getItemId()!=0){
AbstractRank personRank = RankContext.getRankEnum(RankEnum.EXPERT_RANK.getType());
double score = RankContext.getRankEnum(RankEnum.GUILD_SHEJI_SCORE_RANK.getType()).getScoreById(commitSheJiEvent.getCommitUid(), String.valueOf(id));
ReportUtil.onReportEvent(UserManager.getUser(commitSheJiEvent.getCommitUid()),ReportEventEnum.CEREMONY.getType(),commitSheJiEvent.getItemId()+"#"+commitSheJiEvent.getItemNum(),commitSheJiEvent.getScore(),(int)score,personRank.getRankIndexByKey(String.valueOf(id),commitSheJiEvent.getCommitUid()),guildRank.getRankIndexByKey("",guildId)==-1?0:guildRank.getRankIndexByKey("",guildId));
}
}

View File

@ -8,6 +8,8 @@ public class CommitSheJiEvent implements IEvent{
private int guild;
private int commitUid;
private int score;
private int itemId;
private int itemNum;
public CommitSheJiEvent(int guild, int commitUid, int score) {
this.guild = guild;
@ -15,6 +17,14 @@ public class CommitSheJiEvent implements IEvent{
this.score = score;
}
public CommitSheJiEvent(int guild, int commitUid, int score, int itemId, int itemNum) {
this.guild = guild;
this.commitUid = commitUid;
this.score = score;
this.itemId = itemId;
this.itemNum = itemNum;
}
public int getGuild() {
return guild;
}
@ -38,4 +48,20 @@ public class CommitSheJiEvent implements IEvent{
public void setScore(int score) {
this.score = score;
}
public int getItemId() {
return itemId;
}
public void setItemId(int itemId) {
this.itemId = itemId;
}
public int getItemNum() {
return itemNum;
}
public void setItemNum(int itemNum) {
this.itemNum = itemNum;
}
}

View File

@ -371,7 +371,7 @@ public class GuildLogic {
RedisUtil.getInstence().releaseDistributedLock(RedisKey.OPERATE_FAMILY,Integer.toString(guildId), Integer.toString(uid));
}
//社稷大典需要初始化分数
Poster.getPoster().dispatchEvent(new CommitSheJiEvent(guildId,uid,0));
Poster.getPoster().dispatchEvent(new CommitSheJiEvent(guildId,uid,0,0,0));
RedisUtil.getInstence().expire(RedisKey.getKey(RedisKey.FAMILY_JOIN,String.valueOf(uid),false), TimeUtils.DAY);
addGuildLog(guildInfo.getId(),GuildDef.Log.JOIN,user.getPlayerInfoManager().getNickName());
Family.FamilyJoinIndicaion build = Family.FamilyJoinIndicaion.newBuilder().setFamilyBaseInfo(CBean2Proto.getFamilyBaseInfo(guildInfo)).setFamilyUserInfo(CBean2Proto.getFamilyUserInfo(user, GlobalsDef.MEMBER)).build();