public ActionResult RegistrarDoacao(Doacao doacao, int?hemobancos, TipoSanguineo tipoSanguineo) { ViewBag.Hemobancos = new MultiSelectList(HemobancoDAO.ListarTodosHemobancos(), "IdHemobanco", "NomeFantasiaHemobanco"); doacao.HemobancoDoacao = HemobancoDAO.BuscarHemobancoPorID(hemobancos); doacao.UsuarioDoacao = UsuarioDAO.BuscarUsuarioPorId(doacao.UsuarioDoacao.IdUsuario); if (TipoSanguineoDAO.BuscarTipoSanguineoPorNome(tipoSanguineo.GrupoSanguineo, tipoSanguineo.FatorRH) == null) { TipoSanguineoDAO.CadastrarTipoSanguineo(tipoSanguineo); } TipoSanguineo tpPesquisado = new TipoSanguineo(); tpPesquisado = TipoSanguineoDAO.BuscarTipoSanguineoPorNome(tipoSanguineo.GrupoSanguineo, tipoSanguineo.FatorRH); doacao.TipoSanguineoDoacao = TipoSanguineoDAO.BuscarTipoSanguineoPorID(tpPesquisado.IdTipoSanguineo); if (DoacaoDAO.CadastrarDoacao(doacao)) { return(RedirectToAction("EmitirCertificado", "IdDoacao")); } ModelState.AddModelError("", "Erro ao registrar doação!"); return(View(doacao)); }
public IActionResult Cadastrar(Doacao doacao) { ModelState.Remove("Doador.Cpf"); ModelState.Remove("Doador.NomeCompleto"); ModelState.Remove("Doador.Genero"); ModelState.Remove("Doador.EstadoCivil"); ModelState.Remove("Doador.TipoSanguineo"); ModelState.Remove("Doador.FatorRh"); if (ModelState.IsValid) { DateTime dataHoje = DateTime.Now; Doador doador = _doadorDAO.BuscarDoadorPorId(doacao.Doador.IdDoador); doador.UltimaDoacao = dataHoje; // Informações do formulário. ImpedimentosDefinitivos impedimentosDefinitivos = CriarImpedimentosDefinitivos(doacao); ImpedimentosTemporarios impedimentosTemporarios = CriarImpedimentosTemporarios(doacao); TriagemClinica triagemClinica = CriarTriagemClinica(doacao); // Informações que serão preenchidas após recebimento do exame laboratorial. TriagemLaboratorial triagemLaboratorial = new TriagemLaboratorial { }; doacao = CriarDoacao(impedimentosTemporarios, triagemClinica, impedimentosDefinitivos, triagemLaboratorial, doador, triador, dataHoje); int idDoacao = _doacaoDAO.CadastrarDoacao(doacao); // TODO: [FEEDBACK] - Mostrar mensagem de sucesso. return(RedirectToAction("perfil", new RouteValueDictionary { { "id", idDoacao } })); } ViewBag.idDoador = doacao.Doador.IdDoador; return(View(doacao)); }
public void PostDoacao(Doacao doacao) { DoacaoDAO.CadastrarDoacao(doacao); }