public IActionResult Cadastrar(Retirada retirada) { if (ModelState.IsValid) { if (_retiradaDAO.Cadastrar(retirada)) { return(RedirectToAction("Index", "Retirada")); } ModelState.AddModelError("", "Não há essa quantia de sangue disponivel"); } ViewBag.Hospitais = new SelectList(_hospitalDAO.Listar(), "Id", "Nome"); ViewBag.TiposSanguineos = new SelectList(_tipoSanguineoDAO.Listar(), "Id", ""); return(View(retirada)); }
private void btnCadastrar_Click(object sender, RoutedEventArgs e) { if ((cboHospital.SelectedItem != null) && (cboTipoSanguineo.SelectedItem != null) && !string.IsNullOrEmpty(txtQuantidade.Text) ) { Retirada retirada = new Retirada(); //int idHospital = (int)cboHospital.SelectedValue; retirada.HospitalID = (int)cboHospital.SelectedValue; var tipoSanguineo = (TipoSanguineo)cboTipoSanguineo.SelectedValue; retirada.TipoSanguineoID = tipoSanguineo.Id; //coleta.TipoSanguineo = coleta.Doador.TipoSanguineo; retirada.Quantidade = Convert.ToInt32(txtQuantidade.Text); var estoque = EstoqueSangueDAO.BuscarPorTipoSanguineo(retirada.TipoSanguineoID); if ((estoque.Quantidade - retirada.Quantidade) > 0) { if (RetiradaDAO.Cadastrar(retirada)) { EstoqueSangueDAO.DiminuirEstoque(retirada.TipoSanguineoID, retirada.Quantidade); _messageBoxClass.MensagemInfoOK("Retirada Salva!"); LimparForm(); } else { _messageBoxClass.MensagemErroOK("Retirada ja cadastrada!"); } } else { _messageBoxClass.MensagemErroOK("Quantidade Solicitada Indisponivel!"); } } else { _messageBoxClass.MensagemErroOK("Preencha os campos corretamente!"); } }