Beispiel #1
0
 public frmVendaControlar(Usuario user, String alu_id)
 {
     InitializeComponent();
     this.alu_id = alu_id;
     this.user = user;
     ven = new Venda();
     lblUserLogado.Text = user.Login;
     atualizaInfo();
     if (alu_id != "")
     {
         btnBuscar.Visible = false;
         btnExcluir.Visible = false;
         btnInfo.Enabled = false;
         gpbFiltros.Visible = false;
         gpbInfo.Visible = false;
         this.Text = "Vendas cobradas nesta mensalidade";
         dtgvVendas.DataSource = ven.getVendasSemEntrada(alu_id);
     }
     else
     {
         dtpInicio.Value = DateTime.Today.AddDays(-1);
         btnExcluir.Enabled = false;
         btnInfo.Enabled = false;
         btnBuscar_Click(this, null);
     }
 }
Beispiel #2
0
        public Venda getById(String cod)
        {
            Venda ven = new Venda();
            sql = "SELECT * FROM venda WHERE ven_cod = @1";
            sql = sql.Replace("@1", cod);
            bco.conecta();
            bco.beginTransaction();
            bco.executeQuery(sql, out dt);
            if (dt.Rows.Count > 0)
            {
                ven.Cod = cod;
                ven.AcessId = dt.Rows[0]["acess_id"].ToString();
                ven.AluId = dt.Rows[0]["alu_id"].ToString();
                ven.Data = dt.Rows[0]["ven_data"].ToString();
                ven.Valor = dt.Rows[0]["ven_valor"].ToString();
            }
            try
            {
                bco.commitTransaction();
            }
            catch
            {
                bco.rollbackTransaction();
            }
            bco.desconecta();

            if (ven.AluId == "")
                ven.FormaPgmto = "À vista";
            else
            {
                sql = "SELECT cai_data FROM entrada WHERE ven_cod = @1";
                sql = sql.Replace("@1", cod);
                bco.conecta();
                bco.executeQuery(sql, out dt);
                bco.desconecta();
                if (dt.Rows.Count > 0)
                {
                    if (!dt.Rows[0]["cai_data"].ToString().Equals(ven.Data))
                        ven.FormaPgmto = "Na mensalidade";
                    else
                        ven.FormaPgmto = "À vista";
                }
                else
                    ven.FormaPgmto = "Na mensalidade";
            }

            sql = "SELECT * FROM venda_produto WHERE ven_cod = @1";
            sql = sql.Replace("@1", cod);
            bco.conecta();
            bco.executeQuery(sql, out dt);
            bco.desconecta();
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                ven.addItem(dt.Rows[i]["prod_id"].ToString(), dt.Rows[i]["item_qtde"].ToString(),
                    dt.Rows[i]["item_valor"].ToString());
            }
            return ven;
        }
Beispiel #3
0
 public void estoqueRestaurar(Venda ven)
 {
     ven.setItensVenda(getItensVendaById(ven.Cod));
     foreach (ItensVenda p in ven.getItens())
     {
         sql = "UPDATE produto SET prod_estatual = prod_estatual + @1 WHERE prod_id = @2";
         sql = sql.Replace("@1", p.Qtde);
         sql = sql.Replace("@2", p.ProdId);
         bco.executeNonQuery(sql);
     }
 }
Beispiel #4
0
 public bool excluir(Venda ven)
 {
     bco.conecta();
     bco.beginTransaction();
     entradaExcluir(ven.Cod);
     estoqueRestaurar(ven);
     itensVendaExcluir(ven.Cod);
     vendaExcluir(ven.Cod);
     try
     {
         bco.commitTransaction();
         result = true;
     }
     catch
     {
         bco.rollbackTransaction();
         result = false;
     }
     return result;
 }
Beispiel #5
0
        public frmMensalidadePgmto(Usuario user, String matCod)
        {
            InitializeComponent();
            Caixa cai = new Caixa();
            cai.CaiData = DateTime.Today.ToShortDateString();
            cai = cai.getCaixaByData();
            if (cai.CaiAbert == "")
            {
                MessageBox.Show("Caixa não foi aberto!", "Venda não permitida!", MessageBoxButtons.OK,
                    MessageBoxIcon.Exclamation);
                this.Close();
            }
            chkDesc.Checked = false;
            valorMens = valorDesc = valorFinal = valorProporcional = 0;
            this.user = user;
            mat = new Matricula();
            mat.Id = matCod;
            mat = mat.getById();
            lblMatCod.Text = mat.Id;
            lblMatDtIni.Text = DateTime.Parse(mat.DtIni).ToShortDateString();
            lblMatVenc.Text = mat.DtVcmto;
            Modalidade modAux = new Modalidade();
            modAux.Id = mat.ModId;
            modAux = modAux.getById();
            valorMens = Convert.ToDecimal(modAux.ValorM);
            lblValorMens.Text = "R$" + valorMens;
            if (!lblValorMens.Text.Contains(","))
                lblValorMens.Text += ",00";
            atualizaTotal();
            lblUserOn.Text = user.Login;

            mov = new Movimentacao();
            mov.MatCod = mat.Id;
            int qtdeMensalidades = mov.getQtdeMensalidades();
            int fatorPrimeiraParcela = 0;
            String[] diaInicio = mat.DtIni.Split('/');
            if (mat.DtVcmto != diaInicio[0])
            {
                fatorPrimeiraParcela = 1;
                if (qtdeMensalidades == 0) //primeira mens. com valor proporcional a calcular
                {
                    chkProporcional.Visible = true;
                    lblValorProp.Visible = true;
                    Decimal valorDia = Convert.ToDecimal(modAux.ValorM) / 30;
                    DateTime dtInicial = DateTime.Parse(mat.DtIni);
                    DateTime dtVcmto = new DateTime(DateTime.Today.Year, DateTime.Today.Month + 1, Convert.ToInt32(mat.DtVcmto));
                    TimeSpan dif = dtVcmto - dtInicial;
                    valorProporcional = dif.Days * valorDia;
                    valorProporcional = Math.Round(valorProporcional, 2);
                    atualizaTotal();
                }
            }
            DateTime mensAtual = DateTime.Parse(mat.DtIni).AddMonths(qtdeMensalidades + fatorPrimeiraParcela);
            DateTime mensAtual2 = new DateTime(mensAtual.Year, mensAtual.Month, Convert.ToInt32(mat.DtVcmto));
            lblMensVenc.Text = mensAtual2.ToShortDateString();

            Venda ven = new Venda();
            dtVendasSemEntrada = ven.getVendasSemEntrada(mat.AluId);
            if (dtVendasSemEntrada.Rows.Count > 0) //possui vendas sem pagar
            {
                valorProdutos = 0;
                for (int i = 0; i < dtVendasSemEntrada.Rows.Count; i++)
                    valorProdutos += Convert.ToDecimal(dtVendasSemEntrada.Rows[i]["ven_valor"]);
                lblProdutosValor.Text = "R$"+valorProdutos;
                if (!lblProdutosValor.Text.Contains(','))
                    lblProdutosValor.Text += ",00";
                atualizaTotal();
                gpbProdutos.Enabled = true;
            }
            else
                gpbProdutos.Enabled = false;
        }
Beispiel #6
0
 public frmVendaNova(Usuario user, String venCod)
 {
     InitializeComponent();
     Caixa cai = new Caixa();
     cai.CaiData = DateTime.Today.ToShortDateString();
     cai = cai.getCaixaByData();
     if (cai.CaiAbert == "")
     {
         MessageBox.Show("Caixa não foi aberto!", "Venda não permitida!", MessageBoxButtons.OK,
             MessageBoxIcon.Exclamation);
         this.Close();
     }
     inicializaItensVenda();
     this.user = user;
     lblUserOn.Text = user.Login;
     if (venCod != "")
     {
         ven = new Venda();
         ven.Cod = venCod;
         ven = ven.getById();
         btnConfirmar.Visible = false;
         gpbProduto.Visible = false;
         Usuario userAux = new Usuario();
         userAux.Id = Convert.ToInt32(ven.AcessId);
         userAux = userAux.getUserById();
         lblQuemRealizou.Text = userAux.Login;
         lblDataVenda.Text = Convert.ToDateTime(ven.Data).ToShortDateString();
         btnAluAdd.Visible = false;
         btnClear.Visible = false;
         btnConfirmar.Visible = false;
         btnRemoveItem.Visible = false;
         cbbFormaPgmto.Enabled = false;
         foreach (ItensVenda p in ven.getItens())
         {
             DataRow linha = dttItensVenda.NewRow();
             linha["prod_id"] = p.ProdId;
             Produto prod = new Produto();
             prod.Id = p.ProdId;
             prod = prod.getById();
             linha["nome"] = prod.Desc;
             linha["qtde"] = p.Qtde;
             linha["valor"] = p.Valor;
             linha["preco_unit"] = Convert.ToDecimal(p.Valor) / Convert.ToInt32(p.Qtde);
             qtdeTotal += Convert.ToInt32(p.Qtde);
             dttItensVenda.Rows.Add(linha);
         }
         if (ven.AluId != "")
         {
             Aluno aluAux = new Aluno();
             aluAux.Id = Convert.ToInt32(ven.AluId);
             aluAux = aluAux.getAlunoById();
             ttbAluNome.Text = aluAux.Nome;
         }
         else
             ttbAluNome.Text = "---";
         lblQtdeItens.Text = "" + qtdeTotal;
         lblValorTotal.Text = ven.Valor;
         cbbFormaPgmto.Text = ven.FormaPgmto;
     }
     else
     {
         ttbQtde.Enabled = false;
         lblDataVenda.Text = DateTime.Today.ToShortDateString();
         lblQuemRealizou.Text = user.Login;
         valor = 0;
         qtde = 1;
         valorTotal = 0;
         qtdeTotal = 0;
         lblValorTotal.Text = "R$" + valorTotal;
         lblQtdeItens.Text = "" + qtdeTotal;
         lblSubTotal.Text = "R$" + qtde * valor;
         btnClear.Enabled = false;
         btnRemoveItem.Enabled = false;
         cbbFormaPgmto.Text = "À vista";
         cbbFormaPgmto.Enabled = false;
     }
 }
Beispiel #7
0
 private void btnConfirmar_Click(object sender, EventArgs e)
 {
     if (MessageBox.Show("Deseja realmente realizar a venda?", "Vender?", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
         == DialogResult.Yes)
     {
         ven = new Venda();
         for (int i = 0; i < dttItensVenda.Rows.Count; i++)
         {
             ven.addItem(dttItensVenda.Rows[i]["prod_id"].ToString(),
                 dttItensVenda.Rows[i]["qtde"].ToString(),
                 dttItensVenda.Rows[i]["valor"].ToString());
         }
         ven.verificaEstoque();
         if (ven.Msg != "")
         {
             MessageBox.Show(ven.Msg, "Venda não pode ser realizada!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
             inicializaItensVenda();
             atualizaTotais();
         }
         else //realiza venda
         {
             ven.Data = DateTime.Today.ToShortDateString();
             if (alu != null)
                 ven.AluId = "" + alu.Id;
             ven.Valor = lblValorTotal.Text;
             ven.AcessId = "" + user.Id;
             ven.FormaPgmto = cbbFormaPgmto.Text;
             if (ven.gravar())
             {
                 if (ven.FormaPgmto.Equals("À vista"))
                 {
                     Movimentacao mov = new Movimentacao();
                     mov.AcessId = ven.AcessId;
                     mov.CaiData = ven.Data;
                     mov.Desc = "venda produto";
                     mov.Valor = ven.Valor;
                     mov.VenCod = ven.Cod;
                     mov.novaEntrada();
                 }
                 MessageBox.Show("Venda realizada com sucesso!", "Sucesso!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 if (MessageBox.Show("Deseja emitir recibo?", "Recibo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                 {
                     //chamar relatório vendas passando ven_id
                     MessageBox.Show("utilizirá relatório!", "Em breve!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 }
                 this.Close();
             }
             else
                 MessageBox.Show("Ocorreu um erro ao realizar a venda!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
Beispiel #8
0
        private bool gravaVenda(Venda ven)
        {
            String aluPart1, aluPart2;

            if (ven.AluId == "")
            {
                aluPart1 = ",";
                aluPart2 = ",";
            }
            else
            {
                aluPart1 = ",alu_id,";
                aluPart2 = "," + ven.AluId + ",";
            }
            sql = "INSERT INTO venda(ven_data" + aluPart1 + "ven_valor, acess_id)" +
            " VALUES ('@1' " + aluPart2 + "'@3', '@4')";
            sql = sql.Replace("@1", ven.Data);
            sql = sql.Replace("@3", ven.Valor);
            sql = sql.Replace("@4", ven.AcessId);
            result = bco.executeNonQuery(sql);
            return result;
        }
Beispiel #9
0
 private bool gravaItens(Venda ven)
 {
     List<ItensVenda> itens = ven.getItens();
     foreach (ItensVenda p in itens)
     {
         sql = "INSERT INTO venda_produto(ven_cod, prod_id, item_valor, item_qtde)" +
           " VALUES ('@1', '@2', '@3', '@4')";
         sql = sql.Replace("@1", ven.Cod);
         sql = sql.Replace("@2", p.ProdId);
         sql = sql.Replace("@3", p.Valor);
         sql = sql.Replace("@4", p.Qtde);
         result = bco.executeNonQuery(sql);
         //baixa estoque
         sql = "UPDATE produto SET prod_estatual = prod_estatual - '@1' WHERE prod_id = @2";
         sql = sql.Replace("@1", p.Qtde);
         sql = sql.Replace("@2", p.ProdId);
         result = bco.executeNonQuery(sql);
     }
     return result;
 }
Beispiel #10
0
 public bool gravar(Venda ven)
 {
     bco.conecta();
     bco.beginTransaction();
     result = gravaVenda(ven);
     if (result)
         ven.Cod = getLastId();
     gravaItens(ven);
     try
     {
         bco.commitTransaction();
         result = true;
     }
     catch
     {
         bco.rollbackTransaction();
         result = false;
     }
     bco.desconecta();
     return result;
 }