예제 #1
0
        public void CreateGroup(CreateGroupPara para, Action <ResponseEvent> callback)
        {
            GroupPlayerInfo playerInfo = new GroupPlayerInfo
            {
                Id   = RequestHeader.PlayerId,
                Name = para.PlayerInfo.Name,
                CustomGroupPlayerProfile = para.PlayerInfo.CustomGroupPlayerProfile,
                CustomGroupPlayerStatus  = para.PlayerInfo.CustomGroupPlayerStatus
            };

            CreateGroupReq createGroupReq = new CreateGroupReq
            {
                GroupName        = para.GroupName,
                GroupType        = para.GroupType,
                MaxPlayers       = para.MaxPlayers,
                CustomProperties = para.CustomProperties,
                IsForbidJoin     = para.IsForbidJoin,
                IsPersistent     = para.IsPersistent,
                PlayerInfo       = playerInfo,
            };

            Action <ResponseEvent> cb = eve =>
            {
                this.GroupUtil.SaveGroupInfo(eve, ((CreateGroupRsp)eve.Data)?.GroupInfo);
                callback?.Invoke(eve);
            };

            Core.Group.CreateGroup(createGroupReq, cb);
        }
예제 #2
0
        ///////////////////////////////// 请求 //////////////////////////////////
        public string CreateGroup(CreateGroupReq para, Action <ResponseEvent> callback)
        {
            const int subcmd   = (int)ProtoCmd.ECmdCreateGroupReq;
            var       response = new NetResponseCallback(CreateGroupResponse);
            var       seq      = this.Send(para, subcmd, response, callback);

            Debugger.Log("CreateGroup_Para {0} {1}", para, seq);
            return(seq);
        }
예제 #3
0
        public static CreateGroupResp CreateGroup(CreateGroupReq req)
        {
            var ret = Class1.DoHttpRequest("/group", "POST", new Dictionary <string, string> {
                { "access_token", Class1.AccessToken }
            }, JsonConvert.SerializeObject(req));
            var resp = JsonConvert.DeserializeObject <CreateGroupResp>(ret);

            return(resp);
        }
예제 #4
0
        void IDataSender.CreateGroup(Guid request_id, CreateGroupReq req)
        {
            Datagram datagram = new Datagram
            {
                DataType    = DatagramType.Login,
                MessageType = LoginMessageType.CreateGroupReq,
                RequestID   = request_id,
                Datas       = req.ToByteArray()
            };

            if (!Send(datagram))
            {
                RunningDatas.InfoNotify("网络连接失败 请重启软件后重试");
            }
        }
예제 #5
0
 public int CreateGroupRP(CreateGroupReq request)
 {
     try
     {
         DynamicParameters parameters = new DynamicParameters();
         parameters.Add("@GroupName", request.GroupName);
         var id = SqlMapper.ExecuteScalar <int>(con, "CreateGroup", param: parameters, commandType: CommandType.StoredProcedure);
         return(id);
     }
     catch (Exception ex)
     {
         //throw ex;
         return(0);
     }
 }
예제 #6
0
        public Respbase <ChatGroupDto> CreateGroup(CreateGroupReq req)
        {
            ChatFacade   facade = new ChatFacade();
            ChatGroupDto group  = facade.CreateGroup(req);

            if (group == null)
            {
                return(new Respbase <ChatGroupDto> {
                    Result = facade.PromptInfo.Result, Message = facade.PromptInfo.Message, Data = null
                });
            }
            return(new Respbase <ChatGroupDto> {
                Data = group
            });
        }
예제 #7
0
파일: Group.cs 프로젝트: hemrika/FlexMail
        /// <summary>
        ///
        /// </summary>
        /// <param name="groupType"></param>
        public void Create(GroupType groupType = null)
        {
            try
            {
                if (_create == null)
                {
                    var req = new CreateGroupReq()
                    {
                        header = Client.RequestHeader
                    };

                    if (groupType != null)
                    {
                        req.groupType = groupType;
                    }

                    _create = _client.API.CreateGroup(req);
                }

                if (_create.errorCode == (int)errorCode.No_error)
                {
                    return;
                }

                throw new FlexMailException(_create.errorMessage, _create.errorCode);
            }
            catch (Exception ex)
            {
                //telemetry.TrackException(ex, new Dictionary<string, string> { { "Flexmail", "Group.Create" } });
                if (ex is FlexMailException)
                {
                    throw (ex);
                }
            }

            finally
            {
                _create = null;
            }
            return;
        }
예제 #8
0
 public int CreateGroupCT([FromBody] CreateGroupReq request)
 {
     return(_groupService.CreateGroupSV(request));
 }
예제 #9
0
 public int CreateGroupSV(CreateGroupReq request)
 {
     return(_groupRepository.CreateGroupRP(request));
 }