back_recharge
jiahuiwen 2019-07-05 14:53:28 +08:00
commit 269d4e0267
51 changed files with 495 additions and 172 deletions

View File

@ -1,10 +1,10 @@
Id AreaName OpenLevel SystemBoss SystemBossTime BaseRewardGroup RandomRewardGroup UpgradeConsume InvasionBoss InvasionBossReward InvasionBossTime InvasionBossRefresh InvasionBossHolding Id AreaName OpenLevel SystemBoss SystemBossTime BaseRewardGroup RandomRewardGroup UpgradeConsume InvasionBoss InvasionBossReward InvasionBossTime InvasionBossRefresh InvasionBossHolding
int string mut,int#int,1 int int mut,int#int,1 mut,int#int,2 mut,int#int,2 mut,int#int,3 mut,int#int,3 int int int int string mut,int#int,1 int int mut,int#int,1 mut,int#int,2 mut,int#int,2 mut,int#int,3 mut,int#int,3 int int int
1 起源之地 17#54#68 25001 300 101#151#191 93|93#171#181#251#261|93#351#211#221#291#301 14#1000000|14#5000000 601011#278|0#9722,601021#278|0#9722,601031#111|601032#111|601033#56|0#9722 601011#210101|601012#210101,601021#210102|601022#210102,601031#210103|601032#210103|601033|601034#210103 180 3600 10800 1 起源之地 17#54#68 25001 300 101#151#191 93|93#171#181#251#261|93#351#211#221#291#301 14#1000000|14#5000000 601011#1668|0#8332,601021#1668|0#8332,601031#556|601032#556|601033#556|0#8332 601011#210101|601012#210101,601021#210102|601022#210102,601031#210103|601032#210103|601033|601034#210103 180 3600 10800
2 遗忘之路 25#57#69 25002 300 102#152#192 118|118#172#182#252#262|118#352#212#222#292#302 14#1500000|14#6000000 602011#139|602012#139|0#9722,602021#139|602022#139|0#9722,602031#111|602032#111|602033#56|0#9722 602011#210201|602012#210201|602013#210201,602021#210202|602022#210202|602023#210202,602031#210203|602032#210203|602033#210203|602034#210203 180 3600 10800 2 遗忘之路 25#57#69 25002 300 102#152#192 118|118#172#182#252#262|118#352#212#222#292#302 14#1500000|14#6000000 602011#834|602012#834|0#8332,602021#834|602022#834|0#8332,602031#556|602032#556|602033#556|0#8332 602011#210201|602012#210201|602013#210201,602021#210202|602022#210202|602023#210202,602031#210203|602032#210203|602033#210203|602034#210203 180 3600 10800
3 后悔石室 34#59#69 25003 300 103#153#193 118|118#173#183#253#263|118#353#213#223#293#303 14#2000000|14#7000000 603011#139|603012#139|0#9722,603021#139|603022#139|0#9722,603031#111|603032#111|603033#56|0#9722 603011#210301|603012#210301|603013#210301,603021#210302|603022#210302|603023#210302,603031#210303|603032#210303|603033#210303|603034#210303 180 3600 10800 3 后悔石室 34#59#69 25003 300 103#153#193 118|118#173#183#253#263|118#353#213#223#293#303 14#2000000|14#7000000 603011#834|603012#834|0#8332,603021#834|603022#834|0#8332,603031#556|603032#556|603033#556|0#8332 603011#210301|603012#210301|603013#210301,603021#210302|603022#210302|603023#210302,603031#210303|603032#210303|603033#210303|603034#210303 180 3600 10800
4 罪罚神殿 37#64#71 25004 300 104#154#194 118#123|118#123#174#184#254#264|118#123#354#214#224#294#304 14#2500000|14#8000000 604011#139|604012#139|0#9722,604021#139|604022#139|0#9722,604031#111|604032#111|604033#56|0#9722 604011#210401|604012#210401|604013#210401,604021#210402|604022#210402|604023#210402,604031#210403|604032#210403|604033#210403|604034#210403 180 3600 10800 4 罪罚神殿 37#64#71 25004 300 104#154#194 118#123|118#123#174#184#254#264|118#123#354#214#224#294#304 14#2500000|14#8000000 604011#834|604012#834|0#8332,604021#834|604022#834|0#8332,604031#556|604032#556|604033#556|0#8332 604011#210401|604012#210401|604013#210401,604021#210402|604022#210402|604023#210402,604031#210403|604032#210403|604033#210403|604034#210403 180 3600 10800
5 祈祷圣所 42#63#72 25005 300 105#155#195 123|123#175#185#255#265|123#355#215#225#295#305 14#3000000|14#9000000 605011#139|605012#139|0#9722,605021#139|605022#139|0#9722,605031#111|605032#111|605033#56|0#9722 605011#210501|605012#210501|605013#210501,605021#210502|605022#210502|605023#210502,605031#210503|605032#210503|605033#210503|605034#210503 180 3600 10800 5 祈祷圣所 42#63#72 25005 300 105#155#195 123|123#175#185#255#265|123#355#215#225#295#305 14#3000000|14#9000000 605011#834|605012#834|0#8332,605021#834|605022#834|0#8332,605031#556|605032#556|605033#556|0#8332 605011#210501|605012#210501|605013#210501,605021#210502|605022#210502|605023#210502,605031#210503|605032#210503|605033#210503|605034#210503 180 3600 10800
6 永劫业火 46#64#72 25006 300 106#156#196 123|123#176#186#256#266|123#356#216#226#296#306 14#3500000|14#10000000 606011#139|606012#139|0#9722,606021#139|606022#139|0#9722,606031#93|606032#93|606033#93|0#9721 606011#210601|606012#210601|606013#210601,606021#210602|606022#210602|606023#210602,606031#210603|606032#210603|606033#210603|606034#210603 180 3600 10800 6 永劫业火 46#64#72 25006 300 106#156#196 123|123#176#186#256#266|123#356#216#226#296#306 14#3500000|14#10000000 606011#834|606012#834|0#8332,606021#834|606022#834|0#8332,606031#556|606032#556|606033#556|0#8332 606011#210601|606012#210601|606013#210601,606021#210602|606022#210602|606023#210602,606031#210603|606032#210603|606033#210603|606034#210603 180 3600 10800
7 无生密室 49#66#74 25007 300 107#157#197 123|123#177#187#257#267|123#357#217#227#297#307 14#4000000|14#11000000 607011#139|607012#139|0#9722,607021#139|607022#139|0#9722,607031#93|607032#93|607033#93|0#9721 607011#210701|607012#210701|607013#210701,607021#210702|607022#210702|607023#210702,607031#210703|607032#210703|607033#210703|607034#210703 180 3600 10800 7 无生密室 49#66#74 25007 300 107#157#197 123|123#177#187#257#267|123#357#217#227#297#307 14#4000000|14#11000000 607011#834|607012#834|0#8332,607021#834|607022#834|0#8332,607031#556|607032#556|607033#556|0#8332 607011#210701|607012#210701|607013#210701,607021#210702|607022#210702|607023#210702,607031#210703|607032#210703|607033#210703|607034#210703 180 3600 10800
8 万神黄昏 52#67#75 25008 300 108#158#198 138|138#178#188#258#268|138#358#401#218#228#298#308 14#4500000|14#12000000 608011#139|608012#139|0#9722,608021#139|608022#139|0#9722,608031#93|608032#93|608033#93|0#9721 608011#210801|608012#210801|608013#210801,608021#210802|608022#210802|608023#210802,608031#210803|608032#210803|608033#210803|608034#210803 180 3600 10800 8 万神黄昏 52#67#75 25008 300 108#158#198 138|138#178#188#258#268|138#358#401#218#228#298#308 14#4500000|14#12000000 608011#834|608012#834|0#8332,608021#834|608022#834|0#8332,608031#556|608032#556|608033#556|0#8332 608011#210801|608012#210801|608013#210801,608021#210802|608022#210802|608023#210802,608031#210803|608032#210803|608033#210803|608034#210803 180 3600 10800

View File

@ -8,9 +8,9 @@ int mut,int#int,1 int string string string string int
6 2#99 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 6 2#99 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0
7 2#17 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 7 2#17 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0
8 2#19 1 20190210 080000 20290210 080000 20190210 050000 20190224 030000 2 8 2#19 1 20190210 080000 20290210 080000 20190210 050000 20190224 030000 2
9 2#30 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 9 2#99 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0
10 2#30 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 10 2#99 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0
11 1#1051 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 11 2#99 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0
12 2#12 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 12 2#12 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0
13 2#99 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 13 2#99 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0
14 2#13 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 14 2#13 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0
@ -34,3 +34,5 @@ int mut,int#int,1 int string string string string int
103 3#30 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 103 3#30 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000
104 3#50 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 104 3#50 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000
30 2#21 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 30 2#21 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000
31 2#99 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000
32 2#99 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000

View File

@ -400,7 +400,7 @@ int string bool int int int bool int string int int int int mut,int#int,1 int in
12012 4星万能碎片 true 2 4 4 false 0 100001 1 512 40 1 null 0 9999999 12012 4星万能碎片 true 2 4 4 false 0 100001 1 512 40 1 null 0 9999999
12013 5星万能碎片 true 2 4 5 false 0 100001 1 513 50 1 null 0 9999999 12013 5星万能碎片 true 2 4 5 false 0 100001 1 513 50 1 null 0 9999999
12014 5星万能碎片 true 2 4 5 false 0 100001 1 514 50 1 null 0 9999999 12014 5星万能碎片 true 2 4 5 false 0 100001 1 514 50 1 null 0 9999999
12015 风系5星万能碎片 true 2 4 5 false 0 100001 1 516 50 1 null 0 9999999 12015 5星万能碎片 true 2 4 5 false 0 100001 1 516 50 1 null 0 9999999
12016 5星万能碎片 true 2 4 5 false 0 100001 1 515 50 1 null 0 9999999 12016 5星万能碎片 true 2 4 5 false 0 100001 1 515 50 1 null 0 9999999
12017 5星万能碎片 true 2 4 5 false 0 100001 1 517 50 1 null 0 9999999 12017 5星万能碎片 true 2 4 5 false 0 100001 1 517 50 1 null 0 9999999
13024 许槿然 false 1 0 5 false 1 56001 0 0 0 1 10024#5 1 9999999 13024 许槿然 false 1 0 5 false 1 56001 0 0 0 1 10024#5 1 9999999

View File

@ -1,23 +1,38 @@
package com.ljsd; package com.ljsd;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.dao.UserManager;
import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.store.BuyGoodsLogic; import com.ljsd.jieling.logic.store.BuyGoodsLogic;
import com.ljsd.jieling.thrift.idl.InvalidOperException; import com.ljsd.jieling.thrift.idl.InvalidOperException;
import com.ljsd.jieling.thrift.idl.RPCRequestIFace; import com.ljsd.jieling.thrift.idl.RPCRequestIFace;
import com.ljsd.jieling.thrift.idl.Result; import com.ljsd.jieling.thrift.idl.Result;
import org.apache.thrift.TException; import org.apache.thrift.TException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class CoreService implements RPCRequestIFace.Iface { public class CoreService implements RPCRequestIFace.Iface {
private static final Logger LOGGER = LoggerFactory.getLogger(CoreService.class);
@Override @Override
public Result deliveryRecharge(int uid, int goodsId, String openId, String orderId, long orderTime, int amount) throws InvalidOperException, TException { public Result deliveryRecharge(int uid, int goodsId, String openId, String orderId, long orderTime, int amount) throws InvalidOperException, TException {
try { try {
return BuyGoodsLogic.sendGoods(uid,goodsId,openId,orderId,orderTime,amount); User user = UserManager.getUser(uid);
Result result = BuyGoodsLogic.sendGoods(uid, goodsId, openId, orderId, orderTime, amount);
KtEventUtils.onKtEvent(user, ParamEventBean.UserPayEvent,goodsId,orderId,result.getResultCode(),amount);
return result;
} catch (Exception e) { } catch (Exception e) {
User user = UserManager.getUserInMem(uid);
Result result = new Result(); Result result = new Result();
result.setResultCode(0); result.setResultCode(0);
if(user == null){
LOGGER.info("the uid={} not found",uid );
}
result.setResultMsg("server exce"); result.setResultMsg("server exce");
KtEventUtils.onKtEvent(user, ParamEventBean.UserLogin,goodsId,orderId,result.getResultCode(),amount);
return result; return result;
} }

View File

@ -89,6 +89,7 @@ public class GameApplication {
MapLogic.getInstance().init(configurableApplicationContext); MapLogic.getInstance().init(configurableApplicationContext);
SensitivewordFilter.init(); SensitivewordFilter.init();
HttpPool.init();
// 加载lua文件 // 加载lua文件
CheckFight.getInstance().init("luafight/BattleMain.lua"); CheckFight.getInstance().init("luafight/BattleMain.lua");

View File

@ -3,6 +3,7 @@ package com.ljsd.jieling.chat.logic;
import com.ljsd.GameApplication; import com.ljsd.GameApplication;
import com.ljsd.jieling.chat.messge.MessageCache; import com.ljsd.jieling.chat.messge.MessageCache;
import com.ljsd.jieling.core.GlobalsDef;
import com.ljsd.jieling.db.redis.RedisKey; import com.ljsd.jieling.db.redis.RedisKey;
import com.ljsd.jieling.db.redis.RedisUtil; import com.ljsd.jieling.db.redis.RedisUtil;
import com.ljsd.jieling.logic.OnlineUserManager; import com.ljsd.jieling.logic.OnlineUserManager;
@ -88,7 +89,7 @@ public class ChatLogic {
int uid = iSession.getUid(); int uid = iSession.getUid();
User user = UserManager.getUser(uid); User user = UserManager.getUser(uid);
FriendManager friendManager = user.getFriendManager(); FriendManager friendManager = user.getFriendManager();
boolean result = ShieldedWordUtils.checkName(message); boolean result = ShieldedWordUtils.checkName(message,false);
if (!result) { if (!result) {
MessageUtil.sendErrorResponse(iSession, 0, msgId, "包含敏感字"); MessageUtil.sendErrorResponse(iSession, 0, msgId, "包含敏感字");
return ; return ;

View File

@ -1,9 +1,12 @@
package com.ljsd.jieling.config.reportData; package com.ljsd.jieling.config.reportData;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.google.gson.Gson;
import com.ljsd.common.mogodb.util.BlockingUniqueQueue; import com.ljsd.common.mogodb.util.BlockingUniqueQueue;
import com.ljsd.jieling.ktbeans.KTSendBody;
import com.ljsd.jieling.util.http.HttpPool; import com.ljsd.jieling.util.http.HttpPool;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.concurrent.BlockingQueue; import java.util.concurrent.BlockingQueue;
import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.CopyOnWriteArrayList;
@ -11,39 +14,25 @@ import java.util.concurrent.CopyOnWriteArrayList;
public class DataMessageUtils { public class DataMessageUtils {
static final BlockingQueue<Object> logQueue = new BlockingUniqueQueue<>(); static final BlockingQueue<Object> logQueue = new BlockingUniqueQueue<>();
static List<String> dataList = new CopyOnWriteArrayList<>(); private static Gson gson = new Gson();
private static final String sendUrl = "https://gskuld.receiver.extranet.kt007.com:8081/skuld/game/common/";
//入队列 //入队列
public static void addLogQueue(Object info){ public static void addLogQueue(Object info){
logQueue.offer(info); logQueue.offer(info);
} }
//出队列
public static Object take(){ public static void manageData() {
List<Object> sendDataList = new ArrayList<>(10);
logQueue.drainTo(sendDataList,10);
if(sendDataList.isEmpty()){
try { try {
return logQueue.take(); Thread.sleep(10);
return;
} catch (InterruptedException e) { } catch (InterruptedException e) {
e.printStackTrace(); e.printStackTrace();
return null;
} }
} }
KTSendBody sendBody = new KTSendBody(gson.toJson(sendDataList));
public static void manageData(Object take) { // HttpPool.sendPost(sendUrl,gson.toJson(sendBody));
List<String> sendDataList;
if(dataList.size() >= 10){
sendDataList = dataList;
dataList = new CopyOnWriteArrayList<>();
}else{
dataList.add(JSON.toJSONString(take));
return;
}
StringBuilder info = new StringBuilder("[");
for (int i =0 ; i < sendDataList.size() ; i++){
if (i >= (sendDataList.size() -1)){
info.append(sendDataList.get(i)).append(",");
}else{
info.append(sendDataList.get(i));
}
}
info.append("]");
HttpPool.sendPost("",info.toString());
} }
} }

View File

@ -3,6 +3,9 @@ package com.ljsd.jieling.core;
public interface GlobalsDef { public interface GlobalsDef {
String DEFAULT_NAME = "无名妖灵师"; String DEFAULT_NAME = "无名妖灵师";
int addReason = 0;
int subReason = 1;
int BATTLING = -1; int BATTLING = -1;
int BREAK_TYPE =1 ; //1突破 int BREAK_TYPE =1 ; //1突破

View File

@ -1,6 +1,11 @@
package com.ljsd.jieling.handler; package com.ljsd.jieling.handler;
import com.ljsd.jieling.handler.map.MapLogic; import com.ljsd.jieling.handler.map.MapLogic;
import com.ljsd.jieling.ktbeans.KTRequestBeans.LoginParamType;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.ktbeans.*;
import com.ljsd.jieling.ktbeans.parmsBean.*;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.UserManager;
import com.ljsd.jieling.netty.cocdex.PacketNetData; import com.ljsd.jieling.netty.cocdex.PacketNetData;
@ -28,6 +33,42 @@ public class LoginRequestHandler extends BaseHandler {
byte[] message = netData.parseClientProtoNetData(); byte[] message = netData.parseClientProtoNetData();
PlayerInfoProto.LoginRequest loginRequest PlayerInfoProto.LoginRequest loginRequest
= PlayerInfoProto.LoginRequest.parseFrom(message); = PlayerInfoProto.LoginRequest.parseFrom(message);
ParamEnvironmentBean paramEnvironmentBean = new ParamEnvironmentBean();
paramEnvironmentBean.setDevice_id_s(loginRequest.getDeviceIdS());
paramEnvironmentBean.setIp_s(loginRequest.getIpS());
ParamEnvironmentSimpleBean paramEnvironmentSimpleBean = new ParamEnvironmentSimpleBean("",
"",
loginRequest.getDeviceIdS(),
loginRequest.getBrandS(),
loginRequest.getDpiS(),
loginRequest.getOperatorS(),
loginRequest.getOsVersionS(),
LoginParamType.NETWORK_WIFI.equals(loginRequest.getNetworkS())?true:false);
switch (loginRequest.getPlatformS()){
case LoginParamType.PLATFORM_ANDRIOD:
paramEnvironmentSimpleBean.setIdfa_s(loginRequest.getIdfaSOrImeiS());
break;
case LoginParamType.PLATFORM_IOS:
paramEnvironmentSimpleBean.setImei_s(loginRequest.getIdfaSOrImeiS());
break;
case LoginParamType.PLATFORM_IOS_YY:
paramEnvironmentSimpleBean.setImei_s(loginRequest.getIdfaSOrImeiS());
break;
case LoginParamType.PLATFORM_PC:
break;
default:
break;
}
// ParamDataBean paramDataBean = new ParamDataBean();
// KTEnvironmentUtil.addUserEnviromentInfo(userId,paramEnvironmentBean);
// KTEnvironmentUtil.addUserSimpleEnviromentInfo(userId,paramEnvironmentSimpleBean);
// KTDataUtil.addUserDataInfo(userId,paramDataBean);
KTEnvironmentUtil.addUserEnviromentInfo(userId,paramEnvironmentBean);
//登陆注册入内存 //登陆注册入内存
User user = UserManager.userLogin(userId); User user = UserManager.userLogin(userId);
@ -44,7 +85,7 @@ public class LoginRequestHandler extends BaseHandler {
try { try {
MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.LOGIN_RESPONSE_VALUE, loginResponse, true); MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.LOGIN_RESPONSE_VALUE, loginResponse, true);
MapLogic.getInstance().whenLogin(user); MapLogic.getInstance().whenLogin(user);
LOGGER.info("back to client!"); KtEventUtils.onKtEvent(user, ParamEventBean.UserLoginOutEvent,1);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }

View File

@ -2,28 +2,21 @@ package com.ljsd.jieling.ktbeans.BeanBuilder;
import com.ljsd.jieling.ktbeans.*; import com.ljsd.jieling.ktbeans.*;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.ktbeans.sendbeans.*;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
public class ParamBuilder { public class ParamBuilder {
public static KTParam paramBuild(int uid,int type) throws Exception { public static KTParam paramBuild(User user,int type,ParamEventBean paramEventBean){
User user = UserManager.getUser(uid); int uid = user.getId();
switch (type){ switch (type){
case ParamEventBean
.OnlineEvent:
KTAppOnline ktAppOnline = new KTAppOnline();
ktAppOnline.setParam_data(KtEventUtils.dataBuild(uid));
ktAppOnline.setParam_event(KtEventUtils.onKtEvent(user,type));
return ktAppOnline;
case ParamEventBean case ParamEventBean
.UserActivityEvent: .UserActivityEvent:
KTRoleActivity ktRoleActivity = new KTRoleActivity(); KTRoleActivity ktRoleActivity = new KTRoleActivity();
ktRoleActivity.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleActivity.setParam_data(KtEventUtils.dataBuild(uid));
ktRoleActivity.setParam_environment(KtEventUtils.enviromentBuild(uid)); ktRoleActivity.setParam_environment(KtEventUtils.enviromentBuild(uid));
ktRoleActivity.setParam_user(KtEventUtils.userBuild(uid)); ktRoleActivity.setParam_user(KtEventUtils.userBuild(user));
ktRoleActivity.setParam_role(KtEventUtils.roleBuild(uid)); ktRoleActivity.setParam_role(KtEventUtils.roleBuild(user));
ktRoleActivity.setParam_event(KtEventUtils.onKtEvent(user,type)); ktRoleActivity.setParam_event(paramEventBean);
return ktRoleActivity; return ktRoleActivity;
case ParamEventBean case ParamEventBean
@ -31,9 +24,9 @@ public class ParamBuilder {
KTRoleItem ktRoleItem = new KTRoleItem(); KTRoleItem ktRoleItem = new KTRoleItem();
ktRoleItem.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleItem.setParam_data(KtEventUtils.dataBuild(uid));
ktRoleItem.setParam_environment(KtEventUtils.enviromentBuild(uid)); ktRoleItem.setParam_environment(KtEventUtils.enviromentBuild(uid));
ktRoleItem.setParam_user(KtEventUtils.userBuild(uid)); ktRoleItem.setParam_user(KtEventUtils.userBuild(user));
ktRoleItem.setParam_role(KtEventUtils.roleBuild(uid)); ktRoleItem.setParam_role(KtEventUtils.roleBuild(user));
ktRoleItem.setParam_event(KtEventUtils.onKtEvent(user,type)); ktRoleItem.setParam_event(paramEventBean);
return ktRoleItem; return ktRoleItem;
case ParamEventBean case ParamEventBean
@ -41,9 +34,9 @@ public class ParamBuilder {
KTRoleCurrency ktRoleCurrency = new KTRoleCurrency(); KTRoleCurrency ktRoleCurrency = new KTRoleCurrency();
ktRoleCurrency.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleCurrency.setParam_data(KtEventUtils.dataBuild(uid));
ktRoleCurrency.setParam_environment(KtEventUtils.enviromentBuild(uid)); ktRoleCurrency.setParam_environment(KtEventUtils.enviromentBuild(uid));
ktRoleCurrency.setParam_user(KtEventUtils.userBuild(uid)); ktRoleCurrency.setParam_user(KtEventUtils.userBuild(user));
ktRoleCurrency.setParam_role(KtEventUtils.roleBuild(uid)); ktRoleCurrency.setParam_role(KtEventUtils.roleBuild(user));
ktRoleCurrency.setParam_event(KtEventUtils.onKtEvent(user,type)); ktRoleCurrency.setParam_event(paramEventBean);
return ktRoleCurrency; return ktRoleCurrency;
case ParamEventBean case ParamEventBean
@ -51,9 +44,9 @@ public class ParamBuilder {
KTRoleLogin ktRoleLogin = new KTRoleLogin(); KTRoleLogin ktRoleLogin = new KTRoleLogin();
ktRoleLogin.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleLogin.setParam_data(KtEventUtils.dataBuild(uid));
ktRoleLogin.setParam_environment(KtEventUtils.simpleEnviromentBuild(uid)); ktRoleLogin.setParam_environment(KtEventUtils.simpleEnviromentBuild(uid));
ktRoleLogin.setParam_user(KtEventUtils.userBuild(uid)); ktRoleLogin.setParam_user(KtEventUtils.userBuild(user));
ktRoleLogin.setParam_role(KtEventUtils.roleBuild(uid)); ktRoleLogin.setParam_role(KtEventUtils.roleBuild(user));
ktRoleLogin.setParam_event(KtEventUtils.onKtEvent(user,type)); ktRoleLogin.setParam_event(paramEventBean);
return ktRoleLogin; return ktRoleLogin;
@ -62,9 +55,9 @@ public class ParamBuilder {
KTRoleMall ktRoleMall = new KTRoleMall(); KTRoleMall ktRoleMall = new KTRoleMall();
ktRoleMall.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleMall.setParam_data(KtEventUtils.dataBuild(uid));
ktRoleMall.setParam_environment(KtEventUtils.enviromentBuild(uid)); ktRoleMall.setParam_environment(KtEventUtils.enviromentBuild(uid));
ktRoleMall.setParam_user(KtEventUtils.userBuild(uid)); ktRoleMall.setParam_user(KtEventUtils.userBuild(user));
ktRoleMall.setParam_role(KtEventUtils.roleBuild(uid)); ktRoleMall.setParam_role(KtEventUtils.roleBuild(user));
ktRoleMall.setParam_event(KtEventUtils.onKtEvent(user,type)); ktRoleMall.setParam_event(paramEventBean);
return ktRoleMall; return ktRoleMall;
case ParamEventBean case ParamEventBean
@ -72,9 +65,9 @@ public class ParamBuilder {
KTRolePay ktRolePay = new KTRolePay(); KTRolePay ktRolePay = new KTRolePay();
ktRolePay.setParam_data(KtEventUtils.dataBuild(uid)); ktRolePay.setParam_data(KtEventUtils.dataBuild(uid));
ktRolePay.setParam_environment(KtEventUtils.enviromentBuild(uid)); ktRolePay.setParam_environment(KtEventUtils.enviromentBuild(uid));
ktRolePay.setParam_user(KtEventUtils.userBuild(uid)); ktRolePay.setParam_user(KtEventUtils.userBuild(user));
ktRolePay.setParam_role(KtEventUtils.roleBuild(uid)); ktRolePay.setParam_role(KtEventUtils.roleBuild(user));
ktRolePay.setParam_event(KtEventUtils.onKtEvent(user,type)); ktRolePay.setParam_event(paramEventBean);
return ktRolePay; return ktRolePay;
case ParamEventBean case ParamEventBean
@ -82,9 +75,9 @@ public class ParamBuilder {
KTRoleRegister ktRoleRegister = new KTRoleRegister(); KTRoleRegister ktRoleRegister = new KTRoleRegister();
ktRoleRegister.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleRegister.setParam_data(KtEventUtils.dataBuild(uid));
ktRoleRegister.setParam_environment(KtEventUtils.enviromentBuild(uid)); ktRoleRegister.setParam_environment(KtEventUtils.enviromentBuild(uid));
ktRoleRegister.setParam_user(KtEventUtils.userBuild(uid)); ktRoleRegister.setParam_user(KtEventUtils.userBuild(user));
ktRoleRegister.setParam_role(KtEventUtils.roleBuild(uid)); ktRoleRegister.setParam_role(KtEventUtils.roleBuild(user));
ktRoleRegister.setParam_event(KtEventUtils.onKtEvent(user,type)); ktRoleRegister.setParam_event(paramEventBean);
return ktRoleRegister; return ktRoleRegister;
case ParamEventBean case ParamEventBean
@ -92,13 +85,19 @@ public class ParamBuilder {
KTRoleTask ktRoleTask = new KTRoleTask(); KTRoleTask ktRoleTask = new KTRoleTask();
ktRoleTask.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleTask.setParam_data(KtEventUtils.dataBuild(uid));
ktRoleTask.setParam_environment(KtEventUtils.enviromentBuild(uid)); ktRoleTask.setParam_environment(KtEventUtils.enviromentBuild(uid));
ktRoleTask.setParam_user(KtEventUtils.userBuild(uid)); ktRoleTask.setParam_user(KtEventUtils.userBuild(user));
ktRoleTask.setParam_role(KtEventUtils.roleBuild(uid)); ktRoleTask.setParam_role(KtEventUtils.roleBuild(user));
ktRoleTask.setParam_event(KtEventUtils.onKtEvent(user,type)); ktRoleTask.setParam_event(paramEventBean);
return ktRoleTask; return ktRoleTask;
case ParamEventBean case ParamEventBean
.UserLogin: .UserLogin:
return null; KtUserLogin ktUserLogin = new KtUserLogin();
ktUserLogin.setParam_data(KtEventUtils.dataBuild(uid));
ktUserLogin.setParam_environment(KtEventUtils.simpleEnviromentBuild(uid));
ktUserLogin.setParam_user(KtEventUtils.userSimpleBuild(user));
ktUserLogin.setParam_role(KtEventUtils.roleBuild(user));
ktUserLogin.setParam_event(paramEventBean);
return ktUserLogin;
default: default:
break; break;

View File

@ -19,7 +19,7 @@ public class KTEnvironmentUtil {
if(environmentInfo.containsKey(uid)){ if(environmentInfo.containsKey(uid)){
return environmentInfo.get(uid); return environmentInfo.get(uid);
} }
return null; return new ParamEnvironmentBean();
} }
public static void addUserSimpleEnviromentInfo(int uid,ParamEnvironmentSimpleBean paramEnvironmentSimpleBean){ public static void addUserSimpleEnviromentInfo(int uid,ParamEnvironmentSimpleBean paramEnvironmentSimpleBean){
@ -29,7 +29,7 @@ public class KTEnvironmentUtil {
if(environmentSimpleInfo.containsKey(uid)){ if(environmentSimpleInfo.containsKey(uid)){
return environmentSimpleInfo.get(uid); return environmentSimpleInfo.get(uid);
} }
return null; return new ParamEnvironmentSimpleBean();
} }
} }

View File

@ -0,0 +1,14 @@
package com.ljsd.jieling.ktbeans.KTRequestBeans;
public class LoginParamType {
public static final String PLATFORM_PC = "PC";
public static final String PLATFORM_ANDRIOD = "ADR";
public static final String PLATFORM_IOS = "IOS";
public static final String PLATFORM_IOS_YY = "IOS_YY";
public static final String NETWORK_WIFI="WIFI";
}

View File

@ -1,20 +1,18 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans;
import com.ljsd.jieling.ktbeans.parmsBean.ParamRoleBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamRoleBean;
import com.ljsd.jieling.logic.dao.root.User;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
public class KTRoleUtil { public class KTRoleUtil {
private static Map<Integer, ParamRoleBean> roleInfo = new HashMap<>(); public static ParamRoleBean getRoleById(User user){
ParamRoleBean paramRoleBean = new ParamRoleBean();
public static void addRoleInfo(int uid, ParamRoleBean paramUserBean){ paramRoleBean.setRole_id_s(String.valueOf(user.getId()));
roleInfo.put(uid,paramUserBean); paramRoleBean.setRole_name_s(user.getPlayerInfoManager().getNickName());
} paramRoleBean.setLevel_i(String.valueOf(user.getPlayerInfoManager().getLevel()));
public static ParamRoleBean getRoleById(int uid){ paramRoleBean.setVip_level_i(user.getPlayerInfoManager().getVipLevel());
if(roleInfo.containsKey(uid)){ return paramRoleBean;
return roleInfo.get(uid);
}
return null;
} }
} }

View File

@ -0,0 +1,24 @@
package com.ljsd.jieling.ktbeans;
import com.ljsd.jieling.config.json.KTSDKConstans;
import com.ljsd.jieling.util.MD5Util;
public class KTSendBody {
private String gid = KTSDKConstans.appid;
private int time;
private String sign;
private String jsonStrs;
public KTSendBody(){
}
public KTSendBody(String jsonStrs){
time = (int)(System.currentTimeMillis()/1000);
this.sign = MD5Util.encrypByMd5(gid + time);
this.jsonStrs = jsonStrs;
}
}

View File

@ -1,21 +1,39 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans;
import com.ljsd.jieling.globals.Global;
import com.ljsd.jieling.ktbeans.parmsBean.ParamSimpleUserBean;
import com.ljsd.jieling.ktbeans.parmsBean.ParamUserBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamUserBean;
import com.ljsd.jieling.logic.dao.Item;
import com.ljsd.jieling.logic.dao.root.User;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
public class KTUserUtil implements KTStaticUtil{ public class KTUserUtil implements KTStaticUtil{
public static ParamUserBean getUserById(User user){
private static Map<Integer, ParamUserBean> userInfo = new HashMap<>(); ParamUserBean paramUserBean = new ParamUserBean();
paramUserBean.setUser_id_s(user.getPlayerInfoManager().getOpenId());
public static void addUserInfo(int uid, ParamUserBean paramUserBean){ paramUserBean.setAccount_id_s(String.valueOf(user.getId()));
userInfo.put(uid,paramUserBean); return paramUserBean;
} }
public static ParamUserBean getUserById(int uid){
if(userInfo.containsKey(uid)){ public static ParamSimpleUserBean getSimpleUserById(User user){
return userInfo.get(uid); ParamSimpleUserBean paramSimpleUserBean = new ParamSimpleUserBean();
paramSimpleUserBean.setUser_id_s(user.getPlayerInfoManager().getOpenId());
paramSimpleUserBean.setAccount_id_s(String.valueOf(user.getId()));
Item gem = user.getItemManager().getItemMap().get(Global.GEM);
int gemNum = 0;
if(gem != null){
gemNum = gem.getItemNum();
} }
return null;
Item gold = user.getItemManager().getItemMap().get(Global.GEM);
int goldNum = 0;
if(gold != null){
goldNum = gold.getItemNum();
}
paramSimpleUserBean.setCurrency_1_d(String.valueOf(gemNum));
paramSimpleUserBean.setCurrency_1_d(String.valueOf(goldNum));
return paramSimpleUserBean;
} }
} }

View File

@ -1,19 +1,37 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans;
import com.google.gson.Gson;
import com.ljsd.jieling.config.SGlobalActivity; import com.ljsd.jieling.config.SGlobalActivity;
import com.ljsd.jieling.config.reportData.DataMessageUtils;
import com.ljsd.jieling.globals.Global;
import com.ljsd.jieling.ktbeans.BeanBuilder.ParamBuilder;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
public class KtEventUtils { public class KtEventUtils {
private static final Logger LOGGER = LoggerFactory.getLogger(KtEventUtils.class);
private static String[] itemUseType = new String[]{"source","sink"}; //固定字符source 表示收入sink 表示支出 private static String[] itemUseType = new String[]{"source","sink"}; //固定字符source 表示收入sink 表示支出
private static String[] userloginType = new String[]{"LOGIN","LOGOUT"}; //仅两种状态登录LOGIN、登出LOGOUT
private static String[] payResult = new String[]{"INVALID","VALID"}; //仅两种状态登录LOGIN、登出LOGOUT
private static Map<Integer,String> currencyMap = new HashMap<>(); private static Map<Integer,String> currencyMap = new HashMap<>();
static {
currencyMap.put(Global.GEM,"currency_1_d");
currencyMap.put(Global.GOLD,"currency_2_d");
}
public static ParamEventBean onKtEvent(User user,int eventType,Object ...parm){ private static Gson gson = new Gson();
public static void onKtEvent(User user,int eventType,Object ...parm){
ParamEventBean paramEventBean = new ParamEventBean(eventType); ParamEventBean paramEventBean = new ParamEventBean(eventType);
switch (eventType){ switch (eventType){
case ParamEventBean.UserActivityEvent: case ParamEventBean.UserActivityEvent:
@ -30,23 +48,53 @@ public class KtEventUtils {
int itemId = (int)parm[2]; int itemId = (int)parm[2];
int itemNum = (int)parm[3]; int itemNum = (int)parm[3];
paramEventBean.add(itemUseType[useType]); paramEventBean.add(itemUseType[useType]);
paramEventBean.add(String.valueOf(useReson));
paramEventBean.add(String.valueOf(itemId));
paramEventBean.add(String.valueOf(itemNum));
break; break;
case ParamEventBean.UserLoginOutEvent: case ParamEventBean.UserLoginOutEvent:
case ParamEventBean.UserLogin:
int loginType = (int)parm[0];
paramEventBean.add(userloginType[loginType]);
break; break;
case ParamEventBean.UserStoreEvent: case ParamEventBean.UserStoreEvent:
int storeId = (int)parm[0];
int buyItemId = (int)parm[1];
int goldType = (int)parm[2];
int buyTimes = (int)parm[3];
int costTotal = (int)parm[4];
paramEventBean.add(String.valueOf(storeId));
paramEventBean.add(String.valueOf(buyItemId));
paramEventBean.add(currencyMap.get(goldType));
paramEventBean.add(String.valueOf(buyTimes));
paramEventBean.add(String.valueOf(costTotal/buyTimes));
paramEventBean.add(String.valueOf(costTotal));
break; break;
case ParamEventBean.UserPayEvent: case ParamEventBean.UserPayEvent:
int goodsId = (int)parm[0];
String orderId = (String)parm[1];
String payValid = payResult[(int)parm[2]];
String amount = String.valueOf( ((int)parm[3]/10));
paramEventBean.add(String.valueOf(goodsId));
paramEventBean.add(orderId);
paramEventBean.add(payValid);
paramEventBean.add(amount);
break; break;
case ParamEventBean.UserRegister: case ParamEventBean.UserRegister:
break; break;
case ParamEventBean.UserTaskEvent: case ParamEventBean.UserTaskEvent:
break; int misionType = (int)parm[0];
case ParamEventBean.UserLogin: int misionId = (int)parm[1];
paramEventBean.add(String.valueOf(misionType));
paramEventBean.add(String.valueOf(misionId));
paramEventBean.add("COMPLETE");
break; break;
} }
return paramEventBean;
KTParam ktParam = ParamBuilder.paramBuild(user, eventType, paramEventBean);
DataMessageUtils.addLogQueue(ktParam);
LOGGER.info("ktparm -- > {}",gson.toJson(ktParam));
} }
public static ParamEnvironmentBean enviromentBuild(int uid){ public static ParamEnvironmentBean enviromentBuild(int uid){
return KTEnvironmentUtil.getUserEnviromentInfoById(uid); return KTEnvironmentUtil.getUserEnviromentInfoById(uid);
@ -57,11 +105,15 @@ public class KtEventUtils {
public static ParamDataBean dataBuild(int uid){ public static ParamDataBean dataBuild(int uid){
return KTDataUtil.getUserDataInfoById(uid); return KTDataUtil.getUserDataInfoById(uid);
} }
public static ParamUserBean userBuild(int uid){ public static ParamUserBean userBuild(User user){
return KTUserUtil.getUserById(uid); return KTUserUtil.getUserById(user);
} }
public static ParamRoleBean roleBuild(int uid){
return KTRoleUtil.getRoleById(uid); public static ParamSimpleUserBean userSimpleBuild(User user){
return KTUserUtil.getSimpleUserById(user);
}
public static ParamRoleBean roleBuild(User user){
return KTRoleUtil.getRoleById(user);
} }

View File

@ -74,4 +74,16 @@ public class ParamEnvironmentSimpleBean extends ParamEnvironmentBean{
public void setWifi_b(boolean wifi_b) { public void setWifi_b(boolean wifi_b) {
this.wifi_b = wifi_b; this.wifi_b = wifi_b;
} }
public ParamEnvironmentSimpleBean(String idfa_s, String imei_s, String app_device_id_s, String brand_s, String dpi_s, String operator_s, String os_version_s, boolean wifi_b) {
this.idfa_s = idfa_s;
this.imei_s = imei_s;
this.app_device_id_s = app_device_id_s;
this.brand_s = brand_s;
this.dpi_s = dpi_s;
this.operator_s = operator_s;
this.os_version_s = os_version_s;
this.wifi_b = wifi_b;
}
public ParamEnvironmentSimpleBean(){}
} }

View File

@ -19,7 +19,6 @@ public class ParamRoleBean {
private String role_id_s; private String role_id_s;
private String role_name_s; private String role_name_s;
private String role_class_s;
private String level_i; private String level_i;
private int vip_level_i; private int vip_level_i;
@ -39,14 +38,6 @@ public class ParamRoleBean {
this.role_name_s = role_name_s; this.role_name_s = role_name_s;
} }
public String getRole_class_s() {
return role_class_s;
}
public void setRole_class_s(String role_class_s) {
this.role_class_s = role_class_s;
}
public String getLevel_i() { public String getLevel_i() {
return level_i; return level_i;
} }

View File

@ -0,0 +1,23 @@
package com.ljsd.jieling.ktbeans.parmsBean;
public class ParamSimpleUserBean extends ParamUserBean{
private String currency_1_d;
private String currency_2_d;
public String getCurrency_1_d() {
return currency_1_d;
}
public void setCurrency_1_d(String currency_1_d) {
this.currency_1_d = currency_1_d;
}
public String getCurrency_2_d() {
return currency_2_d;
}
public void setCurrency_2_d(String currency_2_d) {
this.currency_2_d = currency_2_d;
}
}

View File

@ -1,9 +1,10 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.ParamDataBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamDataBean;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
public class KTAppOnline extends KTParam{ public class KTAppOnline extends KTParam {
private ParamDataBean param_data; private ParamDataBean param_data;
private ParamEventBean param_event; private ParamEventBean param_event;

View File

@ -1,6 +1,7 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KTRoleActivity extends KTParam { public class KTRoleActivity extends KTParam {

View File

@ -1,9 +1,10 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KTRoleCurrency extends KTParam{ public class KTRoleCurrency extends KTParam {
private ParamDataBean param_data; private ParamDataBean param_data;
private ParamEnvironmentBean param_environment; private ParamEnvironmentBean param_environment;
private ParamUserBean param_user; private ParamUserBean param_user;

View File

@ -1,9 +1,10 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KTRoleItem extends KTParam{ public class KTRoleItem extends KTParam {
private ParamDataBean param_data; private ParamDataBean param_data;
private ParamEnvironmentBean param_environment; private ParamEnvironmentBean param_environment;
private ParamUserBean param_user; private ParamUserBean param_user;

View File

@ -1,9 +1,10 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KTRoleLogin extends KTParam{ public class KTRoleLogin extends KTParam {
private ParamDataBean param_data; private ParamDataBean param_data;
private ParamEnvironmentBean param_environment; private ParamEnvironmentBean param_environment;

View File

@ -1,9 +1,10 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KTRoleMall extends KTParam{ public class KTRoleMall extends KTParam {
/** /**
* param_data : {"app_id_s":"game_skuld_01","app_version_name_s":"1.0.0.5","app_version_code_s":"10000","category_s":"event_role","platform_s":"ADR","region_s":"4","server_s":"44","channel_s":"4","data_unix":1511767867} * param_data : {"app_id_s":"game_skuld_01","app_version_name_s":"1.0.0.5","app_version_code_s":"10000","category_s":"event_role","platform_s":"ADR","region_s":"4","server_s":"44","channel_s":"4","data_unix":1511767867}

View File

@ -1,8 +1,9 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KTRolePay extends KTParam{ public class KTRolePay extends KTParam {
/** /**
* param_data : {"app_id_s":"game_skuld_01","app_version_name_s":"1.0.0.5","app_version_code_s":"10000","category_s":"event_role","platform_s":"ADR","region_s":"4","server_s":"44","channel_s":"4","data_unix":1511767867} * param_data : {"app_id_s":"game_skuld_01","app_version_name_s":"1.0.0.5","app_version_code_s":"10000","category_s":"event_role","platform_s":"ADR","region_s":"4","server_s":"44","channel_s":"4","data_unix":1511767867}

View File

@ -1,8 +1,9 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KTRoleRegister extends KTParam{ public class KTRoleRegister extends KTParam {
/** /**

View File

@ -1,8 +1,9 @@
package com.ljsd.jieling.ktbeans; package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*; import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KTRoleTask extends KTParam{ public class KTRoleTask extends KTParam {
private ParamDataBean param_data; private ParamDataBean param_data;
private ParamEnvironmentBean param_environment; private ParamEnvironmentBean param_environment;

View File

@ -0,0 +1,53 @@
package com.ljsd.jieling.ktbeans.sendbeans;
import com.ljsd.jieling.ktbeans.KTParam;
import com.ljsd.jieling.ktbeans.parmsBean.*;
public class KtUserLogin extends KTParam {
private ParamDataBean param_data;
private ParamEnvironmentBean param_environment;
private ParamUserBean param_user;
private ParamRoleBean param_role;
private ParamEventBean param_event;
public ParamDataBean getParam_data() {
return param_data;
}
public ParamEnvironmentBean getParam_environment() {
return param_environment;
}
public ParamUserBean getParam_user() {
return param_user;
}
public ParamRoleBean getParam_role() {
return param_role;
}
public ParamEventBean getParam_event() {
return param_event;
}
public void setParam_data(ParamDataBean param_data) {
this.param_data = param_data;
}
public void setParam_environment(ParamEnvironmentBean param_environment) {
this.param_environment = param_environment;
}
public void setParam_user(ParamUserBean param_user) {
this.param_user = param_user;
}
public void setParam_role(ParamRoleBean param_role) {
this.param_role = param_role;
}
public void setParam_event(ParamEventBean param_event) {
this.param_event = param_event;
}
}

View File

@ -140,6 +140,7 @@ public class GlobalDataManaager {
} }
closeAction(closeList); closeAction(closeList);
updateGetFunctionOfTimeResponse(); updateGetFunctionOfTimeResponse();
} }
public void openAction(List<Integer> ids){ public void openAction(List<Integer> ids){

View File

@ -5,6 +5,8 @@ import com.ljsd.jieling.config.SGameSetting;
import com.ljsd.jieling.config.SPlayerLevelConfig; import com.ljsd.jieling.config.SPlayerLevelConfig;
import com.ljsd.jieling.db.mongo.MongoUtil; import com.ljsd.jieling.db.mongo.MongoUtil;
import com.ljsd.jieling.globals.BIReason; import com.ljsd.jieling.globals.BIReason;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.activity.ActivityLogic; import com.ljsd.jieling.logic.activity.ActivityLogic;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.hero.HeroLogic; import com.ljsd.jieling.logic.hero.HeroLogic;
@ -98,6 +100,7 @@ public class UserManager {
PlayerLogic.getInstance().vipflushEveryDay(user,null); PlayerLogic.getInstance().vipflushEveryDay(user,null);
ActivityLogic.getInstance().newPlayerOpenActivityMission(user); ActivityLogic.getInstance().newPlayerOpenActivityMission(user);
user.getUserMissionManager().onGameEvent(user, GameEvent.USER_LEVELUP,0,1); user.getUserMissionManager().onGameEvent(user, GameEvent.USER_LEVELUP,0,1);
KtEventUtils.onKtEvent(user, ParamEventBean.UserRegister);
} }

View File

@ -216,7 +216,7 @@ public class CombatLogic {
if(randomTimes>0){ if(randomTimes>0){
int bossGroupId = randomInvasionBoss(uid, adventureStateInfo.getPosition(),randomTimes,false); int bossGroupId = randomInvasionBoss(uid, adventureStateInfo.getPosition(),randomTimes,false);
if(bossGroupId>0){ if(bossGroupId>0){
remainTime =sAdventureConfig.getInvasionBossHolding(); remainTime =sAdventureConfig.getInvasionBossHolding()-(now-adventureStateInfo.getFindBossTime());
nextFlushTime+=remainTime+nextFlushTime; nextFlushTime+=remainTime+nextFlushTime;
need=true; need=true;
} }
@ -555,12 +555,11 @@ public class CombatLogic {
bossGroupID = item[0]; bossGroupID = item[0];
break; break;
} }
totalWeight+=item[1];
} }
} }
int findBossTime = adventureStateInfo.getFindBossTime(); int findBossTime = adventureStateInfo.getFindBossTime();
int now = (int)(System.currentTimeMillis()/1000); int now = (int)(System.currentTimeMillis()/1000);
if(isGm || findBossTime == 0){ if(isGm || bossGroupID == 0 || findBossTime == 0){
}else{ }else{
int nextFindTime = findBossTime + sAdventureConfig.getInvasionBossRefresh() * (randomTimes - reallyRandomTimes); int nextFindTime = findBossTime + sAdventureConfig.getInvasionBossRefresh() * (randomTimes - reallyRandomTimes);

View File

@ -454,7 +454,7 @@ public class FriendLogic {
PlayerManager playerInfoManager = user.getPlayerInfoManager(); PlayerManager playerInfoManager = user.getPlayerInfoManager();
FriendManager friendManager = user.getFriendManager(); FriendManager friendManager = user.getFriendManager();
List<Integer> friends = friendManager.getFriends(); List<Integer> friends = friendManager.getFriends();
boolean result = ShieldedWordUtils.checkName( name); boolean result = ShieldedWordUtils.checkName( name,true);
if (!result) { if (!result) {
MessageUtil.sendErrorResponse(iSession, 0, msgId, "名字不合法"); MessageUtil.sendErrorResponse(iSession, 0, msgId, "名字不合法");
return; return;

View File

@ -8,6 +8,8 @@ import com.ljsd.jieling.core.GlobalsDef;
import com.ljsd.jieling.core.VipPrivilegeType; import com.ljsd.jieling.core.VipPrivilegeType;
import com.ljsd.jieling.globals.BIReason; import com.ljsd.jieling.globals.BIReason;
import com.ljsd.jieling.globals.Global; import com.ljsd.jieling.globals.Global;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.dao.*; import com.ljsd.jieling.logic.dao.*;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.UserManager;

View File

@ -225,6 +225,7 @@ public class ItemLogic {
Map<Integer,Integer> baseRandomMap = new HashMap<>(); Map<Integer,Integer> baseRandomMap = new HashMap<>();
for (String heroId : heroIdsList) { for (String heroId : heroIdsList) {
Hero hero = heroManager.getHeroMap().get(heroId); Hero hero = heroManager.getHeroMap().get(heroId);
heroManager.removeHero(heroId);
int[][] sumConsume = SHeroLevlConfig.getsHeroLevlConfigMap().get(hero.getLevel()).getSumConsume(); int[][] sumConsume = SHeroLevlConfig.getsHeroLevlConfigMap().get(hero.getLevel()).getSumConsume();
ItemUtil.combineReward(sumConsume,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap); ItemUtil.combineReward(sumConsume,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
int breakId = hero.getBreakId(); int breakId = hero.getBreakId();
@ -242,7 +243,7 @@ public class ItemLogic {
continue; continue;
} }
SItem sItem = SItem.getsItemMap().get(hero.getTemplateId()); SItem sItem = SItem.getsItemMap().get(hero.getTemplateId());
heroManager.removeHero(heroId);
if (reward.length() == 0) { if (reward.length() == 0) {
reward = new StringBuilder(sItem.getResolveReward()); reward = new StringBuilder(sItem.getResolveReward());
} else { } else {

View File

@ -7,6 +7,8 @@ import com.ljsd.jieling.globals.BIReason;
import com.ljsd.jieling.handler.map.CrossInfo; import com.ljsd.jieling.handler.map.CrossInfo;
import com.ljsd.jieling.handler.map.MapLogic; import com.ljsd.jieling.handler.map.MapLogic;
import com.ljsd.jieling.handler.map.MapMission; import com.ljsd.jieling.handler.map.MapMission;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.dao.*; import com.ljsd.jieling.logic.dao.*;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.hero.HeroLogic; import com.ljsd.jieling.logic.hero.HeroLogic;
@ -145,9 +147,8 @@ public class MissionLoigc {
List<MissionStateChangeInfo> missionStateChangeInfos = null; List<MissionStateChangeInfo> missionStateChangeInfos = null;
if(type == GameMisionType.VIPMISSION.getType()){ //vip 任务 if(type == GameMisionType.VIPMISSION.getType()){ //vip 任务
Map<GameMisionType, List<MissionStateChangeInfo>> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.VIP_MISSION_REWARD, missionId);missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.VIPMISSION); Map<GameMisionType, List<MissionStateChangeInfo>> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.VIP_MISSION_REWARD, missionId);missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.VIPMISSION);
} }
if(type == GameMisionType.DAILYMISSION.getType()){ //vip 任务 if(type == GameMisionType.DAILYMISSION.getType()){ //日常 任务
Map<GameMisionType, List<MissionStateChangeInfo>> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.DAILY_MISSION_REWARD, missionId); Map<GameMisionType, List<MissionStateChangeInfo>> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.DAILY_MISSION_REWARD, missionId);
missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.DAILYMISSION); missionStateChangeInfos = gameMisionTypeListMap.get(GameMisionType.DAILYMISSION);
} }
@ -170,6 +171,7 @@ public class MissionLoigc {
CommonProto.Drop.Builder drop = ItemUtil.drop(user, SAccomplishmentConfig.getsAccomplishmentConfigByIdMap(missionId).getReward(), 1,0,BIReason.TAKE_COPY_REWARD); CommonProto.Drop.Builder drop = ItemUtil.drop(user, SAccomplishmentConfig.getsAccomplishmentConfigByIdMap(missionId).getReward(), 1,0,BIReason.TAKE_COPY_REWARD);
PlayerInfoProto.TakeMissionRewardResponse build = PlayerInfoProto.TakeMissionRewardResponse.newBuilder().setDrop(drop).build(); PlayerInfoProto.TakeMissionRewardResponse build = PlayerInfoProto.TakeMissionRewardResponse.newBuilder().setDrop(drop).build();
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,build,true); MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,build,true);
KtEventUtils.onKtEvent(user, ParamEventBean.UserTaskEvent,type,missionId);
return; return;
} }
@ -177,6 +179,7 @@ public class MissionLoigc {
CommonProto.Drop.Builder drop = ItemUtil.drop(user, missionStateChangeInfos.get(0).getRewwardGroups(), BIReason.TAKE_MISSION_REWARD); CommonProto.Drop.Builder drop = ItemUtil.drop(user, missionStateChangeInfos.get(0).getRewwardGroups(), BIReason.TAKE_MISSION_REWARD);
PlayerInfoProto.TakeMissionRewardResponse build = PlayerInfoProto.TakeMissionRewardResponse.newBuilder().setDrop(drop).build(); PlayerInfoProto.TakeMissionRewardResponse build = PlayerInfoProto.TakeMissionRewardResponse.newBuilder().setDrop(drop).build();
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,build,true); MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,build,true);
KtEventUtils.onKtEvent(user, ParamEventBean.UserTaskEvent,type,missionId);
}else{ }else{
MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,"mission can not get reward"); MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,"mission can not get reward");
} }

View File

@ -108,7 +108,7 @@ public class PlayerLogic {
MessageUtil.sendErrorResponse(iSession, 0, msgId, ""); MessageUtil.sendErrorResponse(iSession, 0, msgId, "");
return true; return true;
} }
boolean result = ShieldedWordUtils.checkName( name); boolean result = ShieldedWordUtils.checkName( name,true);
if (!result) { if (!result) {
MessageUtil.sendErrorResponse(iSession, 0, msgId, ""); MessageUtil.sendErrorResponse(iSession, 0, msgId, "");
return true; return true;

View File

@ -5,6 +5,8 @@ import com.ljsd.jieling.config.SErrorCodeEerverConfig;
import com.ljsd.jieling.config.SRechargeCommodityConfig; import com.ljsd.jieling.config.SRechargeCommodityConfig;
import com.ljsd.jieling.globals.BIReason; import com.ljsd.jieling.globals.BIReason;
import com.ljsd.jieling.globals.Global; import com.ljsd.jieling.globals.Global;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.OnlineUserManager; import com.ljsd.jieling.logic.OnlineUserManager;
import com.ljsd.jieling.logic.activity.ActivityLogic; import com.ljsd.jieling.logic.activity.ActivityLogic;
import com.ljsd.jieling.logic.activity.ActivityType; import com.ljsd.jieling.logic.activity.ActivityType;
@ -47,7 +49,7 @@ public class BuyGoodsLogic {
public static Result sendGoods(int uid, int goodsId, String openId, String orderId, long orderTime, int amount) throws Exception { public static Result sendGoods(int uid, int goodsId, String openId, String orderId, long orderTime, int amount) throws Exception {
Result resultRes = new Result(); Result resultRes = new Result();
LOGGER.info("send to uid={},the goods={},openID={},orderId={},orderTime,amount={}",uid,goodsId,openId,orderId,orderTime,amount); LOGGER.info("send to uid={},the goods={},openID={},orderId={},orderTime={},amount={}",uid,goodsId,openId,orderId,orderTime,amount);
User user = UserManager.getUser(uid); User user = UserManager.getUser(uid);
SRechargeCommodityConfig sRechargeCommodityConfig = SRechargeCommodityConfig.rechargeCommodityConfigMap.get(goodsId); SRechargeCommodityConfig sRechargeCommodityConfig = SRechargeCommodityConfig.rechargeCommodityConfigMap.get(goodsId);
RechargeInfo rechargeInfo = user.getPlayerInfoManager().getRechargeInfo(); RechargeInfo rechargeInfo = user.getPlayerInfoManager().getRechargeInfo();
@ -56,6 +58,17 @@ public class BuyGoodsLogic {
if(buyCount ==null){ if(buyCount ==null){
buyCount = 0; buyCount = 0;
} }
int isDiscount = sRechargeCommodityConfig.getIsDiscount();
int price =sRechargeCommodityConfig.getPrice();
if(isDiscount!=0){
price=(int)(sRechargeCommodityConfig.getPrice() * (10 + isDiscount)/10f);
}
if(!openId.equals("gm-test")&&price*10!=amount){
resultRes.setResultCode(0);
resultRes.setResultMsg("amount is wrong");
LOGGER.info("the uid={},shuld pay={},amount={}",uid,price,amount);
return resultRes;
}
buyCount=buyCount+1; buyCount=buyCount+1;
int limit = sRechargeCommodityConfig.getLimit(); int limit = sRechargeCommodityConfig.getLimit();
int type = sRechargeCommodityConfig.getType(); int type = sRechargeCommodityConfig.getType();
@ -125,11 +138,7 @@ public class BuyGoodsLogic {
} }
int saveAmt = rechargeInfo.getSaveAmt(); int saveAmt = rechargeInfo.getSaveAmt();
int isDiscount = sRechargeCommodityConfig.getIsDiscount();
int price =sRechargeCommodityConfig.getPrice();
if(isDiscount!=0){
price=(int)(sRechargeCommodityConfig.getPrice() * (10 + isDiscount)/10f);
}
rechargeInfo.setSaveAmt(price+saveAmt); rechargeInfo.setSaveAmt(price+saveAmt);
ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.RechargeTotal,rechargeInfo.getSaveAmt(),null); ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.RechargeTotal,rechargeInfo.getSaveAmt(),null);
buyGoodsTimes.put(goodsId,buyCount); buyGoodsTimes.put(goodsId,buyCount);

View File

@ -3,6 +3,8 @@ package com.ljsd.jieling.logic.store;
import com.ljsd.jieling.config.SStoreConfig; import com.ljsd.jieling.config.SStoreConfig;
import com.ljsd.jieling.config.SStoreTypeConfig; import com.ljsd.jieling.config.SStoreTypeConfig;
import com.ljsd.jieling.globals.BIReason; import com.ljsd.jieling.globals.BIReason;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.dao.PlayerManager; import com.ljsd.jieling.logic.dao.PlayerManager;
import com.ljsd.jieling.logic.dao.StoreInfo; import com.ljsd.jieling.logic.dao.StoreInfo;
import com.ljsd.jieling.logic.dao.StoreManager; import com.ljsd.jieling.logic.dao.StoreManager;
@ -259,6 +261,7 @@ public class StoreLogic {
} }
itemNumMap.put(itemId,buyTimes +itemNum); itemNumMap.put(itemId,buyTimes +itemNum);
storeInfo.setItemNumMap(itemNumMap); storeInfo.setItemNumMap(itemNumMap);
KtEventUtils.onKtEvent(user, ParamEventBean.UserStoreEvent,storeId,itemId,cost[0][0],itemNum,cost[0][1]);
return ""; return "";
} }

View File

@ -14,6 +14,8 @@ import com.ljsd.jieling.db.redis.RedisUtil;
import com.ljsd.jieling.exception.ErrorCode; import com.ljsd.jieling.exception.ErrorCode;
import com.ljsd.jieling.globals.Global; import com.ljsd.jieling.globals.Global;
import com.ljsd.jieling.handler.BaseHandler; import com.ljsd.jieling.handler.BaseHandler;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.OnlineUserManager; import com.ljsd.jieling.logic.OnlineUserManager;
import com.ljsd.jieling.logic.activity.ActivityLogic; import com.ljsd.jieling.logic.activity.ActivityLogic;
import com.ljsd.jieling.logic.activity.ActivityType; import com.ljsd.jieling.logic.activity.ActivityType;
@ -308,7 +310,12 @@ public class ProtocolsManager implements ProtocolsAbstract {
// } catch (FileNotFoundException e) { // } catch (FileNotFoundException e) {
// e.printStackTrace(); // e.printStackTrace();
// } // }
User user = UserManager.getUserInMem(session.getUid()); User user = UserManager.getUserInMem(session.getUid());
if(user == null){
return;
}
KtEventUtils.onKtEvent(user, ParamEventBean.UserLoginOutEvent,1);
int roomId = user.getRoomInfo().getRoomId(); int roomId = user.getRoomInfo().getRoomId();
if(roomId!=-1){ if(roomId!=-1){
Room room = RoomManager.getRoomById(roomId); Room room = RoomManager.getRoomById(roomId);

View File

@ -37,7 +37,8 @@ public class ThreadManager {
public void init(ConfigurableApplicationContext configurableApplicationContext) { public void init(ConfigurableApplicationContext configurableApplicationContext) {
platConfigureTask = configurableApplicationContext.getBean(PlatConfigureTask.class); platConfigureTask = configurableApplicationContext.getBean(PlatConfigureTask.class);
dataReportTask = configurableApplicationContext.getBean(DataReportTask.class); DataReportTask dataReportTask = new DataReportTask();
dataReportTask.start();
go(); go();
} }
@ -83,9 +84,6 @@ public class ThreadManager {
int delayForMinute = 60 - (now%60); int delayForMinute = 60 - (now%60);
LOGGER.info("delayForMinute---->>>>{}" ,delayForMinute); LOGGER.info("delayForMinute---->>>>{}" ,delayForMinute);
scheduledExecutor.scheduleAtFixedRate(platConfigureTask, 10, SLEEP_INTEVAL_TIME, TimeUnit.SECONDS); scheduledExecutor.scheduleAtFixedRate(platConfigureTask, 10, SLEEP_INTEVAL_TIME, TimeUnit.SECONDS);
scheduledExecutor.scheduleAtFixedRate(dataReportTask, 10, SLEEP_INTEVAL_TIME, TimeUnit.SECONDS);
scheduledExecutor.scheduleAtFixedRate(new MinuteTask(), delayForMinute, 60, TimeUnit.SECONDS); scheduledExecutor.scheduleAtFixedRate(new MinuteTask(), delayForMinute, 60, TimeUnit.SECONDS);
scheduledExecutor.scheduleAtFixedRate(new Thread(){ scheduledExecutor.scheduleAtFixedRate(new Thread(){
public void run () { public void run () {

View File

@ -5,13 +5,15 @@ import org.springframework.stereotype.Component;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
@Component public class DataReportTask extends Thread {
public class DataReportTask implements Runnable {
public DataReportTask(){
setName("DataReportTaskThread");
}
@Override @Override
public void run() { public void run() {
while (true) { while (true) {
Object take = DataMessageUtils.take(); DataMessageUtils.manageData();
DataMessageUtils.manageData(take);
} }
} }
// public static void startTlogThread(){ // public static void startTlogThread(){

View File

@ -5,7 +5,7 @@ import com.ljsd.jieling.core.GlobalsDef;
import com.ljsd.jieling.handler.map.MapLogic; import com.ljsd.jieling.handler.map.MapLogic;
import com.ljsd.jieling.hotfix.HotfixUtil; import com.ljsd.jieling.hotfix.HotfixUtil;
import com.ljsd.jieling.ktbeans.BeanBuilder.KtBeanBuilderUtils; import com.ljsd.jieling.ktbeans.BeanBuilder.KtBeanBuilderUtils;
import com.ljsd.jieling.ktbeans.KTAppOnline; import com.ljsd.jieling.ktbeans.sendbeans.KTAppOnline;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.GlobalDataManaager; import com.ljsd.jieling.logic.GlobalDataManaager;
import com.ljsd.jieling.logic.OnlineUserManager; import com.ljsd.jieling.logic.OnlineUserManager;
@ -13,12 +13,10 @@ import com.ljsd.jieling.logic.STableManager;
import com.ljsd.jieling.logic.activity.ActivityLogic; import com.ljsd.jieling.logic.activity.ActivityLogic;
import com.ljsd.jieling.logic.arena.ArenaLogic; import com.ljsd.jieling.logic.arena.ArenaLogic;
import com.ljsd.jieling.logic.fight.CombatLogic; import com.ljsd.jieling.logic.fight.CombatLogic;
import com.ljsd.jieling.network.session.ISession;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import java.util.Calendar; import java.util.Calendar;
import java.util.Map;
public class MinuteTask extends Thread { public class MinuteTask extends Thread {
private static final Logger LOGGER = LoggerFactory.getLogger(MinuteTask.class); private static final Logger LOGGER = LoggerFactory.getLogger(MinuteTask.class);

View File

@ -9,6 +9,8 @@ import com.ljsd.jieling.globals.Global;
import com.ljsd.jieling.globals.GlobalItemType; import com.ljsd.jieling.globals.GlobalItemType;
import com.ljsd.jieling.handler.map.MapManager; import com.ljsd.jieling.handler.map.MapManager;
import com.ljsd.jieling.handler.map.TemporaryItems; import com.ljsd.jieling.handler.map.TemporaryItems;
import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
import com.ljsd.jieling.logic.dao.*; import com.ljsd.jieling.logic.dao.*;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.hero.HeroLogic; import com.ljsd.jieling.logic.hero.HeroLogic;
@ -27,6 +29,7 @@ public class ItemUtil {
public static Map<Integer,String> equipQulityNameMap = new HashMap<>(2); public static Map<Integer,String> equipQulityNameMap = new HashMap<>(2);
private static final Logger LOGGER = LoggerFactory.getLogger(ItemUtil.class); private static final Logger LOGGER = LoggerFactory.getLogger(ItemUtil.class);
private static Set<Integer> notDelete = new HashSet<>(); private static Set<Integer> notDelete = new HashSet<>();
private static Set<Integer> currencyMap = new HashSet<>(2);
static { static {
notDelete.add(Global.STAMINA); notDelete.add(Global.STAMINA);
@ -34,6 +37,8 @@ public class ItemUtil {
notDelete.add(Global.GENERALSTORY_TICKET); notDelete.add(Global.GENERALSTORY_TICKET);
equipQulityNameMap.put(5,"传说"); equipQulityNameMap.put(5,"传说");
equipQulityNameMap.put(6,"史诗"); equipQulityNameMap.put(6,"史诗");
currencyMap.add(Global.GEM);
currencyMap.add(Global.GOLD);
} }
//指定道具掉落(如:邮件,初始化物品) //指定道具掉落(如:邮件,初始化物品)
@ -427,6 +432,11 @@ public class ItemUtil {
if(itemNum>=0){ if(itemNum>=0){
itemProtoList.add(CBean2Proto.getItem(item,itemNum)); itemProtoList.add(CBean2Proto.getItem(item,itemNum));
} }
int eventType = ParamEventBean.UserItemEvent;
if(currencyMap.contains(entry.getKey())){
eventType = ParamEventBean.UserCurrencyEvent;
}
KtEventUtils.onKtEvent(user, eventType,reason,GlobalsDef.addReason,entry.getKey(),itemNum);
if(sItem.getItemType() == GlobalItemType.POKENMON_COMONPENT){ if(sItem.getItemType() == GlobalItemType.POKENMON_COMONPENT){
String nickName = user.getPlayerInfoManager().getNickName(); String nickName = user.getPlayerInfoManager().getNickName();
String message = SErrorCodeEerverConfig.getI18NMessage("lamp_lottery_differ_content", new Object[]{nickName,sItem.getName()}); String message = SErrorCodeEerverConfig.getI18NMessage("lamp_lottery_differ_content", new Object[]{nickName,sItem.getName()});
@ -590,6 +600,11 @@ public class ItemUtil {
if (null == myItem) { if (null == myItem) {
continue; continue;
} }
int eventType = ParamEventBean.UserItemEvent;
if(currencyMap.contains(myItem.getItemId())){
eventType = ParamEventBean.UserCurrencyEvent;
}
KtEventUtils.onKtEvent(user, eventType,reason,GlobalsDef.subReason,myItem.getItemId(),needCount);
if (myItem.getItemNum() <= needCount && !notDelete.contains(userItem.getKey())) { if (myItem.getItemNum() <= needCount && !notDelete.contains(userItem.getKey())) {
itemManager.removeItem(userItem.getKey()); itemManager.removeItem(userItem.getKey());
} else { } else {
@ -659,8 +674,10 @@ public class ItemUtil {
continue; continue;
} }
addEquip(user, entry.getKey(), equipList); addEquip(user, entry.getKey(), equipList);
KtEventUtils.onKtEvent(user, ParamEventBean.UserItemEvent,reason,GlobalsDef.addReason,entry.getKey(),1);
} }
} }
if (reward.length() > 0) { if (reward.length() > 0) {
int nowTime = (int) (TimeUtils.now() / 1000); int nowTime = (int) (TimeUtils.now() / 1000);
MailLogic.getInstance().sendMail(user.getId(), title, content, reward.toString(), nowTime, Global.MAIL_EFFECTIVE_TIME); MailLogic.getInstance().sendMail(user.getId(), title, content, reward.toString(), nowTime, Global.MAIL_EFFECTIVE_TIME);
@ -760,6 +777,7 @@ public class ItemUtil {
} }
} }
user.getUserMissionManager().onGameEvent(user,GameEvent.GET_HERO,heroStar[0],heroStar[1]); user.getUserMissionManager().onGameEvent(user,GameEvent.GET_HERO,heroStar[0],heroStar[1]);
KtEventUtils.onKtEvent(user, ParamEventBean.UserItemEvent,reason,GlobalsDef.addReason,cardId,1);
} }
/** /**

View File

@ -0,0 +1,33 @@
package com.ljsd.jieling.util;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Util {
public static String encrypByMd5(String context) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(context.getBytes());//update处理
byte [] encryContext = md.digest();//调用该方法完成计算
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < encryContext.length; offset++) {//做相应的转化(十六进制)
i = encryContext[offset];
if (i < 0) i += 256;
if (i < 16) buf.append("0");
buf.append(Integer.toHexString(i));
}
System.out.println("32result: " + buf.toString());// 32位的加密
System.out.println("16result: " + buf.toString().substring(8, 24));// 16位的加密
return buf.toString().toLowerCase();
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "";
}
}

View File

@ -5,11 +5,15 @@ import java.util.regex.Pattern;
public class ShieldedWordUtils { public class ShieldedWordUtils {
public static boolean checkName(String name){ public static boolean checkName(String name,boolean validateSpecStr){
boolean result = validateUserName(name); boolean result = true;
if(validateSpecStr){
result = validateUserName(name);
if(!result){ if(!result){
return false; return false;
} }
}
result = isContaintSensitiveWord(name); result = isContaintSensitiveWord(name);
if(result){ if(result){
return false; return false;

View File

@ -132,12 +132,6 @@ public class TimeUtils {
public static final String Stand_CeHua_Data_format = "yyyyMMdd HHmmss"; public static final String Stand_CeHua_Data_format = "yyyyMMdd HHmmss";
public static void main(String[] args) throws InterruptedException {
long time = TimeUtils.now();
Thread.sleep(5000);
System.out.println((int)(TimeUtils.now()-time)/1000);
}
/** /**
* (HH:mm:ss) * (HH:mm:ss)
* *

View File

@ -21,6 +21,7 @@ public class HttpPool {
private static int maxSendTimes = 2; private static int maxSendTimes = 2;
private static int sendIntervalTime = 1000; private static int sendIntervalTime = 1000;
private static String charset = "UTF-8"; private static String charset = "UTF-8";
public static void init(){ public static void init(){
poolConnection.setMaxTotal(100); poolConnection.setMaxTotal(100);
poolConnection.setDefaultMaxPerRoute(100); poolConnection.setDefaultMaxPerRoute(100);
@ -33,6 +34,7 @@ public class HttpPool {
} }
public static void sendPost(String url, String info) { public static void sendPost(String url, String info) {
LOGGER.info("the data={}",info);
HttpPost httpPost = new HttpPost(url); HttpPost httpPost = new HttpPost(url);
HttpResponse httpResponse; HttpResponse httpResponse;
int sendTimes = 0; int sendTimes = 0;
@ -41,8 +43,8 @@ public class HttpPool {
StringEntity stringEntity = new StringEntity(info, charset); StringEntity stringEntity = new StringEntity(info, charset);
httpPost.setEntity(stringEntity); httpPost.setEntity(stringEntity);
httpPost.setConfig(getRequestConfig()); httpPost.setConfig(getRequestConfig());
httpPost.setHeader("Content-Type","application/json;charset=utf-8");
httpResponse = httpclient.execute(httpPost); httpResponse = httpclient.execute(httpPost);
// retStr = EntityUtils.toString(responseEntity, charset);
HttpEntity responseEntity = httpResponse.getEntity(); HttpEntity responseEntity = httpResponse.getEntity();
EntityUtils.consume(responseEntity); EntityUtils.consume(responseEntity);
int statusCode = httpResponse.getStatusLine().getStatusCode(); int statusCode = httpResponse.getStatusLine().getStatusCode();
@ -71,7 +73,8 @@ public class HttpPool {
} }
public static void main (String [] args){ public static void main (String [] args){
String send ="{\"gid\":\"129213\",\"time\":1562306610,\"sign\":\"10a518836c856344a00a97f0299b7cb0\",\"jsonStrs\":\"[{\\\"param_environment\\\":{},\\\"param_user\\\":{\\\"account_id_s\\\":\\\"10004165\\\"},\\\"param_role\\\":{\\\"role_id_s\\\":\\\"10004165\\\",\\\"role_name_s\\\":\\\"10004165\\\",\\\"level_i\\\":\\\"1\\\",\\\"vip_level_i\\\":0},\\\"param_event\\\":{\\\"event_s\\\":[\\\"currency_3_l\\\",\\\"source\\\",\\\"15\\\",\\\"19\\\",\\\"1\\\"]}},{\\\"param_environment\\\":{},\\\"param_user\\\":{\\\"account_id_s\\\":\\\"10004165\\\"},\\\"param_role\\\":{\\\"role_id_s\\\":\\\"10004165\\\",\\\"role_name_s\\\":\\\"10004165\\\",\\\"level_i\\\":\\\"1\\\",\\\"vip_level_i\\\":0},\\\"param_event\\\":{\\\"event_s\\\":[\\\"currency_3_l\\\",\\\"source\\\",\\\"15\\\",\\\"1001\\\",\\\"6000\\\"]}},{\\\"param_environment\\\":{},\\\"param_user\\\":{\\\"account_id_s\\\":\\\"10004165\\\"},\\\"param_role\\\":{\\\"role_id_s\\\":\\\"10004165\\\",\\\"role_name_s\\\":\\\"10004165\\\",\\\"level_i\\\":\\\"1\\\",\\\"vip_level_i\\\":0},\\\"param_event\\\":{\\\"event_s\\\":[\\\"currency_3_l\\\",\\\"source\\\",\\\"15\\\",\\\"28\\\",\\\"2\\\"]}},{\\\"param_environment\\\":{},\\\"param_user\\\":{\\\"account_id_s\\\":\\\"10004165\\\"},\\\"param_role\\\":{\\\"role_id_s\\\":\\\"10004165\\\",\\\"role_name_s\\\":\\\"10004165\\\",\\\"level_i\\\":\\\"1\\\",\\\"vip_level_i\\\":0},\\\"param_event\\\":{\\\"event_s\\\":[\\\"currency_3_l\\\",\\\"source\\\",\\\"15\\\",\\\"10046\\\",\\\"1\\\"]}},{\\\"param_environment\\\":{},\\\"param_user\\\":{\\\"account_id_s\\\":\\\"10004165\\\"},\\\"param_role\\\":{\\\"role_id_s\\\":\\\"10004165\\\",\\\"role_name_s\\\":\\\"10004165\\\",\\\"level_i\\\":\\\"1\\\",\\\"vip_level_i\\\":0},\\\"param_event\\\":{\\\"event_s\\\":[\\\"currency_3_l\\\",\\\"source\\\",\\\"29\\\",\\\"27\\\",\\\"3\\\"]}},{\\\"param_environment\\\":{},\\\"param_user\\\":{\\\"account_id_s\\\":\\\"10004165\\\"},\\\"param_role\\\":{\\\"role_id_s\\\":\\\"10004165\\\",\\\"role_name_s\\\":\\\"10004165\\\",\\\"level_i\\\":\\\"1\\\",\\\"vip_level_i\\\":0},\\\"param_event\\\":{\\\"event_s\\\":[\\\"currency_3_l\\\",\\\"source\\\",\\\"29\\\",\\\"44\\\",\\\"10\\\"]}},{\\\"param_environment\\\":{},\\\"param_user\\\":{\\\"account_id_s\\\":\\\"10004165\\\"},\\\"param_role\\\":{\\\"role_id_s\\\":\\\"10004165\\\",\\\"role_name_s\\\":\\\"10004165\\\",\\\"level_i\\\":\\\"1\\\",\\\"vip_level_i\\\":0},\\\"param_event\\\":{\\\"event_s\\\":[\\\"register_0\\\"]}},{\\\"param_environment\\\":{\\\"wifi_b\\\":false},\\\"param_user\\\":{\\\"user_id_s\\\":\\\"24324\\\",\\\"account_id_s\\\":\\\"10004165\\\"},\\\"param_role\\\":{\\\"role_id_s\\\":\\\"10004165\\\",\\\"role_name_s\\\":\\\"10004165\\\",\\\"level_i\\\":\\\"1\\\",\\\"vip_level_i\\\":0},\\\"param_event\\\":{\\\"event_s\\\":[\\\"login_1\\\",\\\"LOGOUT\\\"]}}]\"}";
init(); init();
sendPost("http://60.1.1.212:8080","111111111"); sendPost("https://gskuld.receiver.extranet.kt007.com:8081/skuld/game/common/",send);
} }
} }

View File

@ -31,7 +31,7 @@ spring.redis.expireTime = -1
#spring.data.mongodb.uri = mongodb://mongouser:ysj#2017#ljsd@111.231.54.96:27017/ysj_wx_1 #spring.data.mongodb.uri = mongodb://mongouser:ysj#2017#ljsd@111.231.54.96:27017/ysj_wx_1
#spring.data.mongodb2.uri = mongodb://mongouser:ysj#2017#ljsd@111.231.54.96:27017/develop_ysj_wx_1 #spring.data.mongodb2.uri = mongodb://mongouser:ysj#2017#ljsd@111.231.54.96:27017/develop_ysj_wx_1
#mongodb2 develop #mongodb2 develop
spring.data.mongodb.uri = mongodb://60.1.1.14:27017/jieling_10153 spring.data.mongodb.uri = mongodb://60.1.1.14:27017/jieling_50215
#spring.data.mongodb.uri = mongodb://60.1.1.14:27017/jieling_10212 #spring.data.mongodb.uri = mongodb://60.1.1.14:27017/jieling_10212
mongodb.options.maxWaitTime = 120000 mongodb.options.maxWaitTime = 120000
mongodb.options.connectTimeout = 1000 mongodb.options.connectTimeout = 1000
@ -43,7 +43,7 @@ mongodb.options.maxConnectionIdleTime = 1000
# netty config # netty config
netty.tcpPort = 16080 netty.tcpPort = 26080
netty.chatTcpPort = 20001 netty.chatTcpPort = 20001
netty.logintcpPort = 18091 netty.logintcpPort = 18091
netty.udpPort = 18092 netty.udpPort = 18092

View File

@ -22,7 +22,7 @@ import java.util.*;
public class ExcelUtils { public class ExcelUtils {
private static boolean isWrite = true; private static boolean isWrite = true;
//private static String excelPath ="E:/work2/data_execl/base_data/"; //excel 文件 //private static String excelPath ="E:/work2/data_execl/base_data/"; //excel 文件
private static String excelPath ="D:/data_execl1/base_data/"; //excel 文件 private static String excelPath ="E:/work2/data_execl/Map_data/"; //excel 文件
private static String path = "conf/server/"; private static String path = "conf/server/";
private static Set<String> oldFileNames = new HashSet<>(); private static Set<String> oldFileNames = new HashSet<>();
private static String javaFilePath = "serverlogic/src/main/java/com/ljsd/jieling/config/"; private static String javaFilePath = "serverlogic/src/main/java/com/ljsd/jieling/config/";