public ActionResult Adicionar(int id) { ViewBag.MembroId = ObterMembros(id); MembroOrganizadorViewModel membro = new MembroOrganizadorViewModel { ComissaoOrganizadoraId = id }; return View(membro); }
public async Task <ActionResult> Adicionar(MembroOrganizadorViewModel organizadorViewModel) { //return PartialView("_addMember", organizador); try { // TODO: Add insert logic here if (ModelState.IsValid) { if (organizadorViewModel != null) { foreach (var selectedId in organizadorViewModel.Membros) { var result = _membroRepository.ObterPorId(selectedId); if (result != null) { IdentityUser identityUser = await _userManager.FindByEmailAsync(result.Email); if (identityUser != null) { IdentityResult identityResult = await _userManager.AddToRoleAsync(identityUser, "Organizador"); var message = new Message(new string[] { result.Email }, "Adicionar Organizador", $"Oi {result.Nome}, agora pode criar uma comissão organizadora.", null); Notificar(message); } } } return(RedirectToAction("Index", new { msg = "Membro(s) adicionado(s)", type = "success" })); } else { ModelState.AddModelError(string.Empty, "Erro ao registar membro."); } } ViewBag.MembroId = ObterMembros(); return(View(organizadorViewModel)); } catch { ViewBag.MembroId = ObterMembros(); return(View(organizadorViewModel)); } }
public async Task<ActionResult> Adicionar(MembroOrganizadorViewModel organizadorViewModel) { //return PartialView("_addMember", organizador); try { // TODO: Add insert logic here if(ModelState.IsValid) { foreach (var selectedId in organizadorViewModel.Membros) { MembroOrganizador membro = new MembroOrganizador { ComissaoOrganizadoraId = organizadorViewModel.ComissaoOrganizadoraId, MembroId = selectedId, Confirmado = true }; //_membroOrganizadorRepository.Adicionar(organizador); if (_membroOrganizadorRepository.VerificarMembro(membro.MembroId, membro.ComissaoOrganizadoraId, true)) { var result = _membroOrganizadorRepository.ObterPorMembroComissao(membro.MembroId, membro.ComissaoOrganizadoraId, true); _membroOrganizadorRepository.Actualizar(result); } else if (!_membroOrganizadorRepository.VerificarMembro(membro.MembroId, membro.ComissaoOrganizadoraId, false)) { _membroOrganizadorRepository.Adicionar(membro); IdentityUser identityUser = await _userManager.FindByEmailAsync(_membroRepository.ObterPorId(membro.MembroId).Email); if (identityUser != null) { IdentityResult identityResult = await _userManager.AddToRoleAsync(identityUser, "Organizador"); } } } return RedirectToAction("Index", new { msg = "Membro(s) adicionado(s)" }); } return View(organizadorViewModel); } catch { return View(organizadorViewModel); } }