public void Handle(OrganizerRegistrationCommand message) { var organizer = new Organizer(message.Id, message.SIN, message.Name, message.Email); if (!organizer.IsValid()) { NotifyValidationError(organizer.ValidationResult); return; } var existOrganizer = _organizerRepository.Find(o => o.SIN == organizer.SIN || o.Email == organizer.Email); if (existOrganizer.Any()) { _bus.RaiseEvent(new DomainNotification(message.MessageType, "SIN or E-mail already exists")); } _organizerRepository.Add(organizer); //TODO: Add to repository if (Commit()) { _bus.RaiseEvent(new OrganizerRegisteredEvent(organizer.Id, organizer.SIN, organizer.Name, organizer.Email)); } }
public Task <Unit> Handle(RegisterOrganizerCommand message, CancellationToken cancellationToken) { var organizer = new Organizer(message.Id, message.Name, message.Email, message.DocumentId); if (!organizer.IsValid()) { NotifyValidationError(organizer.ValidationResult); return(Task.FromResult(Unit.Value)); } var organizerExists = _organizerRepository.Search(o => o.DocumentId == organizer.DocumentId || o.Email == organizer.Email); if (organizerExists.Any()) { _mediator.PublishEvent(new DomainNotification(message.MessageType, "Document ID or Email already registered")); } _organizerRepository.Add(organizer); if (Commit()) { _mediator.PublishEvent(new OrganizerRegisteredEvent(organizer.Id, organizer.Name, organizer.Email, organizer.DocumentId)); } return(Task.FromResult(Unit.Value)); }
public IActionResult Create(Organizer organizer) { if (ModelState.IsValid) { Organizer newOrganizer = _organizerRepository.Add(organizer); return(RedirectToAction("details", new { id = newOrganizer.Id })); } return(View()); }
public IHttpActionResult Post([FromBody] Organizer organizer) { var result = new Organizer(); if (ModelState.IsValid) { result = organizerRepository.Add(organizer); } return(Json(result)); }
public Tournament Add(Tournament tournament) { Organizer organizer; if (tournament.Organizer == null) { organizer = organizerRepository.Add(tournament.Organizer); } else { organizer = organizerRepository.Get(tournament.Organizer.Id); } Venue venue; if (tournament.Venue == null) { venue = venueRepository.Add(tournament.Venue); } else { venue = venueRepository.Get(tournament.Venue.Id); } ICollection <Category> categories = new List <Category>(); if (tournament.Categories != null && tournament.Categories.Count > 0) { foreach (Category category in tournament.Categories) { var categoryFromDb = categoryRepository.Get(category.Id); if (categoryFromDb == null) { categories.Add(categoryRepository.Add(category)); } else { categories.Add(categoryFromDb); } } } tournament.Organizer = organizer; tournament.Venue = venue; tournament.Categories = categories; var result = context.Tournaments.Add(tournament); Save(); return(result); }
public void Handle(RegisterOrganizerCommand message) { var organizador = new Organizer(message.Id, message.Name, message.Document, message.Email); if (!organizador.IsValid()) { NotificarValidacoesErro(organizador.ValidationResult); return; } var organizadorExistente = _organizadorRepository.Search(o => o.Document == organizador.Document || o.Email == organizador.Email); if (organizadorExistente.Any()) { _bus.RaiseEvent(new DomainNotification(message.MessageType, "CPF ou e-mail já utilizados")); } _organizadorRepository.Add(organizador); if (Commit()) { _bus.RaiseEvent(new OrganizerRegisteredEvent(organizador.Id, organizador.Name, organizador.Document, organizador.Email)); } }