private void btnIncluirDispensacao_Click(object sender, EventArgs e) { btnIncluirDispensacao.Enabled = false; int tipousuario = 2; if (RadioAgudo.Checked == true) tipousuario = 1; #region InsirDispensacaoAtualizarDispensacao try { DISPENSACAOTableAdapter dispensacao = new DISPENSACAOTableAdapter(); ITENSDISPENSACAOTableAdapter itensdispensacao = new ITENSDISPENSACAOTableAdapter(); ESTOQUETableAdapter estoque = new ESTOQUETableAdapter(); ITENSESTOQUETableAdapter _medicamento = new ITENSESTOQUETableAdapter(); int idDispensacao = 0; for (int i = 0; i < dtgDadosMedicamentosDispensacao.Rows.Count; i++) { bool tipo = Convert.ToBoolean(dtgDadosMedicamentosDispensacao[0, i].Value); if (tipo) { dispensacao.Insert(DateTime.Now, int.Parse(txIDUsuario.Text), tipousuario, IDFuncionario); idDispensacao = (int)dispensacao.RetornaIdDispensacao(); break; } } if (idDispensacao == 0) { btnIncluirDispensacao.Visible = false; MessageBox.Show("Não há itens selecionados para dispensação..."); } else { for (int i = 0; i < dtgDadosMedicamentosDispensacao.Rows.Count; i++) { bool tipo = Convert.ToBoolean(dtgDadosMedicamentosDispensacao[0, i].Value); if (tipo) { int iddescricao = (int)estoque.RetornaIDDescricaoPorDescricao(dtgDadosMedicamentosDispensacao[1, i].Value.ToString()); int idmedicamento = (int)_medicamento.RetornaIDPorDescricaoID(iddescricao); int quantidade = int.Parse(dtgDadosMedicamentosDispensacao[2, i].Value.ToString()); itensdispensacao.Insert(idDispensacao, iddescricao, idmedicamento, quantidade); int estoqueAtualizado = (int)_medicamento.RetornaQuantidadePorIdMedicamento(idmedicamento) - quantidade; _medicamento.AtualizaEstoquePorIdItemEstoque(estoqueAtualizado, idmedicamento); } } if (!txIDReceitaDispencacao.Text.Equals("")) { DISPENSACAOCRONICOTableAdapter dispensacronico = new DISPENSACAOCRONICOTableAdapter(); int idcronico = int.Parse(txIDReceitaDispencacao.Text); dispensacronico.Insert(idcronico, DateTime.Now, idDispensacao); } DialogResult resultado = MessageBox.Show("Medicamento entreguem com sucesso!\n\nClique em SIM para nova dispensação...", "Aviso",MessageBoxButtons.YesNo,MessageBoxIcon.Information); if (resultado == System.Windows.Forms.DialogResult.Yes) { btnLimpar_Click(sender, e); } } } #endregion catch (Exception err) { MessageBox.Show(err.Message); } }
private void btnExcluirReceita_Click(object sender, EventArgs e) { DialogResult resultado = MessageBox.Show("Deseja excluir a receita e seus medicamentos cadastrados?", "Atenção",MessageBoxButtons.YesNo,MessageBoxIcon.Stop); if (resultado == System.Windows.Forms.DialogResult.Yes) { try { int idreceita = int.Parse(txIdReceita.Text); DISPENSACAOCRONICOTableAdapter dispensacronico = new DISPENSACAOCRONICOTableAdapter(); DataTable MedicamentosEntregues = dispensacronico.RetornaTabelaPorIDCronico(idreceita); if (MedicamentosEntregues.Rows.Count > 0) { string resposta = ""; resposta += "Dia: " + MedicamentosEntregues.Rows[0][2].ToString(); MessageBox.Show("Impossível exluir, já houve dispensação: \n" + resposta, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { ITENSUSUARIOCRONICOTableAdapter itens = new ITENSUSUARIOCRONICOTableAdapter(); MEDICAMENTOSUSUARIOCRONICOTableAdapter receita = new MEDICAMENTOSUSUARIOCRONICOTableAdapter(); int resultItens = itens.DeletaItensPorIDCronico(int.Parse(txIdReceita.Text)); int resultReceita = receita.DeletaReceitaPorIDCronico(int.Parse(txIdReceita.Text)); if (resultItens == 0 && resultReceita == 0) MessageBox.Show("Não há itens para exlcuir!"); else MessageBox.Show("Excluido com sucesso!"); LiberaCamposReceita(); } } catch (Exception err) { MessageBox.Show("Selecione primeiro a receita que deseja exluir.\n"+err.Message); } } }