Пример #1
0
        public ActionResult <ApiResponse <List <UserAdminDto> > > UsersAdmin(HierarchyDto hierarchy)
        {
            var response = new ApiResponse <List <UserAdminDto> >();

            try
            {
                var res1 = _userRepository.FindByHierarchy(hierarchy.CompanyId, hierarchy.ProjectId, hierarchy.CourseId);
                List <UserAdminDto> dtos = _mapper.Map <List <UserAdminDto> >(res1);

                foreach (var item in dtos)
                {
                    switch (item.Hierarchies[0].CourseId)
                    {
                    case 0:
                        item.Level      = "Proyecto";
                        item.CourseName = "Todos";
                        break;

                    default:
                        item.Level      = "Curso";
                        item.CourseName = (_courseRepository.Find(c => c.Id == item.Hierarchies[0].CourseId).Name);
                        break;
                    }
                    switch (item.Hierarchies[0].ProjectId)
                    {
                    case 0:
                        item.Level       = "Entidad";
                        item.ProjectName = "Todos";
                        break;

                    default:
                        item.Level       = "Proyecto";
                        item.ProjectName = (_projectRepository.Find(c => c.Id == item.Hierarchies[0].ProjectId).Name);
                        break;
                    }
                    switch (item.Hierarchies[0].CompanyId)
                    {
                    case 0:
                        item.Level       = "Global";
                        item.CompanyName = "Todos";
                        break;

                    default:
                        item.Level       = "Entidad";
                        item.CompanyName = (_companyRepository.Find(c => c.Id == item.Hierarchies[0].CompanyId).Name);
                        break;
                    }
                }
                response.Result = dtos;
            }
            catch (Exception ex)
            {
                response.Result  = null;
                response.Success = false;
                response.Message = "Internal server error";
                _logger.LogError($"Something went wrong: { ex.ToString() }");
                return(StatusCode(500, response));
            }
            return(Ok(response));
        }
        public Task UpdateHierarchyBases(HierarchyDto hierarchy)
        {
            var hierarchyDto = Mapper.Map <HierarchyBase>(hierarchy);

            return(IdentityRepository.UpdateHierarchyBases(hierarchyDto));
        }