private void selecionaFilmes_SIChange(object sender, EventArgs e) { buttonLocar.Enabled = true; int x = 0; // REESTABELECE A COR DO ITEM while (x < listViewFilmes.Items.Count) { listViewFilmes.Items[x].BackColor = System.Drawing.Color.Lavender; x++; } pilhaDevolucao.Clear(); ListView.SelectedIndexCollection indices = listViewFilmes.SelectedIndices; int qtdeFinal = indices.Count; int i = 0; while (i < qtdeFinal) { // ENTIDADE LOCACAO listViewFilmes.Items[indices[i]].BackColor = System.Drawing.Color.LightGoldenrodYellow; // DESTACA O ITEM SELECIONADO DadosLocacao dev = new DadosLocacao(); dev.setCodigoLocacao(listViewFilmes.Items[indices[i]].Text); dev.setCodigoUsuario(usuarioID); dev.setDataDevolucao(DateTime.Parse(dateDevolucao.Text)); if (!textPago.Text.Equals("")) { dev.setPagamento(float.Parse(textPago.Text)); } else { dev.setPagamento(0.00f); } // ENTIDADE CRED_DEB dev.setCodigoCliente(textCodigo.Text); if (!textPago.Text.Equals("")) { dev.setValorCredito(float.Parse(textPago.Text)); } else { dev.setValorCredito(0.00f); } pilhaDevolucao.Push(dev); i++; } }
public void botaoDevolver_Click(object sender, EventArgs e) { DadosLocacao itemDevolucao = new DadosLocacao(); // GRAVA FILMES LOCADOS SqlConnection conexao = new SqlConnection("Data Source = (Local); Initial Catalog = LOCADORA; Integrated Security=SSPI"); conexao.Open(); SqlParameter paramentro; while (pilhaDevolucao.Count != 0) { // INSERT DA TABELA DEVOLUCAO SqlCommand gravaDevolucao = new SqlCommand("INSERT INTO DEVOLUCAO VALUES(@CODLOC, @CODUS, @DATADEV, @PAG)", conexao); itemDevolucao = pilhaDevolucao.Pop(); paramentro = new SqlParameter("@CODLOC", itemDevolucao.getCodigoLocacao()); gravaDevolucao.Parameters.Add(paramentro); paramentro = new SqlParameter("@CODUS", itemDevolucao.getCodigoUsuario()); gravaDevolucao.Parameters.Add(paramentro); paramentro = new SqlParameter("@DATADEV", itemDevolucao.getDataDevolucao()); gravaDevolucao.Parameters.Add(paramentro); paramentro = new SqlParameter("@PAG", itemDevolucao.getPagamento()); gravaDevolucao.Parameters.Add(paramentro); gravaDevolucao.ExecuteNonQuery(); //UPDATE DA TABELA LOCACAO //PEND_DEVOLUCAO = 0 INDICA QUE O FILME FOI DEVOLVIDO SqlCommand atualizaLocacao = new SqlCommand("UPDATE LOCACAO SET PEND_DEVOLUCAO = 0 " + "WHERE ID_Locacao = @CODLOC1", conexao); paramentro = new SqlParameter("@CODLOC1", itemDevolucao.getCodigoLocacao()); atualizaLocacao.Parameters.Add(paramentro); atualizaLocacao.ExecuteNonQuery(); //UPDATE DA TABELA CRED_DEB if (textPago.Text.Equals("")) { itemDevolucao.setPagamento(0); } else { itemDevolucao.setPagamento(float.Parse(textPago.Text)); } } SqlCommand atualizaCredito = new SqlCommand("UPDATE CRED_DEB " + "SET VALOR = (SELECT DBO.SF_VALOR_CREC_DEB(@CODCLI) AS VAL) + @VALOR2 " + "WHERE Codigo_Cli = @CODCLI", conexao); paramentro = new SqlParameter("@CODCLI", itemDevolucao.getCodigoCliente()); atualizaCredito.Parameters.Add(paramentro); paramentro = new SqlParameter("@VALOR2", itemDevolucao.getPagamento()); atualizaCredito.Parameters.Add(paramentro); atualizaCredito.ExecuteNonQuery(); MessageBox.Show("Devolução Efetuada", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information); conexao.Close(); limparForm(); }