From 7b988d70c2997f7e1e961cdddea7ebf5b000a3a1 Mon Sep 17 00:00:00 2001 From: wangyuan Date: Wed, 21 Aug 2019 20:31:29 +0800 Subject: [PATCH] process openId --- .../ljsd/jieling/handler/LoginRequestHandler.java | 8 ++++++-- .../com/ljsd/jieling/logic/dao/PlayerManager.java | 12 ++++++++++++ .../java/com/ljsd/jieling/logic/dao/UserManager.java | 11 ++++++----- 3 files changed, 24 insertions(+), 7 deletions(-) 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 341513e9d..04c46548a 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/LoginRequestHandler.java @@ -73,8 +73,12 @@ public class LoginRequestHandler extends BaseHandler { //登陆注册入内存 - User user = UserManager.userLogin(userId,loginRequest.getOpenId()); - user.getPlayerInfoManager().setOpenId(loginRequest.getOpenId()); + String openIdFront = loginRequest.getOpenId(); + String[] split = openIdFront.split("\\."); + String openId = split[0]; + String chanel = split[1]; + + User user = UserManager.userLogin(userId,openId,chanel); String newToken = UserManager.getNewToken(userId); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java index 84d809656..9848d6810 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java @@ -80,6 +80,8 @@ public class PlayerManager extends MongoBase { private int sendDays; + private String channel; + private Map onlineTimeOfDay = new HashMap<>(); // 20190808 public PlayerManager(){ @@ -464,6 +466,16 @@ public class PlayerManager extends MongoBase { updateString("onlineTimeOfDay", this.onlineTimeOfDay); } + + public String getChannel() { + return channel; + } + + public void setChannel(String channel) { + updateString("channel", this.channel); + this.channel = channel; + } + public Map getOnlineTimeOfDay() { return onlineTimeOfDay; } 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 c3dd4b4e9..3f43c95aa 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 @@ -31,12 +31,12 @@ public class UserManager { return userMap.containsKey(uid); } - public static User userLogin(int uid,String openId) throws Exception { + public static User userLogin(int uid,String openId,String channel) throws Exception { User user = null; if (!UserManager.isUserExist(uid)){ user = MongoUtil.getInstence().getMyMongoTemplate().findById(User.getCollectionName(), uid, User.class); if (user == null) { - user = registerUser(uid,openId); + user = registerUser(uid,openId,channel); } UserManager.addUser(user); }else{ @@ -46,16 +46,16 @@ public class UserManager { } - private static User registerUser(int uid,String openId) throws Exception { + private static User registerUser(int uid,String openId,String channel) throws Exception { User user = new User(uid); - initPlayer(user,openId); + initPlayer(user,openId,channel); UserManager.addUser(user); MongoUtil.getInstence().getMyMongoTemplate().save(user); PlayerLogic.getInstance().sendTestWelfareMail(user,1,1); return user; } - private static void initPlayer(User user,String openId) throws Exception { + private static void initPlayer(User user,String openId,String channel) throws Exception { SGameSetting gameSetting = SGameSetting.getGameSetting(); PlayerManager playerManager = user.getPlayerInfoManager(); long now = TimeUtils.now(); @@ -70,6 +70,7 @@ public class UserManager { playerManager.setSendDays(1); playerManager.updateVipInfo(user,0); playerManager.setRechargeInfo(new RechargeInfo()); + playerManager.setChannel(channel); playerManager.setHeadFrame(SGameSetting.getGameSetting().getDefaultPicture()); SPlayerLevelConfig sPlayerLevelConfig = SPlayerLevelConfig.getsPlayerLevelConfigMap().get(1); playerManager.setMaxStamina(sPlayerLevelConfig.getMaxEnergy());