Пример #1
0
    /// <summary>
    /// 赋值每局信息
    /// </summary>
    /// <param name="index"></param>
    public void InitFrameDetails(int index)
    {
        Newss_Pel_timeTxt = Info_FrameDetails.transform.Find("Time").GetComponent <Text>();
        for (int i = 0; i < 4; i++)
        {
            Newss_Pel_headIge[i]  = Info_FrameDetails.transform.Find("hard" + (i + 1) + "/head").GetComponent <Image>();
            Newss_Pel_scoreTxt[i] = Info_FrameDetails.transform.Find("hard" + (i + 1) + "/score").GetComponent <Text>();
            zhuang[i]             = Info_FrameDetails.transform.Find("hard" + (i + 1) + "/zhuang").gameObject;
        }
        playbacks_Btn = Info_FrameDetails.transform.Find("playback_Btn").GetComponent <Button>();



        Newss_Pel_timeTxt.text = index + 1 + "/" + GameOperationProcesss.Count;
        zhuang[GameOperationProcesss[index].gameOperationInfo[0].OperationFW - 1].SetActive(true);
        var jsInfo = ProtobufUtility.DeserializeProtobuf <ReturnJS>(GameOperationProcesss[index].JieSuanInfo);

        for (int i = 0; i < userRecords[keyTemp].recordUserInfo.Count; i++)
        {
            Newss_Pel_headIge[i].transform.parent.gameObject.SetActive(true);
            LoadImage.Instance.LoadPicture(userRecords[keyTemp].recordUserInfo[i].headimg, Newss_Pel_headIge[i]);
            Newss_Pel_scoreTxt[i].text = jsInfo.js[i].FS.ToString();
        }
        var time = TimeToLong.ConvertIntDateTime(userRecords[keyTemp].CreateDate);

        timeTxt.text = time.Year + "-" + time.Month + "-" + time.Day + "\n" + time.Hour.ToString().PadLeft(2, '0') + ":" + time.Minute.ToString().PadLeft(2, '0');
        rule.text    = hall.RoomInfo(userRecords[keyTemp].RoomMsg);
        playbacks_Btn.onClick.AddListener(delegate { GamePlayback(GameOperationProcesss[index]); });
    }
Пример #2
0
    /// <summary>
    /// 圈子用户战绩查看
    /// </summary>
    void ShowPengYQUserExploits()
    {
        Debug.Log("圈子战绩");
        Transform tf = PengYQUserExploits_Pel.transform.Find("Scroll View/Viewport/Content/QuanZi");

        Clear(tf.parent);
        int index = 0;

        PengYQUserExploits_Pel.transform.Find("bgLogo").gameObject.SetActive(true);
        foreach (var item in GameInfo.returnUserRecord.userRecord)
        {
            PengYQUserExploits_Pel.transform.Find("bgLogo").gameObject.SetActive(false);
            Transform tf1  = Instantiate(tf, tf.parent) as Transform;
            var       time = TimeToLong.ConvertIntDateTime(item.CreateDate);
            tf1.Find("time").GetComponent <Text>().text  = "时间:" + time.Month + "/" + time.Day + " " + time.Hour.ToString().PadLeft(2, '0') + ":" + time.Minute.ToString().PadLeft(2, '0');
            tf1.Find("index").GetComponent <Text>().text = "序号:" + ++index;
            for (int i = 0; i < item.recordUserInfo.Count; i++)
            {
                tf1.Find("hard" + (i + 1)).gameObject.SetActive(true);

                tf1.Find("hard" + (i + 1) + "/UserId").GetComponent <Text>().text   = item.recordUserInfo[i].UserID.ToString();
                tf1.Find("hard" + (i + 1) + "/UserName").GetComponent <Text>().text = item.recordUserInfo[i].nickname;
                tf1.Find("hard" + (i + 1) + "/Score").GetComponent <Text>().text    = int.Parse(item.recordUserInfo[i].Score) >= 0 ? "<color=green>+" + item.recordUserInfo[i].Score + "</color>" : "<color=red>" + item.recordUserInfo[i].Score + "</color>";//if (int.Parse(item.recordUserInfo[i].Score) >= 0) { } ? "<color=lime>充足</color>" : "<color=red>不足</color>");
                LoadImage.Instance.LoadPicture(item.recordUserInfo[i].headimg, tf1.Find("hard" + (i + 1) + "/head").GetComponent <Image>());
            }
        }
        PengYQUserExploits_Pel.transform.Find("Scroll View").GetComponent <ScrollRectControl>().InitScrollRect(1, delegate
        {
            SendGetUserRecord();
        });
        GameInfo.returnUserRecord = null;
        GameInfo.isPYQExploits    = false;
    }
Пример #3
0
    /// <summary>
    /// 赋值每大局信息
    /// </summary>
    /// <param name="key"></param>
    public void  InitFrame(string key)
    {
        News_Pel_timeTxt = Info_Frame.transform.Find("Time").GetComponent <Text>();
        for (int i = 0; i < 4; i++)
        {
            News_Pel_headIge[i]  = Info_Frame.transform.Find("hard" + (i + 1) + "/head").GetComponent <Image>();
            News_Pel_scoreTxt[i] = Info_Frame.transform.Find("hard" + (i + 1) + "/score").GetComponent <Text>();
            FangzhuGo[i]         = Info_Frame.transform.Find("hard" + (i + 1) + "/Fangzhu").gameObject;
        }
        RoomInfoTxt  = Info_Frame.transform.Find("RoomInfo").GetComponent <Text>();
        playback_Btn = Info_Frame.transform.Find("playback_Btn").GetComponent <Button>();



        var time = TimeToLong.ConvertIntDateTime(userRecords[key].CreateDate);

        News_Pel_timeTxt.text = time.Year + "-" + time.Month + "-" + time.Day + "\n" + time.Hour.ToString().PadLeft(2, '0') + ":" + time.Minute.ToString().PadLeft(2, '0');
        for (int i = 0; i < userRecords[key].recordUserInfo.Count; i++)
        {
            News_Pel_headIge[i].transform.parent.gameObject.SetActive(true);
            LoadImage.Instance.LoadPicture(userRecords[key].recordUserInfo[i].headimg, News_Pel_headIge[i]);
            News_Pel_scoreTxt[i].text = userRecords[key].recordUserInfo[i].Score;
            if (userRecords[key].recordUserInfo[i].UserID == userRecords[key].UserID)
            {
                FangzhuGo[i].SetActive(true);
            }
        }
        RoomInfoTxt.text = hall.RoomInfo(userRecords[key].RoomMsg);
        playback_Btn.onClick.AddListener(delegate { OnSendGetUserGamePlayback(key); });
    }
Пример #4
0
    /// <summary>
    /// 圈主查看申请
    /// </summary>
    void ShowPengYQApply()
    {
        Transform tf = PengYQApply_Pel.transform.Find("Scroll View/Viewport/Content/QuanZi");

        Clear(tf.parent);
        PengYQApply_Pel.transform.Find("bgLogo").gameObject.SetActive(true);
        foreach (var item in GameInfo.returnGroupApplyInfo.GroupApplyInfoList.OrderByDescending(w => w.ApplyDateTime))
        {
            PengYQApply_Pel.transform.Find("bgLogo").gameObject.SetActive(false);
            Transform tf1 = Instantiate(tf, tf.parent) as Transform;
            //tf1.gameObject.SetActive(true);
            tf1.Find("UserName").GetComponent <Text>().text = "用户名:" + item.PlayerInfo[GameInfo.returnGroupApplyInfo.GroupApplyInfoList.IndexOf(item)].NickName;
            tf1.Find("UserId").GetComponent <Text>().text   = "用户ID:" + item.PlayerInfo[GameInfo.returnGroupApplyInfo.GroupApplyInfoList.IndexOf(item)].GroupUserID.ToString();
            tf1.name = item.PlayerInfo[GameInfo.returnGroupApplyInfo.GroupApplyInfoList.IndexOf(item)].GroupUserID.ToString();
            tf1.Find("Time").GetComponent <Text>().text = "申请时间:" + TimeToLong.ConvertIntDateTime(item.ApplyDateTime).ToShortDateString().ToString();

            LoadImage.Instance.LoadPicture(item.PlayerInfo[GameInfo.returnGroupApplyInfo.GroupApplyInfoList.IndexOf(item)].picture, tf1.Find("hard/head").GetComponent <Image>());

            if (item.ApplyStatus == 4)
            {
                tf1.transform.Find("ConsentBtn/Text").GetComponent <Text>().text = "同意退出";
                tf1.transform.Find("RejectBtn/Text").GetComponent <Text>().text  = "拒绝退出";
                tf1.transform.Find("ConsentBtn").GetComponent <Button>().onClick.AddListener(delegate { SendChangeApplyStatus(5, long.Parse(tf1.name)); SendApplyRecord(groupID); SendGroupUsersManager(GameInfo.OpenID, GameInfo.unionid, groupID); });
                tf1.transform.Find("RejectBtn").GetComponent <Button>().onClick.AddListener(delegate { SendChangeApplyStatus(6, long.Parse(tf1.name)); SendApplyRecord(groupID); SendGroupUsersManager(GameInfo.OpenID, GameInfo.unionid, groupID); });
            }
            else
            {
                tf1.transform.Find("ConsentBtn").GetComponent <Button>().onClick.AddListener(delegate { SendChangeApplyStatus(1, long.Parse(tf1.name)); SendApplyRecord(groupID); SendGroupUsersManager(GameInfo.OpenID, GameInfo.unionid, groupID); });
                tf1.transform.Find("RejectBtn").GetComponent <Button>().onClick.AddListener(delegate { SendChangeApplyStatus(2, long.Parse(tf1.name)); SendApplyRecord(groupID); SendGroupUsersManager(GameInfo.OpenID, GameInfo.unionid, groupID); });
            }
        }
        PengYQApply_Pel.transform.Find("Scroll View").GetComponent <ScrollRectControl>().InitScrollRect(1, delegate { SendApplyRecord(groupID); Debug.Log(groupID); });
        GameInfo.returnGroupApplyInfo = null;
    }
Пример #5
0
        public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo)
        {
            var sendData = SendGroupInfoByGroupID.ParseFrom(requestInfo.Body);
            var userInfo = RedisUtility.Get <RedisUserInfoModel>(RedisUtility.GetKey(GameInformationBase.COMMUNITYUSERINFO, sendData.Openid, sendData.Unionid));

            if (userInfo == null || !userInfo.GroupID.Any(w => w == sendData.GroupID))
            {
                session.Close();
                return;
            }
            GroupInfoDAL groupInfoDAL    = new GroupInfoDAL();
            var          groupInfo       = groupInfoDAL.GetGroupInfoByGroupID(sendData.GroupID, userInfo.Type);
            var          returnGroupInfo = ReturnGroupInfoByGroupID.CreateBuilder();

            if (groupInfo != null)
            {
                var data = returnGroupInfo.SetStatus(1).SetCreateTime(TimeToLong.ConvertDateTimeInt(groupInfo.CreateTime)).SetGroupID(groupInfo.GroupID)
                           .SetGroupName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(groupInfo.GroupName))).SetNikeName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(groupInfo.NikeName))).SetCreateUserID(groupInfo.CreateUserID)
                           .SetGroupNumberPeople(groupInfoDAL.GetGroupPeopleNumber(sendData.GroupID)).Build().ToByteArray();
                session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1033, data.Length, requestInfo.MessageNum, data)));
            }
            else
            {
                var data = returnGroupInfo.SetStatus(0).Build().ToByteArray();
                session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1033, data.Length, requestInfo.MessageNum, data)));
            }
        }
Пример #6
0
    /// <summary>
    /// 显示朋友圈大厅
    /// </summary>
    void ShowPengYQLobby()
    {
        Transform tf = PengYQLobby_Pel.transform.Find("Scroll View/Viewport/Content/QuanZi");

        Clear(tf.parent);
        PengYQLobby_Pel.transform.Find("bgLogo").gameObject.SetActive(true);
        foreach (var item in GameInfo.returnLobbyInfo.RoomListInfo)
        {
            PengYQLobby_Pel.transform.Find("bgLogo").gameObject.SetActive(false);
            Transform tf1 = Instantiate(tf, tf.parent) as Transform;
            //tf1.gameObject.SetActive(true);
            for (int i = 0; i < item.room_peo; i++)
            {
                tf1.Find("hard" + (i + 1)).gameObject.SetActive(true);
                if (i < item.PlayerList.Count)
                {
                    LoadImage.Instance.LoadPicture(item.PlayerList[i].picture, tf1.Find("hard" + (i + 1) + "/head").GetComponent <Image>());
                }
            }
            tf1.Find("roomId").GetComponent <Text>().text = "房间号:" + item.roomID.ToString();
            tf1.name = item.roomID.ToString();

            var time = TimeToLong.ConvertIntDateTime(item.CreateDate);
            tf1.Find("Time").GetComponent <Text>().text = "创建时间:" + time.Month + "/" + time.Day + " " + time.Hour.ToString().PadLeft(2, '0') + ":" + time.Minute.ToString().PadLeft(2, '0');


            ReturnRoomMsg msg = new ReturnRoomMsg();
            msg.is_benji      = item.is_benji;
            msg.is_shangxiaji = item.is_shangxiaji;
            msg.is_wgj        = item.is_wgj;
            msg.is_xinqiji    = item.is_xinqiji;
            msg.is_lianzhuang = item.is_lianzhuang;
            msg.is_yikousan   = item.is_yikousan;
            msg.Is_yuanque    = item.IsYuanQue;
            msg.QuickCard     = item.QuickCard;

            tf1.Find("method").GetComponent <Text>().text = "房间规则:" + hall.RoomInfo(msg);
            if (item.room_peo > item.PlayerList.Count)
            {
                tf1.Find("JoinRoomBtn").GetComponent <Button>().onClick.AddListener(delegate { enterRoom.gameObject.SetActive(true); enterRoom.roomidStr = tf1.name; GameInfo.GroupID = groupInfo.GroupID; enterRoom.OnEnterRoomClick(); });
                tf1.SetSiblingIndex(1);
            }
            else
            {
                tf1.Find("JoinRoomBtn").gameObject.SetActive(false);
                tf1.SetSiblingIndex(tf.parent.childCount - 1);
            }
        }
        PengYQLobby_Pel.transform.Find("Name").GetComponent <Text>().text    = "圈名:" + groupInfo.GroupName;
        PengYQLobby_Pel.transform.Find("QuanHao").GetComponent <Text>().text = "圈号:" + groupInfo.GroupID.ToString();
        //PengYQLobby_Pel.transform.Find("Intro").GetComponent<Text>().text = "圈子简介:\n\t\t" + groupInfo.GroupIntroduction;
        //PengYQLobby_Pel.transform.Find("LookInfoBtn").gameObject.SetActive(!groupInfo.IsGroupLord);
        PengYQInfo_Pel.transform.Find("Info_Pel/QuitBtn").gameObject.SetActive(!groupInfo.IsGroupLord);
        PengYQLobby_Pel.transform.Find("Scroll View").GetComponent <ScrollRectControl>().InitScrollRect(1, delegate { SendLobbyInfo(groupInfo.GroupID); Debug.Log(groupInfo.GroupID); });
        GameInfo.returnLobbyInfo = null;
    }
Пример #7
0
    /// <summary>
    /// 显示申请记录
    /// </summary>
    void ShowPengYQApplyRecord()
    {
        Transform tf = PengYQApplyRecord_Pel.transform.Find("Scroll View/Viewport/Content/QuanZi");

        Clear(tf.parent);
        PengYQApplyRecord_Pel.transform.Find("bgLogo").gameObject.SetActive(true);
        foreach (var item in GameInfo.returnGroupApplyInfo.GroupApplyInfoList.OrderByDescending(w => w.ApplyDateTime))
        {
            PengYQApplyRecord_Pel.transform.Find("bgLogo").gameObject.SetActive(false);
            Transform tf1 = Instantiate(tf, tf.parent) as Transform;
            //tf1.gameObject.SetActive(true);
            tf1.Find("UserName").GetComponent <Text>().text = "圈名:" + item.GroupName;
            tf1.Find("UserId").GetComponent <Text>().text   = "圈号:" + item.GroupID.ToString();
            tf1.Find("Time").GetComponent <Text>().text     = "申请时间:" + TimeToLong.ConvertIntDateTime(item.ApplyDateTime).ToShortDateString().ToString();
            tf1.Find("State").GetComponent <Text>().text    = item.ApplyStatus == 0 ? "申请中": item.ApplyStatus == 1 ? "申请通过" : "申请拒绝";
        }
        PengYQApplyRecord_Pel.transform.Find("Scroll View").GetComponent <ScrollRectControl>().InitScrollRect(1, delegate { SendApplyRecord(); });
        GameInfo.returnGroupApplyInfo = null;
    }
Пример #8
0
    /// <summary>
    /// 显示朋友圈界面
    /// </summary>
    void ShowPengYouQuan()
    {
        Transform tf = PengYQMain_Pel.transform.Find("Scroll View/Viewport/Content/QuanZi");

        dicTemp.Clear();
        Clear(tf.parent);
        PengYQMain_Pel.transform.Find("bgLogo").gameObject.SetActive(true);
        foreach (var item in GameInfo.returnGroupInfo.groupInfo)
        {
            PengYQMain_Pel.transform.Find("bgLogo").gameObject.SetActive(false);
            Transform tf1 = Instantiate(tf, tf.parent) as Transform;
            //tf1.gameObject.SetActive(true);
            tf1.name = item.GroupID.ToString();
            tf1.Find("Name").GetComponent <Text>().text    = "圈名:" + item.GroupName;
            tf1.Find("QuanHao").GetComponent <Text>().text = "圈号:" + item.GroupID.ToString();
            Debug.Log(TimeToLong.ConvertIntDateTime(item.CreateTime).Date.ToString());
            tf1.Find("Time").GetComponent <Text>().text = "创建时间:" + TimeToLong.ConvertIntDateTime(item.CreateTime).ToShortDateString().ToString();
            //tf1.Find("Intro").GetComponent<Text>().text = "圈子简介:\n\t\t" + item.GroupIntroduction;
            tf1.Find("FKstate").GetComponent <Text>().text = "房卡状态:" + (item.RoomCardCounts > 0 ? "<color=lime>充足</color>" : "<color=red>不足</color>");
            if (item.IsGroupLord)
            {
                tf1.Find("QZManagerBtn").GetComponent <Button>().onClick.AddListener(delegate { SendGroupUsersManager(GameInfo.OpenID, GameInfo.unionid, long.Parse(tf1.name)); groupID = long.Parse(tf1.name); });
                // tempAction = delegate { SendGroupUsersManager(GameInfo.OpenID, GameInfo.unionid, long.Parse(tf1.name)); };
                tf1.SetSiblingIndex(1);
            }
            else
            {
                tf1.Find("QZManagerBtn").gameObject.SetActive(false);
            }
            //dicTemp.Add(tf1.name, item);
            dicTemp[tf1.name] = item;
            tf1.Find("CreateRoomBtn").GetComponent <Button>().onClick.AddListener(delegate { GameInfo.GroupID = long.Parse(tf1.name); });
            tf1.Find("EnterLobbiesBtn").GetComponent <Button>().onClick.AddListener(delegate {
                groupInfo = dicTemp[tf1.name];
                SendLobbyInfo(long.Parse(tf1.name));
                // tempAction = delegate { SendLobbyInfo(long.Parse(tf1.name)); };
            });
        }
        PengYQMain_Pel.transform.Find("Scroll View").GetComponent <ScrollRectControl>().InitScrollRect(1, delegate { SendGroupInfo(); });
        GameInfo.returnGroupInfo = null;
    }
Пример #9
0
        public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo)
        {
            var sendLobbyInfo = SendLobbyInfo.ParseFrom(requestInfo.Body);

            DAL.DAL.RoomInfoDAL roomInfoDAL = new DAL.DAL.RoomInfoDAL();
            byte[] returnLobbyInfoData      = null;
            var    returnLobbyInfo          = ReturnLobbyInfo.CreateBuilder();
            //var roomInfo = RoomInfo.CreateBuilder();
            var roomIDList = roomInfoDAL.GetroomInfoByGroupID(sendLobbyInfo.GroupID);

            foreach (var item in roomIDList)
            {
                //获取房间信息
                RedisGameRoomInfo redisRoomInfo = RedisUtility.Get <RedisGameRoomInfo>(RedisUtility.GetKey(GameInformationBase.COMMUNITYROOMINFO, item.ToString(), item.ToString()));


                if (redisRoomInfo != null)
                {
                    var roomInfo = LobbyRoomInfo.CreateBuilder();
                    roomInfo.SetRoomID(redisRoomInfo.room.RoomID).SetCreateDate(TimeToLong.ConvertDateTimeInt(redisRoomInfo.room.CreateDate)).SetIsWgj(redisRoomInfo.room.is_wgj ? 1 : 0).SetIsXinqiji(redisRoomInfo.room.is_xinqiji ? 1 : 0)
                    .SetIsShangxiaji(redisRoomInfo.room.is_shangxiaji ? 1 : 0).SetIsBenji(redisRoomInfo.room.is_benji ? 1 : 0).SetIsYikousan(redisRoomInfo.room.is_yikousan ? 1 : 0).SetIsLianzhuang(redisRoomInfo.room.is_lianz ? 1 : 0)
                    .SetRoomPeo(redisRoomInfo.room.room_peo).SetCount(redisRoomInfo.room.count).SetQuickCard(redisRoomInfo.room.QuickCard ? 1 : 0).SetIsYuanQue(redisRoomInfo.room.IsYuanQue ? 1 : 0);



                    //获取房间里用户信息
                    foreach (var userOpenid in redisRoomInfo.room.listOpenid)
                    {
                        var player = Player.CreateBuilder();
                        RedisUserInfoModel user = RedisUtility.Get <RedisUserInfoModel>(RedisUtility.GetKey(GameInformationBase.COMMUNITYUSERINFO, userOpenid, string.Empty));
                        player.SetGroupUserID(user.UserID).SetNickName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(user.Nickname))).SetPicture(user.Headimg);
                        roomInfo.AddPlayerList(player);
                    }
                    returnLobbyInfo.AddRoomListInfo(roomInfo);
                }
            }
            returnLobbyInfoData = returnLobbyInfo.Build().ToByteArray();
            session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1081, returnLobbyInfoData.Length, requestInfo.MessageNum, returnLobbyInfoData)));
        }
Пример #10
0
    /// <summary>
    /// 显示开房记录
    /// </summary>
    void ShowPengYQCreateRommRecord()
    {
        Transform tf = PengYQCreateRommRecord_Pel.transform.Find("Scroll View/Viewport/Content/QuanZi");

        Clear(tf.parent);
        PengYQCreateRommRecord_Pel.transform.Find("bgLogo").gameObject.SetActive(true);
        foreach (var item in GameInfo.returnRecordList.CreateRommRecordList.OrderByDescending(w => w.CreateDate))
        {
            PengYQCreateRommRecord_Pel.transform.Find("bgLogo").gameObject.SetActive(false);
            Transform tf1 = Instantiate(tf, tf.parent) as Transform;
            //tf1.gameObject.SetActive(true);
            var time = TimeToLong.ConvertIntDateTime(item.CreateDate);
            tf1.Find("Time").GetComponent <Text>().text         = "创建时间:" + time.Month + "/" + time.Day + " " + time.Hour.ToString().PadLeft(2, '0') + ":" + time.Minute.ToString().PadLeft(2, '0');
            tf1.Find("CreateUserID").GetComponent <Text>().text = "创建用户ID:" + item.CreateUserID.ToString();
            tf1.Find("GroupID").GetComponent <Text>().text      = "圈号:" + item.GroupID.ToString();
            tf1.Find(" RoomID").GetComponent <Text>().text      = "房间号:" + item.RoomID.ToString();
            tf1.Find("UseRoomCard").GetComponent <Text>().text  = "消耗房卡:" + item.UseRoomCard.ToString();
        }
        PengYQCreateRommRecord_Pel.transform.Find("Scroll View").GetComponent <ScrollRectControl>().InitScrollRect(1, delegate {
            SendGroupUsersManager(GameInfo.OpenID, GameInfo.unionid, groupID, 0, userID);
            Debug.Log(userID);
        });
        GameInfo.returnRecordList = null;
    }
Пример #11
0
        public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo)
        {
            var sendAgentGetGroupInfo = SendAgentGetGroupInfo.ParseFrom(requestInfo.Body);

            GroupInfoDAL groupInfoDAL = new GroupInfoDAL();


            DAL.Model.GroupInfo groupInfoModel = groupInfoDAL.GetGroupInfoByGroupID(sendAgentGetGroupInfo.GroupID, 0);

            if (groupInfoModel != null)
            {
                var returnDate = ReturnAgentGetGroupInfo.CreateBuilder().SetGroupID(sendAgentGetGroupInfo.GroupID).
                                 SetGroupName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(groupInfoModel.GroupName))).SetNikeName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(groupInfoModel.GroupName))).
                                 SetRoomCardCounts(RoomCardUtility.GetRoomCard(sendAgentGetGroupInfo.UserID)).
                                 SetCreateTime(TimeToLong.ConvertDateTimeInt(groupInfoModel.CreateTime)).
                                 Build().ToByteArray();
                session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1106, returnDate.Length, requestInfo.MessageNum, returnDate)));
            }
            else
            {
                var returnMessage = ReturnMessgae.CreateBuilder().SetStatue(0).SetMessage("圈子不存在").Build().ToByteArray();
                session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1104, returnMessage.Length, requestInfo.MessageNum, returnMessage)));
            }
        }
Пример #12
0
        public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo)
        {
            var             userInfo = SendGetUserRecord.ParseFrom(requestInfo.Body);
            RedisLoginModel olduser  = RedisUtility.Get <RedisLoginModel>(RedisUtility.GetKey(GameInformationBase.COMMUNITYUSERLIST, userInfo.Openid, userInfo.Unionid));

            if (olduser == null)
            {
                return;
            }
            var list        = new userRecordLOGDAL().Get48hourInfoByUserID(userInfo.UserID, userInfo.HasGroupID? userInfo.GroupID:0);
            var userinfoDAL = new mjuserinfoDAL();

            var  returnUserRecord = ReturnUserRecord.CreateBuilder();
            long userid;

            foreach (var item in list)
            {
                var userRecord = UserRecord.CreateBuilder();
                userRecord.SetRoomInfoID(item.RoomInfoID);
                userRecord.SetCreateDate(TimeToLong.ConvertDateTimeInt(item.CreateDate));
                userRecord.SetEndTime(TimeToLong.ConvertDateTimeInt(item.EndTime));
                userRecord.SetUserID(item.CreateUserID);//需要显示房主标签
                userRecord.SetRoomMsg(
                    ReturnRoomMsg.CreateBuilder()
                    .SetCount(item.RoomNumber)
                    .SetIsBenji(item.IsBenJi)
                    .SetIsLianzhuang(item.CountPointsType == 3 ? 1 : 0)
                    .SetIsShangxiaji(item.IsSangXiaJi)
                    .SetIsWgj(item.IsWGJ)
                    .SetIsXinqiji(item.IsXinQiJi)
                    .SetIsYikousan(item.CountPointsType == 1 ? 1 : 0)
                    .SetIsYuanque(item.IsYuanQue)
                    .SetQuickCard(item.QuickCard)
                    .SetRoomPeo(item.RoomPeo)
                    );
                foreach (var userWinLose in item.UserWinLose.Split('|'))
                {
                    long     userID = 0;
                    string[] info   = userWinLose.Split(',');
                    if (long.TryParse(info[0], out userID))
                    {
                        if (userRecord.RecordUserInfoList.Any(w => w.UserID == userID))
                        {
                            var userInfoData = userRecord.RecordUserInfoList.First(w => w.UserID == userID);
                            userRecord.AddRecordUserInfo(RecordUserInfo.CreateBuilder()
                                                         .SetHeadimg(userInfoData.Headimg)
                                                         .SetNickname(HttpUtility.UrlDecode(HttpUtility.UrlDecode(userInfoData.Nickname)))
                                                         .SetOpenid(userInfoData.Openid)
                                                         .SetScore(info[1])
                                                         .SetSex(userInfoData.Sex)
                                                         .SetUserID(userInfoData.UserID));
                        }
                        else
                        {
                            var userInfoData = userinfoDAL.GetModel(userID);
                            userRecord.AddRecordUserInfo(RecordUserInfo.CreateBuilder()
                                                         .SetHeadimg(userInfoData.headimg)
                                                         .SetNickname(HttpUtility.UrlDecode(HttpUtility.UrlDecode(userInfoData.nickname)))
                                                         .SetOpenid(userInfoData.openid)
                                                         .SetScore(info[1])
                                                         .SetSex(userInfoData.sex.Value)
                                                         .SetUserID(userInfoData.id));
                        }
                    }
                }
                returnUserRecord.AddUserRecord(userRecord);
            }
            var data = returnUserRecord.Build().ToByteArray();

            session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 9002, data.Length, requestInfo.MessageNum, data)));
        }
Пример #13
0
        public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo)
        {
            List <GroupInfo> groupInfoList = new List <GroupInfo>();
            var requestGroupInfo           = SendGroupInfo.ParseFrom(requestInfo.Body);
            RedisUserInfoModel user        = RedisUtility.Get <RedisUserInfoModel>(RedisUtility.GetKey(GameInformationBase.COMMUNITYUSERINFO, requestGroupInfo.Openid, requestGroupInfo.Unionid));

            if (user == null)
            {
                session.Logger.Debug(string.Format("缓存无此用户{0}", string.IsNullOrEmpty(requestGroupInfo.Openid) ? "用户openid为空" : ""));
                return;
            }
            GroupInfoDAL groupInfoDAL    = new GroupInfoDAL();
            var          list            = groupInfoDAL.GetGroupIDListByUserID(user.UserID, user.Type);
            var          returnGroupInfo = ReturnGroupInfo.CreateBuilder();
            var          GroupInfodata   = GroupInfo.CreateBuilder();

            Byte[] returnGroupInfoData = null;
            if (list == null || list.Count == 0)
            {
                returnGroupInfoData = returnGroupInfo.Build().ToByteArray();
                session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1031, returnGroupInfoData.Length, requestInfo.MessageNum, returnGroupInfoData)));
            }
            else
            {
                foreach (var GroupID in list.Distinct())
                {
                    DAL.Model.GroupInfo groupInfoModel = groupInfoDAL.GetGroupInfoByGroupID(GroupID, user.Type);
                    if (groupInfoModel != null)
                    {
                        if (groupInfoModel.CreateUserID == user.UserID)
                        {
                            GroupInfodata.SetGroupID(GroupID).SetGroupIntroduction(groupInfoModel.GroupIntroduction ?? "").SetGroupName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(groupInfoModel.GroupName))).SetNikeName(groupInfoModel.GroupName).SetRoomCardCounts(RoomCardUtility.GetRoomCard(groupInfoModel.CreateUserID)).SetCreateTime(TimeToLong.ConvertDateTimeInt(groupInfoModel.CreateTime)).SetIsGroupLord(true);
                            returnGroupInfo.AddGroupInfo(GroupInfodata);
                            //data.SetGroupInfo(1,GroupInfo)
                        }
                        else
                        {
                            GroupInfodata.SetGroupID(GroupID).SetGroupIntroduction(groupInfoModel.GroupIntroduction ?? "").SetGroupName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(groupInfoModel.GroupName))).SetNikeName(groupInfoModel.GroupName).SetRoomCardCounts(RoomCardUtility.GetRoomCard(groupInfoModel.CreateUserID)).SetCreateTime(TimeToLong.ConvertDateTimeInt(groupInfoModel.CreateTime)).SetIsGroupLord(false);
                            returnGroupInfo.AddGroupInfo(GroupInfodata);
                        }
                    }
                }
                returnGroupInfoData = returnGroupInfo.Build().ToByteArray();
                session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1031, returnGroupInfoData.Length, requestInfo.MessageNum, returnGroupInfoData)));
            }
        }
Пример #14
0
        public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo)
        {
            GroupInfoDAL groupInfoDAL = new GroupInfoDAL();


            var sendApplyRecord = SendApplyRecord.ParseFrom(requestInfo.Body);

            //       var player = Player.CreateBuilder();
            var groupApplyInfo       = GroupApplyInfo.CreateBuilder();
            var returnGroupApplyInfo = ReturnGroupApplyInfo.CreateBuilder();

            Byte[] returnData = null;


            List <DAL.Model.ApplyRecord> list = null;

            if (sendApplyRecord.HasGroupID)
            {
                list = groupInfoDAL.GroupApplyRecord(sendApplyRecord.GroupID);
                if (list.Count == 0)
                {
                    returnData = returnGroupApplyInfo.Build().ToByteArray();
                    session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1061, returnData.Length, requestInfo.MessageNum, returnData)));
                }
                else
                {
                    foreach (var item in list)
                    {
                        DAL.Model.mjuserinfo userinfo = new DAL.DAL.mjuserinfoDAL().GetModel(item.ApplyJoinUserID);
                        var player = Player.CreateBuilder().SetGroupUserID(userinfo.id).SetNickName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(userinfo.nickname))).SetPicture(userinfo.headimg);
                        groupApplyInfo.SetGroupID(item.GroupID).SetApplyStatus(item.ApplyStatus).AddPlayerInfo(player).SetApplyDateTime(TimeToLong.ConvertDateTimeInt(item.ApplyDateTime)).SetGroupName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(item.GroupName)));
                        //       returnGroupApplyInfo.AddGroupApplyInfoList(groupApplyInfo);
                        returnGroupApplyInfo.AddGroupApplyInfoList(groupApplyInfo);
                    }
                    //      groupApplyInfo.SetGroupID(item.GroupID).SetApplyStatus(item.ApplyStatus).AddPlayerInfo(player).SetApplyDateTime(TimeToLong.ConvertDateTimeInt(item.ApplyDateTime)).SetGroupName(item.GroupName);

                    returnData = returnGroupApplyInfo.Build().ToByteArray();
                    session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1061, returnData.Length, requestInfo.MessageNum, returnData)));
                    //session.Close();
                }
            }
            else
            {
                list = groupInfoDAL.PlayerApplyRecord(sendApplyRecord.UserID);

                if (list.Count == 0)
                {
                    returnData = returnGroupApplyInfo.Build().ToByteArray();
                    session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1061, returnData.Length, requestInfo.MessageNum, returnData)));
                }
                else
                {
                    foreach (var item in list)
                    {
                        DAL.Model.mjuserinfo userinfo = new DAL.DAL.mjuserinfoDAL().GetModel(item.ApplyJoinUserID);
                        var player = Player.CreateBuilder().SetGroupUserID(userinfo.id).SetNickName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(userinfo.nickname))).SetPicture(userinfo.headimg);
                        groupApplyInfo.SetGroupID(item.GroupID).SetApplyStatus(item.ApplyStatus).AddPlayerInfo(player).SetApplyDateTime(TimeToLong.ConvertDateTimeInt(item.ApplyDateTime)).SetGroupName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(item.GroupName)));
                        //   returnGroupApplyInfo.AddGroupApplyInfoList(groupApplyInfo);
                        returnGroupApplyInfo.AddGroupApplyInfoList(groupApplyInfo);
                    }

                    returnData = returnGroupApplyInfo.Build().ToByteArray();
                    session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1061, returnData.Length, requestInfo.MessageNum, returnData)));
                }
            }
        }
Пример #15
0
    /// <summary>
    /// 显示朋友圈信息
    /// </summary>
    void ShowPengYQInfo()
    {
        if (GameInfo.returnGroupInfoByGroupID.Status == 0)
        {
            FICWaringPanel._instance.Show("圈子不存在,或者 不是圈子用户,需要刷新圈子信息。");
            return;
        }

        PengYQInfo_Pel.transform.Find("Info_Pel/tag").GetComponent <Text>().text = "圈子号:" + GameInfo.returnGroupInfoByGroupID.GroupID +
                                                                                   "\n圈子名:" + GameInfo.returnGroupInfoByGroupID.GroupName +
                                                                                   "\n创建人:" + GameInfo.returnGroupInfoByGroupID.NikeName +
                                                                                   "\n\n创建时间:" + TimeToLong.ConvertIntDateTime(GameInfo.returnGroupInfoByGroupID.CreateTime).Date +
                                                                                   "\n圈子人数:" + GameInfo.returnGroupInfoByGroupID.GroupNumberPeople;
        GameInfo.returnGroupInfoByGroupID = null;
    }
Пример #16
0
        public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo)
        {
            GroupInfoDAL groupInfoDAL = new GroupInfoDAL();


            var requestUsersManager = SendGroupUsersManager.ParseFrom(requestInfo.Body);
            // RedisUserInfoModel user = RedisUtility.Get<RedisUserInfoModel>(RedisUtility.GetKey(GameInformationBase.COMMUNITYUSERINFO, requestUsersManager.Openid, requestUsersManager.Unionid));
            var nowUser = Gongyong.userlist.First(w => w != null && w.unionid.Equals(requestUsersManager.Unionid));

            if (nowUser == null)
            {
                session.Logger.Debug("管理朋友圈用户 未登录!");
                return;
            }
            var player           = Player.CreateBuilder();
            var returnPlayerList = ReturnPlayerList.CreateBuilder();
            var list             = groupInfoDAL.GetUsersIDListByGroupID(requestUsersManager.GroupID);

            byte[] returnMessage = null;

            var groupInfo = groupInfoDAL.GetGroupInfoByGroupID(requestUsersManager.GroupID, nowUser.Type);

            if (nowUser.Type == 0)
            {
                if (groupInfo.CreateUserID != nowUser.UserID)
                {
                    session.Logger.Debug("管理朋友圈用户不是圈主!");
                    return;
                }
            }
            else if (nowUser.Type == 1)//龙宝用户
            {
                if (!groupInfo.CreateUserUnionID.Equals(nowUser.unionid))
                {
                    session.Logger.Debug("管理朋友圈用户不是圈主!");
                    return;
                }
            }
            //删除用户
            if (requestUsersManager.HasDelByUserID && !requestUsersManager.HasAddUsers)
            {
                if (groupInfo.CreateUserID == requestUsersManager.DelByUserID)
                {
                    returnMessage = ReturnMessgae.CreateBuilder().SetStatue(0).SetMessage("群主不能删除自己").Build().ToByteArray();
                    session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1104, returnMessage.Length, requestInfo.MessageNum, returnMessage)));
                    return;
                }
                else
                {
                    // groupInfoDAL.DelUsersByUserID(requestUsersManager.GroupID, requestUsersManager.DelByUserID);
                    groupInfoDAL.DelUsersByUserIDTransaction(requestUsersManager.GroupID, requestUsersManager.DelByUserID, 3, requestUsersManager.DelByUserID);


                    returnMessage = ReturnMessgae.CreateBuilder().SetStatue(0).SetMessage(string.Format("删除用户{0}成功", requestUsersManager.DelByUserID)).Build().ToByteArray();
                    session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1104, returnMessage.Length, requestInfo.MessageNum, returnMessage)));
                    return;
                }
            }
            //添加用户
            else if (!requestUsersManager.HasDelByUserID && requestUsersManager.HasAddUsers)
            {
                //加入类型,1圈主添加,2申请加入,3推荐加入
                // byte[] returnMessage = null;
                //var groupInfo = groupInfoDAL.GetGroupInfoByGroupID(requestUsersManager.GroupID);
                //if (groupInfo.CreateUserID == requestUsersManager.AddUsers)
                //{
                //    returnMessage = ReturnMessgae.CreateBuilder().SetStatue(0).SetMessage("添加失败").Build().ToByteArray();
                //    session.Send(new ArraySegment<byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1104, returnMessage.Length, requestInfo.MessageNum, returnMessage)));
                //    return;
                //}
                if (new DAL.DAL.mjuserinfoDAL().GetModel(requestUsersManager.AddUsers) != null)
                {
                    var err = groupInfoDAL.AddUserToGroup(requestUsersManager.GroupID, requestUsersManager.AddUsers, 1);

                    if (err == 0)
                    {
                        returnMessage = ReturnMessgae.CreateBuilder().SetStatue(0).SetMessage("添加失败,已存在该用户").Build().ToByteArray();
                        session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1104, returnMessage.Length, requestInfo.MessageNum, returnMessage)));
                    }
                    else
                    {
                        returnMessage = ReturnMessgae.CreateBuilder().SetStatue(1).SetMessage("添加成功").Build().ToByteArray();


                        //添加成狗后把用户丢到RedisUs  避免需重复登陆问题
                        RedisUserInfoModel user = RedisUtility.Get <RedisUserInfoModel>(RedisUtility.GetKey(GameInformationBase.COMMUNITYUSERINFO, requestUsersManager.AddUsers.ToString(), requestUsersManager.AddUsers.ToString()));
                        if (user != null)
                        {
                            user.GroupID.Add((int)requestUsersManager.GroupID);
                            RedisUtility.Set(RedisUtility.GetKey(GameInformationBase.COMMUNITYUSERINFO, user.Openid, user.Unionid), user);
                            var userInfo = Gongyong.userlist.Find(w => w.UserID == user.UserID);
                            if (userInfo != null)
                            {
                                userInfo.GroupID.Add((int)requestUsersManager.GroupID);
                            }
                        }

                        session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1104, returnMessage.Length, requestInfo.MessageNum, returnMessage)));
                    }
                }
                else
                {
                    returnMessage = ReturnMessgae.CreateBuilder().SetStatue(0).SetMessage("无此用户").Build().ToByteArray();
                    session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1104, returnMessage.Length, requestInfo.MessageNum, returnMessage)));
                    return;
                }
                return;
            }
            else if (requestUsersManager.HasCheckRecordByUserID)
            {
                var createRommRecord = CreateRommRecord.CreateBuilder();
                var returnRecordList = ReturnRecordList.CreateBuilder();
                var listRecord       = groupInfoDAL.GetCreateRoomRecord(requestUsersManager.CheckRecordByUserID, requestUsersManager.GroupID);
                foreach (var item in listRecord)
                {
                    createRommRecord.SetGroupID(item.GroupID).SetRoomID(item.RoomID).SetCreateUserID(item.CreateUserID).SetCreateDate(TimeToLong.ConvertDateTimeInt(item.CreateDate)).SetUseRoomCard(item.UseRoomCard);
                    returnRecordList.AddCreateRommRecordList(createRommRecord);
                }

                session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1052, returnRecordList.Build().ToByteArray().Length, requestInfo.MessageNum, returnRecordList.Build().ToByteArray())));
                // session.Close();
                return;
            }

            foreach (var userID in list)
            {
                DAL.Model.mjuserinfo userinfo = new DAL.DAL.mjuserinfoDAL().GetModel(userID);
                if (userinfo == null)
                {
                    groupInfoDAL.DelUsersByUserID(requestUsersManager.GroupID, userID);
                }
                else
                {
                    player.SetGroupUserID(userID).SetNickName(HttpUtility.UrlDecode(HttpUtility.UrlDecode(userinfo.nickname))).SetPicture(userinfo.headimg);
                    returnPlayerList.AddPlayerList(player);
                }
            }

            //返回待审核人数
            int counts = groupInfoDAL.GroupApplyRecord(requestUsersManager.GroupID).Count();

            returnPlayerList.SetApplyUsers(counts);
            var returnPlayerListData = returnPlayerList.Build().ToByteArray();

            session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 1051, returnPlayerListData.Length, requestInfo.MessageNum, returnPlayerListData)));
        }