示例#1
0
        public ValidationResult <string> ValidateStudentSubject(Guid studentId, Guid examId, Guid currentId = default)
        {
            var output = new ValidationResult <string>()
            {
                IsSuccess = true
            };

            var studentSubject    = new StudentSubject();
            var studentBySubjects = new List <StudentSubject>();

            studentBySubjects = studentSubject.StudentBySubjects(studentId);

            var repo          = Entity.DepCon.Resolve <IRepository <StudentExam> >();
            var entityWithDni = repo.QueryAll().FirstOrDefault(s => s.Mark == Mark);

            var exam = FindExam(examId);

            if (exam == null)
            {
                output.IsSuccess = false;
                output.Errors.Add("No has seleccionado ningún Examen");
            }
            else
            {
                studentSubject = studentBySubjects.FirstOrDefault(x => x.SubjectId == exam.SubjectId);

                //On Delete
                if (currentId != default)
                {
                    output.IsSuccess = true;
                }
                //Provar d'afegir un else if amb edit. A veure si funciona //Revisar el codi
                else if (currentId == default && entityWithDni != null && entityWithDni.Id != currentId)
                {
                    if (studentId == default)
                    {
                        if (studentSubject == null)
                        {
                            if (entityWithDni.Exam == Exam)
                            {
                                output.IsSuccess = false;
                                output.Errors.Add("El estudiante no está matriculado de la asignatura");
                            }
                        }
                    }
                }
                //On Create
                else if (currentId == default && entityWithDni != null)
                {
                    if (studentId == default)
                    {
                        output.IsSuccess = false;
                        output.Errors.Add("El estudiante no puede estar vacío");
                    }
                    else
                    {
                        if (exam.SubjectId == default)
                        {
                            output.IsSuccess = false;
                            output.Errors.Add("La asignatura no puede estar vacía");
                        }
                        else
                        {
                            if (studentSubject == null)
                            {
                                output.IsSuccess = false;
                                output.Errors.Add("El estudiante no está matriculado de la asignatura");
                            }
                        }
                    }
                }
            }
            return(output);
        }
示例#2
0
        public ValidationResult <string> ValidateStudentSubject(Guid studentId, Guid examId, Guid currentId = default)
        {
            var output = new ValidationResult <string>()
            {
                IsSuccess = true
            };

            var studentSubject    = new StudentSubject();
            var studentBySubjects = new List <StudentSubject>();

            studentBySubjects = studentSubject.StudentBySubjects(studentId);
            var exam = new Exam();

            exam = FindExam(ExamId);

            if (exam == null)
            {
                output.IsSuccess = false;
                output.Errors.Add("No has seleccionado ningún Examen");
            }

            else
            {
                studentSubject = studentBySubjects.FirstOrDefault(x => x.SubjectId == exam.SubjectId);


                //On Delete
                if (currentId != default)
                {
                    output.IsSuccess = true;
                }

                //On Create
                else
                {
                    if (studentId == default)
                    {
                        output.IsSuccess = false;
                        output.Errors.Add("el Student no puede estar vacío");
                    }

                    else
                    {
                        if (exam.SubjectId == default)
                        {
                            output.IsSuccess = false;
                            output.Errors.Add("la Asignatura no puede estar vacío");
                        }

                        else
                        {
                            if (studentSubject == null)
                            {
                                output.IsSuccess = false;
                                output.Errors.Add("El Student no está matriculado de la Asignatura");
                            }
                        }
                    }
                }
            }

            return(output);
        }