From fa34c9c8b20c9f5cd2570b071ed08639d104a706 Mon Sep 17 00:00:00 2001 From: sk <123456@qq.com> Date: Fri, 17 May 2024 10:45:12 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=91=E5=AE=9A=E9=82=80=E8=AF=B7=E4=BA=BA?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dbproxy/mq/c_invite.go | 26 +++++++++--------- worldsrv/action_player.go | 54 +++++++++++++++++++------------------- worldsrv/action_welfare.go | 16 +++++------ 3 files changed, 46 insertions(+), 50 deletions(-) diff --git a/dbproxy/mq/c_invite.go b/dbproxy/mq/c_invite.go index f268d8d..8e8664f 100644 --- a/dbproxy/mq/c_invite.go +++ b/dbproxy/mq/c_invite.go @@ -2,8 +2,6 @@ package mq import ( "encoding/json" - "fmt" - "time" "github.com/astaxie/beego/cache" "mongo.games.com/goserver/core/broker" @@ -44,19 +42,19 @@ func init() { return err } - name := fmt.Sprintf("%v", log.InviteSnId) - b := InviteNumCache.Get(name) - n, _ := b.(int32) - if n > 0 { - n++ - } else { - n, err = svc.GetInviteNum(log.Platform, log.InviteSnId) - if err != nil { - logger.Logger.Errorf("BindInviteSnId error:%v", err) - return err - } + //name := fmt.Sprintf("%v", log.InviteSnId) + //b := InviteNumCache.Get(name) + //n, _ := b.(int32) + //if n > 0 { + // n++ + //} else { + n, err := svc.GetInviteNum(log.Platform, log.InviteSnId) + if err != nil { + logger.Logger.Errorf("BindInviteSnId error:%v", err) + return err } - InviteNumCache.Put(name, n, int64(time.Hour.Seconds())) + //} + //InviteNumCache.Put(name, n, int64(time.Hour.Seconds())) // 更新绑定数量 RabbitMQPublisher.Send(model.AckBindNum, &model.BindNum{ diff --git a/worldsrv/action_player.go b/worldsrv/action_player.go index cd0d4bb..00219dd 100644 --- a/worldsrv/action_player.go +++ b/worldsrv/action_player.go @@ -1879,33 +1879,6 @@ func CSExchangeChannel(s *netlib.Session, packetid int, data interface{}, sid in return nil } -func init() { - // 用户信息 - common.Register(int(player_proto.PlayerPacketID_PACKET_CS_PLAYERDATA), player_proto.CSPlayerData{}, CSPlayerData) - // 查看别人信息 - common.Register(int(player_proto.PlayerPacketID_PACKET_CS_QUERYPLAYER), player_proto.CSQueryPlayer{}, CSQueryPlayer) - // 修改个人信息 - common.Register(int(player_proto.PlayerPacketID_PACKET_CSSavePlayerInfo), player_proto.CSSavePlayerInfo{}, CSSavePlayerInfo) - // 修改头像url - common.Register(int(player_proto.PlayerPacketID_PACKET_CS_HeadUrl), player_proto.CSHeadUrl{}, CSHeadUrl) - // 获取绑定手机号奖励 - common.Register(int(player_proto.PlayerPacketID_PACKET_CSBindTelInfo), player_proto.CSBindTelInfo{}, CSBindTelInfo) - // 获取短信验证码 - common.Register(int(player_proto.PlayerPacketID_PACKET_CSPlayerSMSCode), player_proto.CSPlayerSMSCode{}, CSPlayerSMSCode) - // 绑定手机号 - common.Register(int(player_proto.PlayerPacketID_PACKET_CSBindTel), player_proto.CSBindTel{}, CSBindTel) - // 获取图片验证码 - common.Register(int(player_proto.PlayerPacketID_PACKET_CS_GETIMAGEVERIFYCODE), player_proto.CSGetImageVerifyCode{}, CSGetImageVerifyCodeLocal) - // 验证图片验证码 - common.Register(int(player_proto.PlayerPacketID_PACKET_CS_ImageVerifyCode), player_proto.CSImageVerifyCode{}, CSImageVerifyCode) - // 查询游戏账变记录 - common.Register(int(player_proto.PlayerPacketID_PACKET_CSBillList), player_proto.CSBillList{}, CSBillList) - // 看广告一次 - common.Register(int(player_proto.PlayerPacketID_PACKET_CSADV), player_proto.CSADV{}, CSADV) - // 开启兑换的渠道 - common.Register(int(player_proto.PlayerPacketID_PACKET_CSExchangeChannel), player_proto.CSExchangeChannel{}, CSExchangeChannel) -} - func CSPlayerData(s *netlib.Session, packetid int, data interface{}, sid int64) error { logger.Logger.Trace("CSPlayerDataHandler Process recv ", data) cspl, ok := data.(*player_proto.CSPlayerData) @@ -2842,3 +2815,30 @@ func CSADV(s *netlib.Session, packetId int, data interface{}, sid int64) error { logger.Logger.Tracef("SCADV %v", ret) return nil } + +func init() { + // 用户信息 + common.Register(int(player_proto.PlayerPacketID_PACKET_CS_PLAYERDATA), player_proto.CSPlayerData{}, CSPlayerData) + // 查看别人信息 + common.Register(int(player_proto.PlayerPacketID_PACKET_CS_QUERYPLAYER), player_proto.CSQueryPlayer{}, CSQueryPlayer) + // 修改个人信息 + common.Register(int(player_proto.PlayerPacketID_PACKET_CSSavePlayerInfo), player_proto.CSSavePlayerInfo{}, CSSavePlayerInfo) + // 修改头像url + common.Register(int(player_proto.PlayerPacketID_PACKET_CS_HeadUrl), player_proto.CSHeadUrl{}, CSHeadUrl) + // 获取绑定手机号奖励 + common.Register(int(player_proto.PlayerPacketID_PACKET_CSBindTelInfo), player_proto.CSBindTelInfo{}, CSBindTelInfo) + // 获取短信验证码 + common.Register(int(player_proto.PlayerPacketID_PACKET_CSPlayerSMSCode), player_proto.CSPlayerSMSCode{}, CSPlayerSMSCode) + // 绑定手机号 + common.Register(int(player_proto.PlayerPacketID_PACKET_CSBindTel), player_proto.CSBindTel{}, CSBindTel) + // 获取图片验证码 + common.Register(int(player_proto.PlayerPacketID_PACKET_CS_GETIMAGEVERIFYCODE), player_proto.CSGetImageVerifyCode{}, CSGetImageVerifyCodeLocal) + // 验证图片验证码 + common.Register(int(player_proto.PlayerPacketID_PACKET_CS_ImageVerifyCode), player_proto.CSImageVerifyCode{}, CSImageVerifyCode) + // 查询游戏账变记录 + common.Register(int(player_proto.PlayerPacketID_PACKET_CSBillList), player_proto.CSBillList{}, CSBillList) + // 看广告一次 + common.Register(int(player_proto.PlayerPacketID_PACKET_CSADV), player_proto.CSADV{}, CSADV) + // 开启兑换的渠道 + common.Register(int(player_proto.PlayerPacketID_PACKET_CSExchangeChannel), player_proto.CSExchangeChannel{}, CSExchangeChannel) +} diff --git a/worldsrv/action_welfare.go b/worldsrv/action_welfare.go index 765dc2c..a9dcdf0 100644 --- a/worldsrv/action_welfare.go +++ b/worldsrv/action_welfare.go @@ -376,6 +376,12 @@ func CSBindInvite(s *netlib.Session, packetid int, data interface{}, sid int64) } } + if p.InviteSnId != 0 { + ret.OpRetCode = welfare.OpResultCode_OPRC_AlreadyBind + send() + return nil + } + task.New(nil, task.CallableWrapper(func(o *basic.Object) interface{} { inviteSnId, err = model.GetSnIdByCode(p.Platform, msg.GetCode()) return nil @@ -387,22 +393,14 @@ func CSBindInvite(s *netlib.Session, packetid int, data interface{}, sid int64) return } - if p.InviteSnId != 0 { - ret.OpRetCode = welfare.OpResultCode_OPRC_AlreadyBind - send() - return - } if inviteSnId == p.SnId { ret.OpRetCode = welfare.OpResultCode_OPRC_BindSelf send() return } + pp := PlayerMgrSington.GetPlayerBySnId(inviteSnId) if pp != nil { - if pp.Platform != p.Platform { - send() - return - } if pp.InviteSnId == p.SnId { ret.OpRetCode = welfare.OpResultCode_OPRC_MyInvite send()