Exemplo n.º 1
0
        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++;
            }
        }
Exemplo n.º 2
0
        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();
        }