public RetiradaController(RetiradaDAO retiradaDAO, HospitalDAO hospitalDAO, TipoSanguineoDAO tipoSanguineoDAO, EstoqueSangueDAO estoqueSangueDAO)
 {
     _retiradaDAO      = retiradaDAO;
     _hospitalDAO      = hospitalDAO;
     _tipoSanguineoDAO = tipoSanguineoDAO;
     _estoqueSangueDAO = estoqueSangueDAO;
 }
Exemple #2
0
        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!");
            }
        }