Пример #1
0
        // GET: Enrollment/Create
        public ActionResult Create(ChooseStudentViewModel student)
        {
            if (!UserIsInRole("Admin"))
            {
                return(RedirectToAction("Index", "Home"));
            }
            var result = _studentQuery.Handle(new StudentInputGetByCPF {
                StudentCPF = student.StudentCPF
            }).Student;

            if (result == null)
            {
                ModelState.AddModelError("StudentCPF", "CPF Inválido");
                student.Courses = GetComboboxCourse();
                return(View("ChooseStudent", student));
            }
            var disciplines = _disciplineQuery.Handle(new DisciplineInputGetNotConcluded {
                CourseId = student.SelectedCourse, StudentId = result.Id
            }).Disciplines;
            var portfolio = new CreateEnrollmentViewModel {
                Disciplines = disciplines.Select(x => new Checkbox {
                    Text = x.Name, Value = x.Id.ToString()
                }),
                StudentId = result.Id
            };

            return(View(portfolio));
        }
Пример #2
0
        public ActionResult Create(CreateEnrollmentViewModel enrollment)
        {
            if (!UserIsInRole("Admin"))
            {
                return(RedirectToAction("Index", "Home"));
            }
            var result = _enrollmentCommand.Handle(new EnrollmentInputRegister {
                StudentId   = enrollment.StudentId,
                Disciplines = enrollment.Disciplines.Where(x => x.Checked).Select(x => Guid.Parse(x.Value)).ToArray()
            });

            if (!result.IsValid)
            {
                foreach (var n in result.Notifications)
                {
                    ModelState.AddModelError(n.Key, n.Value);
                }
                return(View(enrollment));
            }
            return(RedirectToAction("Index"));
        }
Пример #3
0
        public ActionResult Join(int id,
                                 [Bind(Include = "Email, Number, FullName, Country, State, City, Address")] CreateEnrollmentViewModel model)
        {
            Event e = Database.Events.Find(id);

            if (ModelState.IsValid)
            {
                try
                {
                    Enrollment enrollment = new Enrollment(model);
                    e.AddEnrollment(enrollment);
                    Database.SaveChanges();

                    return(RedirectToAction("Index"));
                }
                catch (DbUpdateException)
                {
                    ModelState.AddModelError("Email", Resources.Resources.MustBeUnique);
                }
            }

            return(View(model));
        }