Exemplo n.º 1
0
        public IActionResult Update([FromBody] Interfaces.Grade grade)
        {
            if (grade == null)
            {
                return(BadRequest());
            }

            var grades = from s in context.StudentSubjects
                         where s.StudentID == grade.StudentID &&
                         s.SubjectID == grade.SubjectID &&
                         s.EnrollmentSemenster == grade.EnrollmentSemester
                         select s;

            if (grades.ToList().Count != 1)
            {
                return(NotFound());
            }

            var gradeToUpdate = grades.ToList()[0];

            gradeToUpdate.Signature = grade.Signature;
            gradeToUpdate.Passed    = grade.Passed;
            gradeToUpdate.Grade     = grade.ReceivedGrade;

            context.SaveChanges();

            return(Ok());
        }
Exemplo n.º 2
0
        public IActionResult Get(int semester)
        {
            if (semester == 0)
            {
                return(BadRequest());
            }
            else
            {
                var entityGrades = from b in context.StudentSubjects
                                   .Include(nameof(Models.Student))
                                   .Include(nameof(Models.Subject))
                                   where b.EnrollmentSemenster == semester
                                   select b;

                if (entityGrades.ToList().Count == 0)
                {
                    return(NotFound());
                }

                var subjectWithGrades = new List <Interfaces.SubjectWithGrade>();

                foreach (Models.StudentSubject s in entityGrades)
                {
                    var subject = new Interfaces.Subject(s.SubjectID, s.Subject.Name, s.Subject.Code, s.Subject.Credit, s.Subject.RecomendedSemester, s.Subject.ResponsibleProfessor);
                    var grade   = new Interfaces.Grade(s.StudentID, s.SubjectID, s.EnrollmentSemenster, s.Signature, s.Passed, s.Grade);

                    subjectWithGrades.Add(new Interfaces.SubjectWithGrade(subject, grade));
                }

                return(new ObjectResult(subjectWithGrades));
            }
        }
Exemplo n.º 3
0
        public IActionResult Insert([FromBody] Interfaces.Grade grade)
        {
            if (grade == null)
            {
                return(BadRequest());
            }

            var student = (from s in context.Students
                           where s.StudentId == grade.StudentID
                           select s).FirstOrDefault();

            var subject = (from s in context.Subjects
                           where s.SubjectID == grade.SubjectID
                           select s).FirstOrDefault();

            var studentSubject = new Models.StudentSubject()
            {
                StudentID           = student.StudentId,
                SubjectID           = subject.SubjectID,
                EnrollmentSemenster = grade.EnrollmentSemester,
                Signature           = grade.Signature,
                Passed  = grade.Passed,
                Grade   = grade.ReceivedGrade,
                Student = student,
                Subject = subject
            };

            context.StudentSubjects.Add(studentSubject);
            context.SaveChanges();

            return(Ok());
        }
Exemplo n.º 4
0
        public IActionResult GetGradesOfSubject([FromQuery] int subjectId)
        {
            if (subjectId == 0)
            {
                return(BadRequest());
            }
            else
            {
                var entityGrades = from b in context.StudentSubjects
                                   .Include(nameof(Models.Student))
                                   .Include(nameof(Models.Subject))
                                   where b.SubjectID == subjectId
                                   select b;

                if (entityGrades.ToList().Count == 0)
                {
                    return(NotFound());
                }

                var grades = new List <Interfaces.Grade>();

                foreach (Models.StudentSubject s in entityGrades)
                {
                    var grade = new Interfaces.Grade(s.StudentID, s.SubjectID, s.EnrollmentSemenster, s.Signature, s.Passed, s.Grade);

                    grades.Add(grade);
                }

                return(new ObjectResult(grades));
            }
        }