public async Threading.Task <ProjectListDto> GetAllAsync()
        {
            var projectList = new ProjectListDto();

            var projects = await _dbContext.Projects.ToListAsync();

            //    .Select(x => new ProjectDto
            //    {
            //        Id = x.Id,
            //        Name = x.Name
            //    })
            //    .OrderBy(x => x.Name).ToListAsync();

            foreach (Project item in projects)
            {
                ProjectDto newProjectDto = new ProjectDto
                {
                    Id   = item.Id,
                    Name = item.Name
                };
                projectList.Projects.Add(newProjectDto);
            }

            projectList.RecordCount = projects.Count;

            return(projectList);
        }
        public async Task <IActionResult> GetProjectsList(bool activeProjects)
        {
            var userOrgId   = int.Parse(User.FindFirst("Organization").Value);
            var allProjects = await _context.Projects.Where(x => x.OrganizationId == userOrgId && x.Active == activeProjects).ToListAsync();

            var listOfProjectDtos = new List <ProjectListDto>();

            foreach (var project in allProjects)
            {
                var customerName = (await _context.Customers.SingleOrDefaultAsync(x => x.Id == project.CustomerId)).Name;
                var allUsers     = await _context.Users
                                   .FromSql("SELECT * FROM AspNetUsers JOIN ProjectUsers ON ProjectUsers.UserId = AspNetUsers.Id WHERE ProjectUsers.ProjectId = {0}", project.Id)
                                   .ToListAsync();

                var nameString = "";

                foreach (var user in allUsers)
                {
                    nameString = nameString + " " + user.FullName + ",";
                }

                var timeDifference = ((project.EstimatedTime - (int)project.TotalBudget));
                var projectListDto = new ProjectListDto()
                {
                    Id            = project.Id,
                    Name          = project.Name,
                    StartDate     = project.StartDate,
                    EndDate       = project.EndDate,
                    TotalBudget   = project.TotalBudget,
                    Priority      = project.Priority,
                    UsedTime      = project.UsedTime,
                    EstimatedTime = project.EstimatedTime,
                    CustomerName  = customerName,
                    AllMembers    = nameString.Remove(nameString.Length - 1),

                    EstimatedTimeOver = timeDifference,
                };

                if (await _context.TrelloBoards.AnyAsync(x => x.Id == project.TrelloBoardId))
                {
                    var alltrelloBoards = await _context.TrelloBoards.SingleOrDefaultAsync(x => x.Id == project.TrelloBoardId);

                    projectListDto.TrelloUrl = alltrelloBoards.Url;
                }

                listOfProjectDtos.Add(projectListDto);
            }

            return(Ok(listOfProjectDtos));
        }