Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        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));
        }
Esempio n. 3
0
 public void PostDoacao(Doacao doacao)
 {
     DoacaoDAO.CadastrarDoacao(doacao);
 }