Esempio n. 1
0
        public ValidationResult Update(Domain.Entities.CourseClass entity)
        {
            var response = new ValidationResult();

            if (!entity.IsValid())
            {
                response.AddError(entity.Errors.ToArray());

                return(response);
            }

            var subjectId = _curriculum_SubjectRepository.GetAll().FirstOrDefault(w => w.Id == entity.Curriculum_SubjectId)?.SubjectId;

            if (!subjectId.HasValue || !CheckIfSubjectIsEnabled(entity.Curriculum_SubjectId))
            {
                response.AddError("Disciplina não disponível");
            }

            if (!CheckIfProfessorIsAuthorized(entity.ProfessorId, subjectId.Value))
            {
                response.AddError($"Professor não habilitado para esta disciplina.");
            }

            var operationResult = _courseClassRepository.Update(entity);

            if (!operationResult)
            {
                response.AddError("Classe não encontrada");
            }

            return(response);
        }
Esempio n. 2
0
        public Domain.Entities.CourseClass Add(Domain.Entities.CourseClass entity)
        {
            if (!entity.IsValid())
            {
                return(entity);
            }

            var subjectId = _curriculum_SubjectRepository.GetAll().FirstOrDefault(w => w.Id == entity.Curriculum_SubjectId)?.SubjectId;

            if (!subjectId.HasValue || !CheckIfSubjectIsEnabled(entity.Curriculum_SubjectId))
            {
                entity.AddError("Disciplina não disponível");
            }

            if (!CheckIfProfessorIsAuthorized(entity.ProfessorId, subjectId.Value))
            {
                entity.AddError($"Professor não habilitado para esta disciplina.");
            }

            _courseClassRepository.Add(entity);

            return(entity);
        }