Merge branch 'master_online_hw' into master_test_hw
# Conflicts: # serverlogic/src/main/java/com/ljsd/jieling/ktbeans/ReportEventEnum.javaback_recharge
commit
a44c3aa81f
|
|
@ -98,7 +98,7 @@ public class ComplexEquipHandler extends BaseHandler<HeroInfoProto.ComplexEquipR
|
|||
HeroInfoProto.ComplexEquipResponse.Builder response = HeroInfoProto.ComplexEquipResponse.newBuilder();
|
||||
response.setDrop(drop);
|
||||
MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.EQUIP_COMPLEX_RESPONSE_VALUE, response.build(), true);
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.EQUIP_SYNTHESIS.getType(),targetEquip,proto.getNum(),new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()));
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.EQUIP_SYNTHESIS.getType(),targetEquip+"-"+proto.getNum(),new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()));
|
||||
|
||||
} else {
|
||||
|
||||
|
|
@ -185,18 +185,24 @@ public class ComplexEquipHandler extends BaseHandler<HeroInfoProto.ComplexEquipR
|
|||
int[][] createArray = new int[countMap.size()][];
|
||||
int index = 0 ;
|
||||
int totalCreate = 0;
|
||||
StringBuilder builder = new StringBuilder();
|
||||
for(Map.Entry<Integer, Integer> createEntry:countMap.entrySet()){
|
||||
|
||||
createArray[index] = new int[]{createEntry.getKey(),createEntry.getValue()};
|
||||
index++;
|
||||
totalCreate += createEntry.getValue();
|
||||
if(builder.length()>1){
|
||||
builder.append("|");
|
||||
}
|
||||
builder.append(createEntry.getKey()).append("-").append(createEntry.getValue());
|
||||
}
|
||||
ItemUtil.itemCost(user, consumeMap, BIReason.COMPLEX_EQUIP_CONSUME, 0);
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user,createArray,BIReason.COMPLEX_EQUIP);
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.WORKSHOP_CREATE_EQUIP, totalCreate);
|
||||
HeroInfoProto.ComplexEquipResponse.Builder response = HeroInfoProto.ComplexEquipResponse.newBuilder();
|
||||
response.setDrop(drop);
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.EQUIP_SYNTHESIS.getType(),new ArrayList<>(countMap.keySet()),"",new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()));
|
||||
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.EQUIP_SYNTHESIS.getType(),builder.toString(),new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()));
|
||||
MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.EQUIP_COMPLEX_RESPONSE_VALUE, response.build(), true);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@ 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.dao.EquipManager;
|
||||
import com.ljsd.jieling.logic.dao.Jewel;
|
||||
import com.ljsd.jieling.logic.dao.PropertyItem;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.logic.hero.HeroLogic;
|
||||
|
|
@ -111,12 +113,15 @@ public class ComplexJewelEquipRequestHandler extends BaseHandler<HeroInfoProto.C
|
|||
break;
|
||||
}
|
||||
response.addEquipIds(id);
|
||||
user.getEquipManager().remove(id);
|
||||
EquipManager equipManager = user.getEquipManager();
|
||||
PropertyItem propertyItem = equipManager.getEquipMap().get(id);
|
||||
consumeMap.put(propertyItem.getEquipId(),consumeMap.getOrDefault(propertyItem.getEquipId(),0)+1);
|
||||
equipManager.remove(id);
|
||||
i++;
|
||||
}
|
||||
response.setDrop(drop);
|
||||
MessageUtil.sendIndicationMessage(user.getId(), response.build());
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.TREASURE_SYNTHESIS.getType(),targetEquip,proto.getNum(),new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()));
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.TREASURE_SYNTHESIS.getType(),targetEquip+"-"+proto.getNum(),new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()));
|
||||
|
||||
|
||||
} else {
|
||||
|
|
@ -205,10 +210,20 @@ public class ComplexJewelEquipRequestHandler extends BaseHandler<HeroInfoProto.C
|
|||
i++;
|
||||
}
|
||||
}
|
||||
Map<Integer,Integer> reward = new HashMap<>();
|
||||
for (String id:newids) {
|
||||
equips.add(CBean2Proto.getEquipProto( user.getEquipManager().getEquipMap().get(id)));
|
||||
CommonProto.Equip equipProto = CBean2Proto.getEquipProto(user.getEquipManager().getEquipMap().get(id));
|
||||
reward.put(equipProto.getEquipId(),reward.getOrDefault(equipProto.getEquipId(),0)+1);
|
||||
equips.add(equipProto);
|
||||
}
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.TREASURE_SYNTHESIS.getType(),new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()),new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()));
|
||||
StringBuilder builder = new StringBuilder();
|
||||
for(Map.Entry<Integer,Integer> entry:reward.entrySet()){
|
||||
if(builder.length()>0){
|
||||
builder.append("|");
|
||||
}
|
||||
builder.append(entry.getKey()).append("-").append(entry.getValue());
|
||||
}
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.TREASURE_SYNTHESIS.getType(),builder.toString(),new ArrayList<>(consumeMap.values()),new ArrayList<>(consumeMap.keySet()),new ArrayList<>(consumeMap.values()));
|
||||
ItemUtil.itemCost(user, consumeMap, BIReason.COMPLEX_EQUIP_CONSUME, 0);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ public enum ReportEventEnum {
|
|||
TIME_SUMMON(56,"Time_summon",new CommonEventHandler(),new String[]{"hero_id","summon_type","cost_item_id","cost_amount","hero_id_quality_list"}),
|
||||
FATALITY_SUMMON(57,"fatality_summon",new CommonEventHandler(),new String[]{"hero_id","summon_type","cost_item_id","cost_amount","hero_id_quality_list"}),
|
||||
GET_BEAST(58,"get_beast",new CommonEventHandler(),new String[]{"beast_id","quality","get_type"}),
|
||||
BEAST_LEVEL(59,"beast_level",new CommonEventHandler(),new String[]{"beast_id","old_level","new_level","cost_item_list"}),
|
||||
BEAST_LEVEL(59,"beast_level",new CommonEventHandler(),new String[]{"beast_id","old_level","new_level","cost_item_list_info"}),
|
||||
BEAST_STAR(60,"beast_star",new CommonEventHandler(),new String[]{"beast_id","old_star","new_star","cost_item_list","cost_beast_list"}),
|
||||
BEAST_SUMMON(61,"beast_summon",new CommonEventHandler(),new String[]{"beast_id","summon_type","cost_item_id","cost_amount","reward_nums_list"}),
|
||||
|
||||
|
|
|
|||
|
|
@ -3231,7 +3231,7 @@ public class HeroLogic{
|
|||
if(consumeBuilder.length()>0){
|
||||
consumeBuilder.append("|");
|
||||
}
|
||||
consumeBuilder.append(pokemon.getTmpId()).append("-").append(pokemon.getLevel());
|
||||
consumeBuilder.append(consumePokemon.getTmpId()).append("-").append(1);
|
||||
|
||||
}
|
||||
int[][] consumeRes = config.getConsumeRes();
|
||||
|
|
|
|||
|
|
@ -437,8 +437,7 @@ public class BuyGoodsLogic {
|
|||
ExpeditionLogic.sendTreasureRewardUpdate(OnlineUserManager.getSessionByUid(user.getId()),user.getExpeditionManager().getWorldTreasureReward().getScore(),rewardStatusMap,user.getExpeditionManager().getWorldTreasureReward().getCreateTime(),1);
|
||||
}
|
||||
if(sRechargeCommodityConfig.getTime() ==5){
|
||||
long nextTime = TimeUtils.getLastOrUnderHour(TimeUtils.now() + sRechargeCommodityConfig.getDailyUpdate() * TimeUtils.DAY, 0, 0, true);
|
||||
rechargeInfo.updateRefreshMapByKey(sRechargeCommodityConfig.getId(),nextTime);
|
||||
rechargeInfo.updateRefreshMapByKey(sRechargeCommodityConfig.getId(),TimeUtils.now()+sRechargeCommodityConfig.getDailyUpdate()*TimeUtils.DAY);
|
||||
}
|
||||
resultRes.setResultCode(1);
|
||||
// KtEventUtils.onKtEvent(user, ParamEventBean.UserPayEvent,goodsId,orderId,resultRes.getResultCode(),price);
|
||||
|
|
@ -585,9 +584,14 @@ public class BuyGoodsLogic {
|
|||
|
||||
for(SRechargeCommodityConfig sRechargeCommodityConfig :SRechargeCommodityConfig.rechargeCommodityConfigMap.values()){
|
||||
// 25闯关礼包、26、心魔试炼礼包 特殊处理
|
||||
if ((sRechargeCommodityConfig.getShowType() == 25 || sRechargeCommodityConfig.getShowType() == 26)
|
||||
&& !rechargeInfo.getBuyGoodsTimes().containsKey(sRechargeCommodityConfig.getId())) {
|
||||
continue;
|
||||
if (sRechargeCommodityConfig.getTime() == 6) {
|
||||
if (!rechargeInfo.getRefreshBagMap().containsKey(sRechargeCommodityConfig.getId())) {
|
||||
continue;
|
||||
}
|
||||
long dytime = rechargeInfo.getRefreshBagMap().get(sRechargeCommodityConfig.getId()) - now;
|
||||
if(dytime <= 0){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
int limit = sRechargeCommodityConfig.getLimit();
|
||||
int goodsId = sRechargeCommodityConfig.getId();
|
||||
|
|
@ -976,8 +980,11 @@ public class BuyGoodsLogic {
|
|||
// }
|
||||
// }
|
||||
if (sRechargeCommodityConfig.getTime() == 6) {
|
||||
int dytime = rechargeInfo.getDyGoodsCanBuyTimes().getOrDefault(goodsId,0)-1;
|
||||
if(dytime <0){
|
||||
if (!rechargeInfo.getRefreshBagMap().containsKey(sRechargeCommodityConfig.getId())) {
|
||||
continue;
|
||||
}
|
||||
long dytime = rechargeInfo.getRefreshBagMap().get(sRechargeCommodityConfig.getId()) - now;
|
||||
if(dytime <= 0){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,11 +39,15 @@ import com.ljsd.jieling.logic.store.BuyGoodsLogic;
|
|||
import com.ljsd.jieling.logic.store.StoreLogic;
|
||||
import com.ljsd.jieling.network.server.ProtocolsManager;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import io.netty.util.internal.PlatformDependent;
|
||||
import manager.STableManager;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.util.ReflectionUtils;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicLong;
|
||||
|
||||
public class MinuteTask extends Thread {
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(MinuteTask.class);
|
||||
|
|
@ -104,12 +108,12 @@ public class MinuteTask extends Thread {
|
|||
e.printStackTrace();
|
||||
LOGGER.error("Exception::=>{}",e.toString());
|
||||
}
|
||||
try {
|
||||
fiveMinuteOnlineSend();
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
LOGGER.error("Exception::=>{}",e.toString());
|
||||
}
|
||||
// try {
|
||||
// fiveMinuteOnlineSend();
|
||||
// }catch (Exception e){
|
||||
// e.printStackTrace();
|
||||
// LOGGER.error("Exception::=>{}",e.toString());
|
||||
// }
|
||||
try {
|
||||
CheckFight.getInstance().luaHotFix();
|
||||
MongoUtil.getInstence().lastUpdate();
|
||||
|
|
@ -150,29 +154,30 @@ public class MinuteTask extends Thread {
|
|||
|
||||
|
||||
|
||||
|
||||
directMemoryGet();//打印堆外内存
|
||||
LOGGER.info("MinuteTask end...");
|
||||
} catch (Exception e) {
|
||||
LOGGER.error("e",e);
|
||||
}
|
||||
}
|
||||
|
||||
private void fiveMinuteOnlineSend() {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
int minute = calendar.get(Calendar.MINUTE);
|
||||
if(minute%5 == 0){
|
||||
KTAppOnline ktAppOnline = new KTAppOnline();
|
||||
int onlineNum = OnlineUserManager.sessionMap.size();
|
||||
ParamEventBean paramEventBean = new ParamEventBean(ParamEventBean.OnlineEvent);
|
||||
int time =(int)(calendar.getTimeInMillis()/1000);
|
||||
paramEventBean.add(String.valueOf(time));
|
||||
paramEventBean.add(String.valueOf(onlineNum));
|
||||
ktAppOnline.setParam_event(paramEventBean);
|
||||
ktAppOnline.setParam_data(KtBeanBuilderUtils.paramDataBuildForSystem());
|
||||
ktAppOnline.getParam_data().setCategory_s(LoginParamType.DATA_CATEGORY_APP);
|
||||
DataMessageUtils.addLogQueue(ktAppOnline);
|
||||
}
|
||||
}
|
||||
//弃用
|
||||
// private void fiveMinuteOnlineSend() {
|
||||
// Calendar calendar = Calendar.getInstance();
|
||||
// int minute = calendar.get(Calendar.MINUTE);
|
||||
// if(minute%5 == 0){
|
||||
// KTAppOnline ktAppOnline = new KTAppOnline();
|
||||
// int onlineNum = OnlineUserManager.sessionMap.size();
|
||||
// ParamEventBean paramEventBean = new ParamEventBean(ParamEventBean.OnlineEvent);
|
||||
// int time =(int)(calendar.getTimeInMillis()/1000);
|
||||
// paramEventBean.add(String.valueOf(time));
|
||||
// paramEventBean.add(String.valueOf(onlineNum));
|
||||
// ktAppOnline.setParam_event(paramEventBean);
|
||||
// ktAppOnline.setParam_data(KtBeanBuilderUtils.paramDataBuildForSystem());
|
||||
// ktAppOnline.getParam_data().setCategory_s(LoginParamType.DATA_CATEGORY_APP);
|
||||
// DataMessageUtils.addLogQueue(ktAppOnline);
|
||||
// }
|
||||
// }
|
||||
//每分钟异步上报在线人数
|
||||
private void reportUserOnline() {
|
||||
new OnlineUserReportTask().start();
|
||||
|
|
@ -272,5 +277,16 @@ public class MinuteTask extends Thread {
|
|||
}
|
||||
}
|
||||
|
||||
public void directMemoryGet(){
|
||||
Field field = ReflectionUtils.findField(PlatformDependent.class,"DIRECT_MEMORY_COUNTER");
|
||||
field.setAccessible(true);
|
||||
try {
|
||||
AtomicLong direct = (AtomicLong)field.get(PlatformDependent.class);
|
||||
LOGGER.info("directMemoryGet 堆外大小=>{}", direct.get());
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue