コード例 #1
0
        public async Task <ActionResult <Models.AllStudentsResponse> > GetAllStudents()
        {
            Models.AllStudentsResponse response;
            if (User.Identity.IsAuthenticated)
            {
                var policyCheck = await authService.AuthorizeAsync(User, "CoachPolicy");

                if (!policyCheck.Succeeded)
                {
                    return(Unauthorized(response = new Models.AllStudentsResponse()
                    {
                        Success = false, Error = Models.ApiError.UnAuthResponse()
                    }));
                }
            }

            Entities.Student[] entities = await studentDbContext.Students.ToArrayAsync();

            Models.Student[] students = entities.Select(ent => Entities.Student.GetStudent(ent)).ToArray();
            Models.standard.Collection <Models.Student> ret = new Models.standard.Collection <Models.Student>()
            {
                values = students, length = students.Length
            };
            response = new Models.AllStudentsResponse()
            {
                Success = true, Students = ret
            };
            return(Ok(response));
        }
コード例 #2
0
ファイル: UsersController.cs プロジェクト: K-Karol/Swimclub
        public async Task <ActionResult <Models.AllUsersResponse> > GetAllUsers()
        {
            Models.AllUsersResponse response;
            if (User.Identity.IsAuthenticated)
            {
                var policyCheck = await authService.AuthorizeAsync(User, "AdminPolicy");

                if (!policyCheck.Succeeded)
                {
                    return(Unauthorized(response = new Models.AllUsersResponse()
                    {
                        Success = false, Error = Models.ApiError.UnAuthResponse()
                    }));
                }
            }

            Entities.User[] entities = await userDbContext.Users.ToArrayAsync();

            Models.User[] users = entities.Select(ent => Entities.User.getUser(ent)).ToArray();
            Models.standard.Collection <Models.User> ret = new Models.standard.Collection <Models.User>()
            {
                values = users, length = users.Length
            };
            response = new Models.AllUsersResponse()
            {
                Success = true, Users = ret
            };
            return(Ok(response));
        }
コード例 #3
0
        public async Task <ActionResult <Models.AllGradesResponse> > GetAllGrades()
        {
            Models.AllGradesResponse response;

            if (User.Identity.IsAuthenticated)
            {
                var policyCheck = await authService.AuthorizeAsync(User, "CoachPolicy");

                if (!policyCheck.Succeeded)
                {
                    return(Unauthorized(response = new Models.AllGradesResponse()
                    {
                        Success = false, Error = Models.ApiError.UnAuthResponse()
                    }));
                }
            }

            Entities.Student[] studentEntities = await studentDbContext.Students.ToArrayAsync();

            Models.Student[] students = studentEntities.Select(ent => Entities.Student.GetStudent(ent)).ToArray();

            Entities.Grade[] gradeEntities = await resourceDbContext.Grades.ToArrayAsync();

            List <Models.Grade> grades = new List <Models.Grade>();

            foreach (var item in gradeEntities)
            {
                Models.Grade newGrade = new Models.Grade()
                {
                    ID = item.ID, Number = item.Number, Tests = item.Tests
                };
                Models.Student[] studentsInThisGrade = students.Where(s => s.CurrentGradeNumber == newGrade.Number).ToArray();
                newGrade.Students = studentsInThisGrade;
                grades.Add(newGrade);
            }

            Models.standard.Collection <Models.Grade> ret = new Models.standard.Collection <Models.Grade>()
            {
                values = grades.ToArray(), length = grades.Count
            };
            response = new Models.AllGradesResponse()
            {
                Success = true, Grades = ret
            };
            return(Ok(response));
        }