diff --git a/conf/server/AdventureConfig.txt b/conf/server/AdventureConfig.txt index 1dbee6182..0281313ef 100644 --- a/conf/server/AdventureConfig.txt +++ b/conf/server/AdventureConfig.txt @@ -1,10 +1,10 @@ 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 -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 -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 -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 -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 -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 -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 -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 -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 +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#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#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#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#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#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#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#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 diff --git a/conf/server/GlobalSystemConfig.txt b/conf/server/GlobalSystemConfig.txt index 2c79751f3..acb6ea065 100644 --- a/conf/server/GlobalSystemConfig.txt +++ b/conf/server/GlobalSystemConfig.txt @@ -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 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 -9 2#30 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 -10 2#30 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 -11 1#1051 1 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 +9 2#99 0 20190210 080000 20290210 080000 20190210 080000 20290210 080000 0 +10 2#99 0 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 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 @@ -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 104 3#50 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 diff --git a/conf/server/ItemConfig.txt b/conf/server/ItemConfig.txt index 8c83eafa3..43f49bbe4 100644 --- a/conf/server/ItemConfig.txt +++ b/conf/server/ItemConfig.txt @@ -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 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 -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 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 diff --git a/luafight/BattleRecord/xxx.xxx b/luafight/BattleRecord/a.json similarity index 100% rename from luafight/BattleRecord/xxx.xxx rename to luafight/BattleRecord/a.json diff --git a/serverlogic/src/main/java/com/ljsd/CoreService.java b/serverlogic/src/main/java/com/ljsd/CoreService.java index b2d1b5f54..fe5f479e0 100644 --- a/serverlogic/src/main/java/com/ljsd/CoreService.java +++ b/serverlogic/src/main/java/com/ljsd/CoreService.java @@ -1,23 +1,38 @@ 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.thrift.idl.InvalidOperException; import com.ljsd.jieling.thrift.idl.RPCRequestIFace; import com.ljsd.jieling.thrift.idl.Result; import org.apache.thrift.TException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class CoreService implements RPCRequestIFace.Iface { + private static final Logger LOGGER = LoggerFactory.getLogger(CoreService.class); @Override public Result deliveryRecharge(int uid, int goodsId, String openId, String orderId, long orderTime, int amount) throws InvalidOperException, TException { 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) { + User user = UserManager.getUserInMem(uid); Result result = new Result(); result.setResultCode(0); + if(user == null){ + LOGGER.info("the uid={} not found",uid ); + } result.setResultMsg("server exce"); + KtEventUtils.onKtEvent(user, ParamEventBean.UserLogin,goodsId,orderId,result.getResultCode(),amount); return result; } diff --git a/serverlogic/src/main/java/com/ljsd/GameApplication.java b/serverlogic/src/main/java/com/ljsd/GameApplication.java index 9d926f186..bb3098818 100644 --- a/serverlogic/src/main/java/com/ljsd/GameApplication.java +++ b/serverlogic/src/main/java/com/ljsd/GameApplication.java @@ -89,6 +89,7 @@ public class GameApplication { MapLogic.getInstance().init(configurableApplicationContext); SensitivewordFilter.init(); + HttpPool.init(); // 加载lua文件 CheckFight.getInstance().init("luafight/BattleMain.lua"); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/chat/logic/ChatLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/chat/logic/ChatLogic.java index 3b8ecf701..1b8491758 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/chat/logic/ChatLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/chat/logic/ChatLogic.java @@ -3,6 +3,7 @@ package com.ljsd.jieling.chat.logic; import com.ljsd.GameApplication; 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.RedisUtil; import com.ljsd.jieling.logic.OnlineUserManager; @@ -88,7 +89,7 @@ public class ChatLogic { int uid = iSession.getUid(); User user = UserManager.getUser(uid); FriendManager friendManager = user.getFriendManager(); - boolean result = ShieldedWordUtils.checkName(message); + boolean result = ShieldedWordUtils.checkName(message,false); if (!result) { MessageUtil.sendErrorResponse(iSession, 0, msgId, "包含敏感字"); return ; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/config/reportData/DataMessageUtils.java b/serverlogic/src/main/java/com/ljsd/jieling/config/reportData/DataMessageUtils.java index ab8f07850..1d4b2160a 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/config/reportData/DataMessageUtils.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/config/reportData/DataMessageUtils.java @@ -1,9 +1,12 @@ package com.ljsd.jieling.config.reportData; import com.alibaba.fastjson.JSON; +import com.google.gson.Gson; import com.ljsd.common.mogodb.util.BlockingUniqueQueue; +import com.ljsd.jieling.ktbeans.KTSendBody; import com.ljsd.jieling.util.http.HttpPool; +import java.util.ArrayList; import java.util.List; import java.util.concurrent.BlockingQueue; import java.util.concurrent.CopyOnWriteArrayList; @@ -11,39 +14,25 @@ import java.util.concurrent.CopyOnWriteArrayList; public class DataMessageUtils { static final BlockingQueue logQueue = new BlockingUniqueQueue<>(); - static List 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){ logQueue.offer(info); } - //出队列 - public static Object take(){ - try { - return logQueue.take(); - } catch (InterruptedException e) { - e.printStackTrace(); - return null; - } - } - public static void manageData(Object take) { - List 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)); + public static void manageData() { + List sendDataList = new ArrayList<>(10); + logQueue.drainTo(sendDataList,10); + if(sendDataList.isEmpty()){ + try { + Thread.sleep(10); + return; + } catch (InterruptedException e) { + e.printStackTrace(); } } - info.append("]"); - HttpPool.sendPost("",info.toString()); + KTSendBody sendBody = new KTSendBody(gson.toJson(sendDataList)); + // HttpPool.sendPost(sendUrl,gson.toJson(sendBody)); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/core/GlobalsDef.java b/serverlogic/src/main/java/com/ljsd/jieling/core/GlobalsDef.java index db0cd918c..5f58a9c49 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/core/GlobalsDef.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/core/GlobalsDef.java @@ -3,6 +3,9 @@ package com.ljsd.jieling.core; public interface GlobalsDef { String DEFAULT_NAME = "无名妖灵师"; + int addReason = 0; + int subReason = 1; + int BATTLING = -1; int BREAK_TYPE =1 ; //1突破 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java index 6f7da2391..b6518fa9e 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java @@ -1,6 +1,11 @@ package com.ljsd.jieling.handler; 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.UserManager; import com.ljsd.jieling.netty.cocdex.PacketNetData; @@ -28,6 +33,42 @@ public class LoginRequestHandler extends BaseHandler { byte[] message = netData.parseClientProtoNetData(); PlayerInfoProto.LoginRequest loginRequest = 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); @@ -44,7 +85,7 @@ public class LoginRequestHandler extends BaseHandler { try { MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.LOGIN_RESPONSE_VALUE, loginResponse, true); MapLogic.getInstance().whenLogin(user); - LOGGER.info("back to client!"); + KtEventUtils.onKtEvent(user, ParamEventBean.UserLoginOutEvent,1); } catch (Exception e) { e.printStackTrace(); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/BeanBuilder/ParamBuilder.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/BeanBuilder/ParamBuilder.java index 2a29b2f00..39b2813ee 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/BeanBuilder/ParamBuilder.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/BeanBuilder/ParamBuilder.java @@ -2,28 +2,21 @@ package com.ljsd.jieling.ktbeans.BeanBuilder; import com.ljsd.jieling.ktbeans.*; 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; public class ParamBuilder { - public static KTParam paramBuild(int uid,int type) throws Exception { - User user = UserManager.getUser(uid); + public static KTParam paramBuild(User user,int type,ParamEventBean paramEventBean){ + int uid = user.getId(); 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 .UserActivityEvent: KTRoleActivity ktRoleActivity = new KTRoleActivity(); ktRoleActivity.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleActivity.setParam_environment(KtEventUtils.enviromentBuild(uid)); - ktRoleActivity.setParam_user(KtEventUtils.userBuild(uid)); - ktRoleActivity.setParam_role(KtEventUtils.roleBuild(uid)); - ktRoleActivity.setParam_event(KtEventUtils.onKtEvent(user,type)); + ktRoleActivity.setParam_user(KtEventUtils.userBuild(user)); + ktRoleActivity.setParam_role(KtEventUtils.roleBuild(user)); + ktRoleActivity.setParam_event(paramEventBean); return ktRoleActivity; case ParamEventBean @@ -31,9 +24,9 @@ public class ParamBuilder { KTRoleItem ktRoleItem = new KTRoleItem(); ktRoleItem.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleItem.setParam_environment(KtEventUtils.enviromentBuild(uid)); - ktRoleItem.setParam_user(KtEventUtils.userBuild(uid)); - ktRoleItem.setParam_role(KtEventUtils.roleBuild(uid)); - ktRoleItem.setParam_event(KtEventUtils.onKtEvent(user,type)); + ktRoleItem.setParam_user(KtEventUtils.userBuild(user)); + ktRoleItem.setParam_role(KtEventUtils.roleBuild(user)); + ktRoleItem.setParam_event(paramEventBean); return ktRoleItem; case ParamEventBean @@ -41,9 +34,9 @@ public class ParamBuilder { KTRoleCurrency ktRoleCurrency = new KTRoleCurrency(); ktRoleCurrency.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleCurrency.setParam_environment(KtEventUtils.enviromentBuild(uid)); - ktRoleCurrency.setParam_user(KtEventUtils.userBuild(uid)); - ktRoleCurrency.setParam_role(KtEventUtils.roleBuild(uid)); - ktRoleCurrency.setParam_event(KtEventUtils.onKtEvent(user,type)); + ktRoleCurrency.setParam_user(KtEventUtils.userBuild(user)); + ktRoleCurrency.setParam_role(KtEventUtils.roleBuild(user)); + ktRoleCurrency.setParam_event(paramEventBean); return ktRoleCurrency; case ParamEventBean @@ -51,9 +44,9 @@ public class ParamBuilder { KTRoleLogin ktRoleLogin = new KTRoleLogin(); ktRoleLogin.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleLogin.setParam_environment(KtEventUtils.simpleEnviromentBuild(uid)); - ktRoleLogin.setParam_user(KtEventUtils.userBuild(uid)); - ktRoleLogin.setParam_role(KtEventUtils.roleBuild(uid)); - ktRoleLogin.setParam_event(KtEventUtils.onKtEvent(user,type)); + ktRoleLogin.setParam_user(KtEventUtils.userBuild(user)); + ktRoleLogin.setParam_role(KtEventUtils.roleBuild(user)); + ktRoleLogin.setParam_event(paramEventBean); return ktRoleLogin; @@ -62,9 +55,9 @@ public class ParamBuilder { KTRoleMall ktRoleMall = new KTRoleMall(); ktRoleMall.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleMall.setParam_environment(KtEventUtils.enviromentBuild(uid)); - ktRoleMall.setParam_user(KtEventUtils.userBuild(uid)); - ktRoleMall.setParam_role(KtEventUtils.roleBuild(uid)); - ktRoleMall.setParam_event(KtEventUtils.onKtEvent(user,type)); + ktRoleMall.setParam_user(KtEventUtils.userBuild(user)); + ktRoleMall.setParam_role(KtEventUtils.roleBuild(user)); + ktRoleMall.setParam_event(paramEventBean); return ktRoleMall; case ParamEventBean @@ -72,9 +65,9 @@ public class ParamBuilder { KTRolePay ktRolePay = new KTRolePay(); ktRolePay.setParam_data(KtEventUtils.dataBuild(uid)); ktRolePay.setParam_environment(KtEventUtils.enviromentBuild(uid)); - ktRolePay.setParam_user(KtEventUtils.userBuild(uid)); - ktRolePay.setParam_role(KtEventUtils.roleBuild(uid)); - ktRolePay.setParam_event(KtEventUtils.onKtEvent(user,type)); + ktRolePay.setParam_user(KtEventUtils.userBuild(user)); + ktRolePay.setParam_role(KtEventUtils.roleBuild(user)); + ktRolePay.setParam_event(paramEventBean); return ktRolePay; case ParamEventBean @@ -82,9 +75,9 @@ public class ParamBuilder { KTRoleRegister ktRoleRegister = new KTRoleRegister(); ktRoleRegister.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleRegister.setParam_environment(KtEventUtils.enviromentBuild(uid)); - ktRoleRegister.setParam_user(KtEventUtils.userBuild(uid)); - ktRoleRegister.setParam_role(KtEventUtils.roleBuild(uid)); - ktRoleRegister.setParam_event(KtEventUtils.onKtEvent(user,type)); + ktRoleRegister.setParam_user(KtEventUtils.userBuild(user)); + ktRoleRegister.setParam_role(KtEventUtils.roleBuild(user)); + ktRoleRegister.setParam_event(paramEventBean); return ktRoleRegister; case ParamEventBean @@ -92,13 +85,19 @@ public class ParamBuilder { KTRoleTask ktRoleTask = new KTRoleTask(); ktRoleTask.setParam_data(KtEventUtils.dataBuild(uid)); ktRoleTask.setParam_environment(KtEventUtils.enviromentBuild(uid)); - ktRoleTask.setParam_user(KtEventUtils.userBuild(uid)); - ktRoleTask.setParam_role(KtEventUtils.roleBuild(uid)); - ktRoleTask.setParam_event(KtEventUtils.onKtEvent(user,type)); + ktRoleTask.setParam_user(KtEventUtils.userBuild(user)); + ktRoleTask.setParam_role(KtEventUtils.roleBuild(user)); + ktRoleTask.setParam_event(paramEventBean); return ktRoleTask; case ParamEventBean .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: break; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTEnvironmentUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTEnvironmentUtil.java index 7e572d6b3..e91777579 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTEnvironmentUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTEnvironmentUtil.java @@ -19,7 +19,7 @@ public class KTEnvironmentUtil { if(environmentInfo.containsKey(uid)){ return environmentInfo.get(uid); } - return null; + return new ParamEnvironmentBean(); } public static void addUserSimpleEnviromentInfo(int uid,ParamEnvironmentSimpleBean paramEnvironmentSimpleBean){ @@ -29,7 +29,7 @@ public class KTEnvironmentUtil { if(environmentSimpleInfo.containsKey(uid)){ return environmentSimpleInfo.get(uid); } - return null; + return new ParamEnvironmentSimpleBean(); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRequestBeans/LoginParamType.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRequestBeans/LoginParamType.java new file mode 100644 index 000000000..cfa66a08e --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRequestBeans/LoginParamType.java @@ -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"; + +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleUtil.java index 6f714b303..b0edae7d6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleUtil.java @@ -1,20 +1,18 @@ package com.ljsd.jieling.ktbeans; import com.ljsd.jieling.ktbeans.parmsBean.ParamRoleBean; +import com.ljsd.jieling.logic.dao.root.User; import java.util.HashMap; import java.util.Map; public class KTRoleUtil { - private static Map roleInfo = new HashMap<>(); - - public static void addRoleInfo(int uid, ParamRoleBean paramUserBean){ - roleInfo.put(uid,paramUserBean); - } - public static ParamRoleBean getRoleById(int uid){ - if(roleInfo.containsKey(uid)){ - return roleInfo.get(uid); - } - return null; + public static ParamRoleBean getRoleById(User user){ + ParamRoleBean paramRoleBean = new ParamRoleBean(); + paramRoleBean.setRole_id_s(String.valueOf(user.getId())); + paramRoleBean.setRole_name_s(user.getPlayerInfoManager().getNickName()); + paramRoleBean.setLevel_i(String.valueOf(user.getPlayerInfoManager().getLevel())); + paramRoleBean.setVip_level_i(user.getPlayerInfoManager().getVipLevel()); + return paramRoleBean; } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTSendBody.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTSendBody.java new file mode 100644 index 000000000..ebed517b1 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTSendBody.java @@ -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; + } + + + +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTUserUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTUserUtil.java index eb3caa8b0..b92d5b357 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTUserUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTUserUtil.java @@ -1,21 +1,39 @@ 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.logic.dao.Item; +import com.ljsd.jieling.logic.dao.root.User; import java.util.HashMap; import java.util.Map; public class KTUserUtil implements KTStaticUtil{ - - private static Map userInfo = new HashMap<>(); - - public static void addUserInfo(int uid, ParamUserBean paramUserBean){ - userInfo.put(uid,paramUserBean); + public static ParamUserBean getUserById(User user){ + ParamUserBean paramUserBean = new ParamUserBean(); + paramUserBean.setUser_id_s(user.getPlayerInfoManager().getOpenId()); + paramUserBean.setAccount_id_s(String.valueOf(user.getId())); + return paramUserBean; } - public static ParamUserBean getUserById(int uid){ - if(userInfo.containsKey(uid)){ - return userInfo.get(uid); + + public static ParamSimpleUserBean getSimpleUserById(User user){ + 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; } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KtEventUtils.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KtEventUtils.java index bd3f36a02..640e1b008 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KtEventUtils.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KtEventUtils.java @@ -1,19 +1,37 @@ package com.ljsd.jieling.ktbeans; +import com.google.gson.Gson; 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.logic.dao.root.User; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.util.HashMap; import java.util.Map; 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[] userloginType = new String[]{"LOGIN","LOGOUT"}; //仅两种状态:登录:LOGIN、登出:LOGOUT + private static String[] payResult = new String[]{"INVALID","VALID"}; //仅两种状态:登录:LOGIN、登出:LOGOUT + private static Map 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); switch (eventType){ case ParamEventBean.UserActivityEvent: @@ -30,23 +48,53 @@ public class KtEventUtils { int itemId = (int)parm[2]; int itemNum = (int)parm[3]; paramEventBean.add(itemUseType[useType]); + paramEventBean.add(String.valueOf(useReson)); + paramEventBean.add(String.valueOf(itemId)); + paramEventBean.add(String.valueOf(itemNum)); break; case ParamEventBean.UserLoginOutEvent: + case ParamEventBean.UserLogin: + int loginType = (int)parm[0]; + paramEventBean.add(userloginType[loginType]); break; 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; 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; case ParamEventBean.UserRegister: break; case ParamEventBean.UserTaskEvent: - break; - case ParamEventBean.UserLogin: + int misionType = (int)parm[0]; + int misionId = (int)parm[1]; + paramEventBean.add(String.valueOf(misionType)); + paramEventBean.add(String.valueOf(misionId)); + paramEventBean.add("COMPLETE"); 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){ return KTEnvironmentUtil.getUserEnviromentInfoById(uid); @@ -57,11 +105,15 @@ public class KtEventUtils { public static ParamDataBean dataBuild(int uid){ return KTDataUtil.getUserDataInfoById(uid); } - public static ParamUserBean userBuild(int uid){ - return KTUserUtil.getUserById(uid); + public static ParamUserBean userBuild(User user){ + 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); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamEnvironmentSimpleBean.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamEnvironmentSimpleBean.java index eb6f74699..434fa0f63 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamEnvironmentSimpleBean.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamEnvironmentSimpleBean.java @@ -74,4 +74,16 @@ public class ParamEnvironmentSimpleBean extends ParamEnvironmentBean{ public void setWifi_b(boolean 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(){} } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamRoleBean.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamRoleBean.java index e9d4415e8..807d1113c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamRoleBean.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamRoleBean.java @@ -19,7 +19,6 @@ public class ParamRoleBean { private String role_id_s; private String role_name_s; - private String role_class_s; private String level_i; private int vip_level_i; @@ -39,14 +38,6 @@ public class ParamRoleBean { 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() { return level_i; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamSimpleUserBean.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamSimpleUserBean.java new file mode 100644 index 000000000..d734b7443 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/parmsBean/ParamSimpleUserBean.java @@ -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; + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTAppOnline.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTAppOnline.java similarity index 81% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTAppOnline.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTAppOnline.java index 46e7fd5f5..19f6f4c89 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTAppOnline.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTAppOnline.java @@ -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.ParamEventBean; -public class KTAppOnline extends KTParam{ +public class KTAppOnline extends KTParam { private ParamDataBean param_data; private ParamEventBean param_event; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleActivity.java similarity index 93% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleActivity.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleActivity.java index dd7dcf268..9a8009db0 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleActivity.java @@ -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.*; public class KTRoleActivity extends KTParam { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleCurrency.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleCurrency.java similarity index 90% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleCurrency.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleCurrency.java index 24a05b2a0..8851f437f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleCurrency.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleCurrency.java @@ -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.*; -public class KTRoleCurrency extends KTParam{ +public class KTRoleCurrency extends KTParam { private ParamDataBean param_data; private ParamEnvironmentBean param_environment; private ParamUserBean param_user; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleItem.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleItem.java similarity index 90% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleItem.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleItem.java index 9fffac802..2f620e6bf 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleItem.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleItem.java @@ -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.*; -public class KTRoleItem extends KTParam{ +public class KTRoleItem extends KTParam { private ParamDataBean param_data; private ParamEnvironmentBean param_environment; private ParamUserBean param_user; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleLogin.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleLogin.java similarity index 90% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleLogin.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleLogin.java index 1ac61334c..ce62cfd4d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleLogin.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleLogin.java @@ -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.*; -public class KTRoleLogin extends KTParam{ +public class KTRoleLogin extends KTParam { private ParamDataBean param_data; private ParamEnvironmentBean param_environment; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleMall.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleMall.java similarity index 93% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleMall.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleMall.java index d6af32150..7cd7607f4 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleMall.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleMall.java @@ -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.*; -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} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRolePay.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRolePay.java similarity index 93% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRolePay.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRolePay.java index f6aaa6cd5..09f190ed8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRolePay.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRolePay.java @@ -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.*; -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} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleRegister.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleRegister.java similarity index 93% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleRegister.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleRegister.java index 568efacb9..a5dd8a07c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleRegister.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleRegister.java @@ -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.*; -public class KTRoleRegister extends KTParam{ +public class KTRoleRegister extends KTParam { /** diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleTask.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleTask.java similarity index 90% rename from serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleTask.java rename to serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleTask.java index 652991497..7cb99a1af 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/KTRoleTask.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KTRoleTask.java @@ -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.*; -public class KTRoleTask extends KTParam{ +public class KTRoleTask extends KTParam { private ParamDataBean param_data; private ParamEnvironmentBean param_environment; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KtUserLogin.java b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KtUserLogin.java new file mode 100644 index 000000000..48cdd4a16 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/ktbeans/sendbeans/KtUserLogin.java @@ -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; + } +} \ No newline at end of file diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java index 06fec72be..a1d86abca 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java @@ -140,6 +140,7 @@ public class GlobalDataManaager { } closeAction(closeList); updateGetFunctionOfTimeResponse(); + } public void openAction(List ids){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java index 6a997855f..e86fc4fe7 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java @@ -5,6 +5,8 @@ import com.ljsd.jieling.config.SGameSetting; import com.ljsd.jieling.config.SPlayerLevelConfig; import com.ljsd.jieling.db.mongo.MongoUtil; 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.dao.root.User; import com.ljsd.jieling.logic.hero.HeroLogic; @@ -98,6 +100,7 @@ public class UserManager { PlayerLogic.getInstance().vipflushEveryDay(user,null); ActivityLogic.getInstance().newPlayerOpenActivityMission(user); user.getUserMissionManager().onGameEvent(user, GameEvent.USER_LEVELUP,0,1); + KtEventUtils.onKtEvent(user, ParamEventBean.UserRegister); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java index ff71ce170..5c6b3d3c6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java @@ -216,7 +216,7 @@ public class CombatLogic { if(randomTimes>0){ int bossGroupId = randomInvasionBoss(uid, adventureStateInfo.getPosition(),randomTimes,false); if(bossGroupId>0){ - remainTime =sAdventureConfig.getInvasionBossHolding(); + remainTime =sAdventureConfig.getInvasionBossHolding()-(now-adventureStateInfo.getFindBossTime()); nextFlushTime+=remainTime+nextFlushTime; need=true; } @@ -555,12 +555,11 @@ public class CombatLogic { bossGroupID = item[0]; break; } - totalWeight+=item[1]; } } int findBossTime = adventureStateInfo.getFindBossTime(); int now = (int)(System.currentTimeMillis()/1000); - if(isGm || findBossTime == 0){ + if(isGm || bossGroupID == 0 || findBossTime == 0){ }else{ int nextFindTime = findBossTime + sAdventureConfig.getInvasionBossRefresh() * (randomTimes - reallyRandomTimes); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/friend/FriendLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/friend/FriendLogic.java index b997677ac..cb904740f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/friend/FriendLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/friend/FriendLogic.java @@ -454,7 +454,7 @@ public class FriendLogic { PlayerManager playerInfoManager = user.getPlayerInfoManager(); FriendManager friendManager = user.getFriendManager(); List friends = friendManager.getFriends(); - boolean result = ShieldedWordUtils.checkName( name); + boolean result = ShieldedWordUtils.checkName( name,true); if (!result) { MessageUtil.sendErrorResponse(iSession, 0, msgId, "名字不合法"); return; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index 8b23f91a6..41394def1 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -8,6 +8,8 @@ import com.ljsd.jieling.core.GlobalsDef; import com.ljsd.jieling.core.VipPrivilegeType; import com.ljsd.jieling.globals.BIReason; 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.root.User; import com.ljsd.jieling.logic.dao.UserManager; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index 69ab51f89..2cc8f12f5 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -225,6 +225,7 @@ public class ItemLogic { Map baseRandomMap = new HashMap<>(); for (String heroId : heroIdsList) { Hero hero = heroManager.getHeroMap().get(heroId); + heroManager.removeHero(heroId); int[][] sumConsume = SHeroLevlConfig.getsHeroLevlConfigMap().get(hero.getLevel()).getSumConsume(); ItemUtil.combineReward(sumConsume,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap); int breakId = hero.getBreakId(); @@ -242,7 +243,7 @@ public class ItemLogic { continue; } SItem sItem = SItem.getsItemMap().get(hero.getTemplateId()); - heroManager.removeHero(heroId); + if (reward.length() == 0) { reward = new StringBuilder(sItem.getResolveReward()); } else { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionLoigc.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionLoigc.java index 08d594e80..13b172b04 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionLoigc.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionLoigc.java @@ -7,6 +7,8 @@ import com.ljsd.jieling.globals.BIReason; import com.ljsd.jieling.handler.map.CrossInfo; import com.ljsd.jieling.handler.map.MapLogic; 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.root.User; import com.ljsd.jieling.logic.hero.HeroLogic; @@ -145,9 +147,8 @@ public class MissionLoigc { List missionStateChangeInfos = null; if(type == GameMisionType.VIPMISSION.getType()){ //vip 任务 Map> 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> gameMisionTypeListMap = userMissionManager.onGameEvent(user, GameEvent.DAILY_MISSION_REWARD, missionId); 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); PlayerInfoProto.TakeMissionRewardResponse build = PlayerInfoProto.TakeMissionRewardResponse.newBuilder().setDrop(drop).build(); MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,build,true); + KtEventUtils.onKtEvent(user, ParamEventBean.UserTaskEvent,type,missionId); return; } @@ -177,6 +179,7 @@ public class MissionLoigc { CommonProto.Drop.Builder drop = ItemUtil.drop(user, missionStateChangeInfos.get(0).getRewwardGroups(), BIReason.TAKE_MISSION_REWARD); PlayerInfoProto.TakeMissionRewardResponse build = PlayerInfoProto.TakeMissionRewardResponse.newBuilder().setDrop(drop).build(); MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,build,true); + KtEventUtils.onKtEvent(user, ParamEventBean.UserTaskEvent,type,missionId); }else{ MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,"mission can not get reward"); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java index e84efd594..5b2f9cc32 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java @@ -108,7 +108,7 @@ public class PlayerLogic { MessageUtil.sendErrorResponse(iSession, 0, msgId, ""); return true; } - boolean result = ShieldedWordUtils.checkName( name); + boolean result = ShieldedWordUtils.checkName( name,true); if (!result) { MessageUtil.sendErrorResponse(iSession, 0, msgId, ""); return true; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java index 40481b594..3359c8fcd 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java @@ -5,6 +5,8 @@ import com.ljsd.jieling.config.SErrorCodeEerverConfig; import com.ljsd.jieling.config.SRechargeCommodityConfig; import com.ljsd.jieling.globals.BIReason; 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.activity.ActivityLogic; 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 { 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); SRechargeCommodityConfig sRechargeCommodityConfig = SRechargeCommodityConfig.rechargeCommodityConfigMap.get(goodsId); RechargeInfo rechargeInfo = user.getPlayerInfoManager().getRechargeInfo(); @@ -56,6 +58,17 @@ public class BuyGoodsLogic { if(buyCount ==null){ 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; int limit = sRechargeCommodityConfig.getLimit(); int type = sRechargeCommodityConfig.getType(); @@ -125,11 +138,7 @@ public class BuyGoodsLogic { } 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); ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.RechargeTotal,rechargeInfo.getSaveAmt(),null); buyGoodsTimes.put(goodsId,buyCount); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java index 20f77000d..2fe81a8aa 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java @@ -3,6 +3,8 @@ package com.ljsd.jieling.logic.store; import com.ljsd.jieling.config.SStoreConfig; import com.ljsd.jieling.config.SStoreTypeConfig; 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.StoreInfo; import com.ljsd.jieling.logic.dao.StoreManager; @@ -259,6 +261,7 @@ public class StoreLogic { } itemNumMap.put(itemId,buyTimes +itemNum); storeInfo.setItemNumMap(itemNumMap); + KtEventUtils.onKtEvent(user, ParamEventBean.UserStoreEvent,storeId,itemId,cost[0][0],itemNum,cost[0][1]); return ""; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/network/server/ProtocolsManager.java b/serverlogic/src/main/java/com/ljsd/jieling/network/server/ProtocolsManager.java index 43c59fa1e..f69dd25b6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/network/server/ProtocolsManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/network/server/ProtocolsManager.java @@ -14,6 +14,8 @@ import com.ljsd.jieling.db.redis.RedisUtil; import com.ljsd.jieling.exception.ErrorCode; import com.ljsd.jieling.globals.Global; 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.activity.ActivityLogic; import com.ljsd.jieling.logic.activity.ActivityType; @@ -308,7 +310,12 @@ public class ProtocolsManager implements ProtocolsAbstract { // } catch (FileNotFoundException e) { // e.printStackTrace(); // } + User user = UserManager.getUserInMem(session.getUid()); + if(user == null){ + return; + } + KtEventUtils.onKtEvent(user, ParamEventBean.UserLoginOutEvent,1); int roomId = user.getRoomInfo().getRoomId(); if(roomId!=-1){ Room room = RoomManager.getRoomById(roomId); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thread/ThreadManager.java b/serverlogic/src/main/java/com/ljsd/jieling/thread/ThreadManager.java index 5e0cee003..d8c02cb7c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thread/ThreadManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thread/ThreadManager.java @@ -37,7 +37,8 @@ public class ThreadManager { public void init(ConfigurableApplicationContext configurableApplicationContext) { platConfigureTask = configurableApplicationContext.getBean(PlatConfigureTask.class); - dataReportTask = configurableApplicationContext.getBean(DataReportTask.class); + DataReportTask dataReportTask = new DataReportTask(); + dataReportTask.start(); go(); } @@ -83,9 +84,6 @@ public class ThreadManager { int delayForMinute = 60 - (now%60); LOGGER.info("delayForMinute---->>>>{}" ,delayForMinute); 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 Thread(){ public void run () { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/DataReportTask.java b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/DataReportTask.java index 788a9bcae..2b26183ff 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/DataReportTask.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/DataReportTask.java @@ -5,13 +5,15 @@ import org.springframework.stereotype.Component; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; -@Component -public class DataReportTask implements Runnable { +public class DataReportTask extends Thread { + + public DataReportTask(){ + setName("DataReportTaskThread"); + } @Override public void run() { while (true) { - Object take = DataMessageUtils.take(); - DataMessageUtils.manageData(take); + DataMessageUtils.manageData(); } } // public static void startTlogThread(){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java index 0bdb14fe8..d03ad4e61 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java @@ -5,7 +5,7 @@ import com.ljsd.jieling.core.GlobalsDef; import com.ljsd.jieling.handler.map.MapLogic; import com.ljsd.jieling.hotfix.HotfixUtil; 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.logic.GlobalDataManaager; 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.arena.ArenaLogic; import com.ljsd.jieling.logic.fight.CombatLogic; -import com.ljsd.jieling.network.session.ISession; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.Calendar; -import java.util.Map; public class MinuteTask extends Thread { private static final Logger LOGGER = LoggerFactory.getLogger(MinuteTask.class); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/ItemUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/ItemUtil.java index 248c7f403..a90b92962 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/ItemUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/ItemUtil.java @@ -9,6 +9,8 @@ import com.ljsd.jieling.globals.Global; import com.ljsd.jieling.globals.GlobalItemType; import com.ljsd.jieling.handler.map.MapManager; 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.root.User; import com.ljsd.jieling.logic.hero.HeroLogic; @@ -27,6 +29,7 @@ public class ItemUtil { public static Map equipQulityNameMap = new HashMap<>(2); private static final Logger LOGGER = LoggerFactory.getLogger(ItemUtil.class); private static Set notDelete = new HashSet<>(); + private static Set currencyMap = new HashSet<>(2); static { notDelete.add(Global.STAMINA); @@ -34,6 +37,8 @@ public class ItemUtil { notDelete.add(Global.GENERALSTORY_TICKET); equipQulityNameMap.put(5,"传说"); equipQulityNameMap.put(6,"史诗"); + currencyMap.add(Global.GEM); + currencyMap.add(Global.GOLD); } //指定道具掉落(如:邮件,初始化物品) @@ -427,6 +432,11 @@ public class ItemUtil { if(itemNum>=0){ 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){ String nickName = user.getPlayerInfoManager().getNickName(); String message = SErrorCodeEerverConfig.getI18NMessage("lamp_lottery_differ_content", new Object[]{nickName,sItem.getName()}); @@ -590,6 +600,11 @@ public class ItemUtil { if (null == myItem) { 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())) { itemManager.removeItem(userItem.getKey()); } else { @@ -659,8 +674,10 @@ public class ItemUtil { continue; } addEquip(user, entry.getKey(), equipList); + KtEventUtils.onKtEvent(user, ParamEventBean.UserItemEvent,reason,GlobalsDef.addReason,entry.getKey(),1); } } + if (reward.length() > 0) { int nowTime = (int) (TimeUtils.now() / 1000); 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]); + KtEventUtils.onKtEvent(user, ParamEventBean.UserItemEvent,reason,GlobalsDef.addReason,cardId,1); } /** diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/MD5Util.java b/serverlogic/src/main/java/com/ljsd/jieling/util/MD5Util.java new file mode 100644 index 000000000..9e615ae26 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/MD5Util.java @@ -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 ""; + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/ShieldedWordUtils.java b/serverlogic/src/main/java/com/ljsd/jieling/util/ShieldedWordUtils.java index 8afb92147..c90457765 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/ShieldedWordUtils.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/ShieldedWordUtils.java @@ -5,11 +5,15 @@ import java.util.regex.Pattern; public class ShieldedWordUtils { - public static boolean checkName(String name){ - boolean result = validateUserName(name); - if(!result){ - return false; + public static boolean checkName(String name,boolean validateSpecStr){ + boolean result = true; + if(validateSpecStr){ + result = validateUserName(name); + if(!result){ + return false; + } } + result = isContaintSensitiveWord(name); if(result){ return false; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/TimeUtils.java b/serverlogic/src/main/java/com/ljsd/jieling/util/TimeUtils.java index d5c2bc433..b707c6cd3 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/TimeUtils.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/TimeUtils.java @@ -132,12 +132,6 @@ public class TimeUtils { 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) * diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/http/HttpPool.java b/serverlogic/src/main/java/com/ljsd/jieling/util/http/HttpPool.java index 36f2ec48a..414c5e08b 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/http/HttpPool.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/http/HttpPool.java @@ -21,6 +21,7 @@ public class HttpPool { private static int maxSendTimes = 2; private static int sendIntervalTime = 1000; private static String charset = "UTF-8"; + public static void init(){ poolConnection.setMaxTotal(100); poolConnection.setDefaultMaxPerRoute(100); @@ -33,6 +34,7 @@ public class HttpPool { } public static void sendPost(String url, String info) { + LOGGER.info("the data={}",info); HttpPost httpPost = new HttpPost(url); HttpResponse httpResponse; int sendTimes = 0; @@ -41,8 +43,8 @@ public class HttpPool { StringEntity stringEntity = new StringEntity(info, charset); httpPost.setEntity(stringEntity); httpPost.setConfig(getRequestConfig()); + httpPost.setHeader("Content-Type","application/json;charset=utf-8"); httpResponse = httpclient.execute(httpPost); -// retStr = EntityUtils.toString(responseEntity, charset); HttpEntity responseEntity = httpResponse.getEntity(); EntityUtils.consume(responseEntity); int statusCode = httpResponse.getStatusLine().getStatusCode(); @@ -71,7 +73,8 @@ public class HttpPool { } 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(); - sendPost("http://60.1.1.212:8080","111111111"); + sendPost("https://gskuld.receiver.extranet.kt007.com:8081/skuld/game/common/",send); } } diff --git a/serverlogic/src/main/resources/application.properties b/serverlogic/src/main/resources/application.properties index 8c0a95d38..e7d2b0bfe 100644 --- a/serverlogic/src/main/resources/application.properties +++ b/serverlogic/src/main/resources/application.properties @@ -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.mongodb2.uri = mongodb://mongouser:ysj#2017#ljsd@111.231.54.96:27017/develop_ysj_wx_1 #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 mongodb.options.maxWaitTime = 120000 mongodb.options.connectTimeout = 1000 @@ -43,7 +43,7 @@ mongodb.options.maxConnectionIdleTime = 1000 # netty config -netty.tcpPort = 16080 +netty.tcpPort = 26080 netty.chatTcpPort = 20001 netty.logintcpPort = 18091 netty.udpPort = 18092 diff --git a/test/src/main/java/ExcelUtils.java b/test/src/main/java/ExcelUtils.java index 5d5a868e9..13b6eeccb 100644 --- a/test/src/main/java/ExcelUtils.java +++ b/test/src/main/java/ExcelUtils.java @@ -22,7 +22,7 @@ import java.util.*; public class ExcelUtils { private static boolean isWrite = true; //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 Set oldFileNames = new HashSet<>(); private static String javaFilePath = "serverlogic/src/main/java/com/ljsd/jieling/config/";