コード例 #1
0
        //GET: Gets all team members
        public IActionResult GetTeamMembers([FromBody] GetTeamMembersRequest req)
        {
            List <Employee> result = new List <Employee>();

            try
            {
                // Respond with a 200 - success
                var teamId = req.teamId;
                // teamId is the team id we are searching the members for
                result = manager.GetTeamMembers(teamId).ToList();
                ResponseData <List <Employee> > response = new ResponseData <List <Employee> >();
                response.Content           = result;
                response.Code              = 200;
                response.HasBeenSuccessful = true;
                // Return the populated list
                var httpResult = this.Ok(response);
                return(httpResult);
            }
            catch (Exception e)
            {
                // Respond with a 401, something went wrong
                Console.WriteLine(e.Message);
                ResponseData <List <Employee> > response = new ResponseData <List <Employee> >();
                response.Content           = null;
                response.Code              = 400;
                response.HasBeenSuccessful = false;
                var httpResult = this.Ok(response);
                return(httpResult);
            }
        }
コード例 #2
0
        public async Task <IHttpActionResult> Get()
        {
            var request = new GetTeamMembersRequest();

            request.TenantId = (await _userManager.GetUserAsync(User)).TenantId;
            return(Ok(await _mediator.Send(request)));
        }
コード例 #3
0
        public void getTeamMembersRequest(Action <PomeloException, GetTeamMembersResponse> cb, object option = null)
        {
            var request = new GetTeamMembersRequest();

            _socket.request <GetTeamMembersResponse>(request, (object msg, out int s2c_code, out string s2c_msg) => {
                var rsp  = msg as GetTeamMembersResponse;
                s2c_code = rsp.s2c_code;
                s2c_msg  = rsp.s2c_msg;
                return(s2c_code == 200);
            }, cb, option);
        }
コード例 #4
0
ファイル: ApiWrapper.cs プロジェクト: raizen4/A350CEM
        /// <inheritdoc />
        /// Get Team Members for a TEAM
        public async Task <HttpResponseMessage> GetTeamMembers(GetTeamMembersRequest req)
        {
            var getTeamMembersForm = new GetTeamMembersRequest();

            getTeamMembersForm.teamId = req.teamId;
            this.client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Constants.Token);
            var jsonToSend = JsonConvert.SerializeObject(req);
            var content    = new StringContent(jsonToSend, Encoding.UTF8, Constants.Headers.ContentType);
            var result     = await this.API.GetTeamMembers(Constants.Headers.ContentType, content);

            return(result);
        }
コード例 #5
0
        public async Task <List <TeamMember> > GetTeamMembersAsync(CancellationToken cancellationToken = default(CancellationToken), bool noRepeatings = false) =>
        await Task.Run(async() => {
            if (!CrossConnectivity.Current.IsConnected)
            {
                throw new InvalidOperationException(AppConsts.ERROR_INTERNET_CONNECTION);
            }

            List <TeamMember> teamMembers = new List <TeamMember>();

            GetTeamMembersRequest getTeamMembersRequest = new GetTeamMembersRequest {
                AccessToken = GlobalSettings.Instance.UserProfile.AccesToken,
                Url         = GlobalSettings.Instance.Endpoints.TeamMemberEndPoints.GetTeamMembersEndPoint
            };

            GetTeamMembersResponse getTeamMembersResponse = null;

            try {
                getTeamMembersResponse = await _requestProvider.GetAsync <GetTeamMembersRequest, GetTeamMembersResponse>(getTeamMembersRequest);

                if (getTeamMembersResponse != null)
                {
                    if (noRepeatings)
                    {
                        teamMembers = getTeamMembersResponse.TeamMembers.GroupBy <TeamMember, long>(teamMember => teamMember.Team.Id).Select <IGrouping <long, TeamMember>, TeamMember>(group => group.First()).ToList();
                    }
                    else
                    {
                        teamMembers = getTeamMembersResponse.TeamMembers.ToList();
                    }
                }
                else
                {
                    throw new InvalidOperationException(CANT_GET_TEAM_MEMBER_BY_MEMBER_ID_ERROR_MESSAGE);
                }
            }
            catch (ServiceAuthenticationException exc) {
                _identityUtilService.RefreshToken();

                throw exc;
            }
            catch (Exception ex) {
                Crashes.TrackError(ex);

                throw;
            }

            return(teamMembers);
        }, cancellationToken);
コード例 #6
0
ファイル: Facade.cs プロジェクト: raizen4/A350CEM
        // Get all the team Members for a Team ID
        public async Task <ResponseData <IEnumerable <Employee> > > GetTeamMembers(string teamId)
        {
            // Resnpose Data object intiialise
            var responseData = new ResponseData <IEnumerable <Employee> >()
            {
                HasBeenSuccessful = false
            };
            var req = new GetTeamMembersRequest();

            req.teamId = teamId;
            var result = await this.apiWrapper.GetTeamMembers(req);

            string content = await result.Content.ReadAsStringAsync();

            if (result.StatusCode == HttpStatusCode.OK)
            {
                try
                {
                    var deserializedContent = JsonConvert.DeserializeObject <ResponseData <IEnumerable <Employee> > >(content);

                    if (!deserializedContent.HasBeenSuccessful || deserializedContent.Content == null)
                    {
                        responseData.HasBeenSuccessful = false;
                        responseData.Content           = null;
                        responseData.Error             = "Internal Server Error";
                        return(responseData);
                    }

                    responseData.HasBeenSuccessful = true;
                    responseData.Content           = deserializedContent.Content;
                    responseData.Error             = null;
                    return(responseData);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.StackTrace);
                    responseData.HasBeenSuccessful = false;
                    responseData.Content           = null;
                    responseData.Error             = "Deserialization Error";
                    return(responseData);
                }
            }

            responseData.HasBeenSuccessful = false;
            responseData.Content           = null;
            responseData.Error             = "Internal server Error";
            return(responseData);
        }