public async Task <List <UserCompetencyMatrixModel> > GetUserCompetency()
        {
            var user = GetUserSession();

            if (user != null)
            {
                var request = new CompetenciesReportRequest();
                request.UserID = user.UserID;
                var result = await reportService.GetUserCompetencyMetrix(request);

                if (result != null)
                {
                    if (result.Content != null)
                    {
                        return(result.Content);
                    }
                }
            }
            return(null);
        }
Exemplo n.º 2
0
        public async Task <Tuple <string, List <UserCompetencyMatrixModel> > > GetUserCompetencyMatrix(CompetenciesReportRequest request)
        {
            List <UserCompetencyMatrixModel> response = null;
            var message        = "";
            var competencyRepo = unitOfWork.GetRepository <UserCompetencyMatrix>();
            var competencies   = await Task.Run(() => competencyRepo.Get(x => x.UserID == request.UserID &&
                                                                         (string.IsNullOrEmpty(request.Type) || x.Type == request.Type) &&
                                                                         (string.IsNullOrEmpty(request.MainGroup) || x.Type == request.MainGroup) &&
                                                                         (string.IsNullOrEmpty(request.SubGroup) || x.Type == request.SubGroup) &&
                                                                         (string.IsNullOrEmpty(request.Competency) || x.Type == request.Competency)).ToList());

            if (competencies.Any())
            {
                response = new List <UserCompetencyMatrixModel>();
                competencies.ForEach(x =>
                {
                    response.Add(new UserCompetencyMatrixModel()
                    {
                        Competency    = x.Competency,
                        CurrentLevel  = x.CurrentLevel,
                        Gap           = x.Gap,
                        ID            = x.ID,
                        LoW           = x.LoW,
                        MainGroup     = x.MainGroup,
                        RatingDate    = x.RatingDate,
                        RequiredLevel = x.RequiredLevel,
                        SubGroup      = x.SubGroup,
                        Type          = x.Type,
                        UserID        = x.UserID
                    });
                });
                message = "Found " + response.Count() + " records";
            }
            log.LogDebug(message);
            return(new Tuple <string, List <UserCompetencyMatrixModel> >(message, response));
        }
Exemplo n.º 3
0
 public async Task <ResponseMessage <List <UserCompetencyMatrixModel> > > GetUserCompetencyMetrix(CompetenciesReportRequest request)
 {
     return(await Task.Run(() => proxy.GetUserCompetencyMetrix(request)));
 }
Exemplo n.º 4
0
        public async Task <ResponseMessage <List <UserCompetencyMatrixModel> > > GetUserCompetencyMetrix(CompetenciesReportRequest reportRequest)
        {
            ResponseMessage <List <UserCompetencyMatrixModel> > result;
            string azureBaseUrl         = config.GetValue <string>("DRAAzureAPIURL:DRAAzureAPIBaseURL");
            string urlQueryStringParams = config.GetValue <string>("DRAAzureAPIURL:DRAReportsAPIURL");

            using (var client = new HttpClient())
                using (var request = new HttpRequestMessage(HttpMethod.Post, $"{azureBaseUrl}{urlQueryStringParams}"))
                    using (var httpContent = CreateHttpContent(reportRequest))
                    {
                        request.Content = httpContent;

                        using (var response = await client.SendAsync(request, HttpCompletionOption.ResponseHeadersRead))
                        {
                            var jsonString = await response.Content.ReadAsStringAsync();

                            if (response.StatusCode == HttpStatusCode.OK)
                            {
                                result = JsonConvert.DeserializeObject <ResponseMessage <List <UserCompetencyMatrixModel> > >(jsonString);
                            }
                            else
                            {
                                result = new ResponseMessage <List <UserCompetencyMatrixModel> >();
                                result = JsonConvert.DeserializeObject <ResponseMessage <List <UserCompetencyMatrixModel> > >(jsonString);
                            }
                        }
                    }
            return(result);
        }