Exemple #1
0
        public override void Deletar()
        {
            base.Deletar();

            var selecionado = gvConta.GetSelectedRow();

            if (selecionado == null)
            {
                Mensagens.Selecionar();
            }

            int ID = selecionado.ID;

            var consulta = new QDuplicata();

            var duplicata = consulta.Buscar(ID).FirstOrDefaultDynamic();

            if (Mensagens.Deletar() == System.Windows.Forms.DialogResult.Yes)
            {
                var posicaoTransacao = 0;
                consulta.Deletar(duplicata, ref posicaoTransacao);
                Mensagens.Deletado();
                Buscar();
            }
        }
Exemple #2
0
        public override void Alterar()
        {
            base.Alterar();

            var selecionado = gvConta.GetSelectedRow();

            if (selecionado == null)
            {
                Mensagens.Selecionar();
            }
            else
            {
                var duplicata = new QDuplicata().Buscar((selecionado.ID as int?).Padrao()).FirstOrDefaultDynamic();

                using (var alterar = new FContas_Cadastro()
                {
                    duplicata = duplicata, Modo = Modo.Alterar
                })
                {
                    if (alterar.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        teIdentificador.Text = alterar.duplicata.ID_DUPLICATA.ToString();
                        Mensagens.Sucesso();
                        Buscar();
                    }
                }
            }
        }
Exemple #3
0
        private void CalculaSubtotal()
        {
            try
            {
                decimal desconto   = seDesconto.Value;
                decimal subtotal   = 0m;
                decimal apagar     = 0m;
                decimal entrega    = seEntrega.Value;
                decimal liquidado  = 0m;
                decimal descontado = 0m;

                if (ID_Nota != 0)
                {
                    liquidado  = new QDuplicata().BuscaTotalLiquidado(ID_Nota);
                    descontado = new QDuplicata().BuscaTotalDesconto(ID_Nota);
                    vlPrazo    = new QDuplicata().BuscaTotalAprazo(ID_Nota);
                }

                var PagamentoPedido = new SYS.QUERYS.Lancamentos.Comercial.QPedido().Buscar(ID_Pedido).ToList();

                for (int i = 0; i < bsItens.Count; i++)
                {
                    subtotal += (bsItens[i] as MPedidoItem).VL_SUBTOTAL;
                }

                foreach (var posicaoRow in gvItens.GetSelectedRows())
                {
                    apagar += ((decimal?)gvItens.GetRowCellValue(posicaoRow, colVL_SUBTOTAL)).Padrao();
                }

                seSubtotal.Value = subtotal;
                seApagar.Value   = (apagar == 0 ? subtotal : apagar) - desconto - liquidado - descontado - vlPrazo + entrega;

                //if (ID_Pedido != 0 && PagamentoPedido[0].ID_FORMAPAGAMENTO != "")
                //    seApagar.Value = 0m;

                if (seApagar.Value <= 0)
                {
                    seDesconto.Value = 0m;
                    seApagar.Value   = ID_Nota > 0 ? seApagar.Value : subtotal;

                    //if (ID_Pedido != 0 && PagamentoPedido[0].ID_FORMAPAGAMENTO != "")
                    //    seApagar.Value = 0m;
                }
            }
            catch (Exception)
            {
            }
        }
Exemple #4
0
        private void afterGravar(string TpPagamento)
        {
            var     teste     = gvItens.SelectedRowsCount;
            int     transacao = 0;
            decimal valorDoc  = 0m;

            decimal liquidado  = new QDuplicata().BuscaTotalLiquidado(ID_Nota);
            decimal descontado = new QDuplicata().BuscaTotalDesconto(ID_Nota);

            valorDoc = seApagar.Value > seSubtotal.Value - liquidado ? seSubtotal.Value - liquidado : seApagar.Value;
            vl_troco = TpPagamento == "01" && ValorPago > seApagar.Value - liquidado ? ValorPago - (seApagar.Value - liquidado) : 0;

            if (seSubtotal.Value - (valorDoc + liquidado + descontado + seDesconto.Value) == 0)
            {
                vPedido.ST_PEDIDO = "F";
            }
            else
            {
                vPedido.ST_PEDIDO = "O";
            }

            if (vPedido.ID_PEDIDO == 0 && ID_Pedido > 0)
            {
                vPedido.ID_PEDIDO = ID_Pedido;
            }

            vPedido.CONDICAO_PAGAMENTO = TpPagamento;

            bool _parcial = ((seApagar.Value + seDesconto.Value - seEntrega.Value) != seSubtotal.Value);

            var _pedido = new MPedido();

            if (_parcial)
            {
                _pedido.ID_PEDIDO_ORIGEM   = vPedido.ID_PEDIDO;
                _pedido.ID_EMPRESA         = vPedido.ID_EMPRESA;
                _pedido.ID_CLIFOR          = vPedido.ID_CLIFOR;
                _pedido.ID_CARTAO          = vPedido.ID_CARTAO;
                _pedido.ID_MESA            = vPedido.ID_MESA;
                _pedido.ID_USUARIO         = vPedido.ID_USUARIO;
                _pedido.CONDICAO_PAGAMENTO = vPedido.CONDICAO_PAGAMENTO;
                _pedido.ST_ATIVO           = vPedido.ST_ATIVO;
                _pedido.ST_PEDIDO          = "F";
                _pedido.TP_MOVIMENTO       = vPedido.TP_MOVIMENTO;
            }


            var pedido = new SYS.QUERYS.Lancamentos.Gourmet.QPedido();

            pedido.Gravar(_parcial ? _pedido : vPedido, ref transacao, null, false);
            ID_Pedido = pedido.id_pedido;
            ID_Nota   = pedido.id_nota;

            if (_parcial)
            {
                var _item = new MPedidoItem();

                var selecionados = gvItens.SelectedRowsCount;

                //for (int i = 0; i < selecionados; i++)
                //{
                //    _item.ID_ITEM = ((int?)gvItens.GetRowCellValue(i, colID_ITEM)).Padrao();
                // _item.ID_PEDIDO = _pedido.ID_PEDIDO;
                // new SYS.QUERYS.Lancamentos.Gourmet.QPedido().AtualizaPedidoItem(_pedido, _item, vPedido.ID_PEDIDO, ref transacao);
                //}

                foreach (var posicaoRow in gvItens.GetSelectedRows())
                {
                    _item.ID_ITEM   = ((int?)gvItens.GetRowCellValue(posicaoRow, colID_ITEM)).Padrao();
                    _item.ID_PEDIDO = _pedido.ID_PEDIDO;
                    new SYS.QUERYS.Lancamentos.Gourmet.QPedido().AtualizaPedidoItem(_pedido, _item, vPedido.ID_PEDIDO, ref transacao);
                }

                if (_parcial)
                {
                    BuscarItens();
                }
            }

            GravaPedido = false;



            if (vPedido.ID_PEDIDO == 0 && ID_Pedido > 0)
            {
                vPedido.ID_PEDIDO = ID_Pedido;
            }

            GravaPedido = false;

            CalculaSubtotal();

            //if (MessageBox.Show("Deseja imprimir demonstrativo de consumo?", "Pergunta!", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            //    new SYS.QUERYS.Lancamentos.Comercial.QPedido().ImprimirConsumacao(ID_Pedido);

            ImprimirComanda();

            if (seApagar.Value <= 0)
            {
                Imprimir();
                this.ConfirmarOP = true;
                this.Close();
            }

            lb_troco.Text    = "Troco: " + vl_troco.ToString("n2");
            lb_troco.Visible = false;
        }
Exemple #5
0
        private void afterGravar(string condicao, decimal valor)
        {
            if (gvItens.DataSource == null)
            {
                return;
            }

            if (valor < seTotalPagar.Value)
            {
                valor = seTotalPagar.Value;
            }


            if (condicao == "01")
            {
                if (XtraMessageBox.Show("Confirmar fechamento em dinheiro?", "Pergunta", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                {
                    return;
                }
            }

            if (condicao == "03")
            {
                if (XtraMessageBox.Show("Confirmar fechamento em cartão de crédito?", "Pergunta", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                {
                    return;
                }
            }

            if (condicao == "04")
            {
                if (XtraMessageBox.Show("Confirmar fechamento em cartão de débito?", "Pergunta", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                {
                    return;
                }
            }

            if (condicao == "05")
            {
                BuscaClifor();
            }

            decimal valorDoc = 0m;

            decimal liquidado  = new QDuplicata().BuscaTotalLiquidado(ID_NOTA);
            decimal descontado = new QDuplicata().BuscaTotalDesconto(ID_NOTA);

            valorDoc   = valor > seTotalPagar.Value - liquidado ? seTotalPagar.Value - liquidado : valor;
            valorTroco = condicao == "01" && valor > seTotalPagar.Value - liquidado ? valor - (seTotalPagar.Value - liquidado) : 0;

            var vpedido = new MPedido();

            vpedido.ID_EMPRESA         = 1;
            vpedido.ID_CLIFOR          = ID_Clifor;
            vpedido.ST_ATIVO           = gvItens.DataRowCount > 0;
            vpedido.ST_PEDIDO          = "F";
            vpedido.TP_MOVIMENTO       = "S";
            vpedido.CONDICAO_PAGAMENTO = condicao;
            vpedido.VALO_DOCUMENTO     = valorDoc;

            for (int i = 0; i < bsItens.Count; i++)
            {
                vpedido.Itens.Add((bsItens[i] as MPedidoItem));
            }

            var pedido           = new SYS.QUERYS.Lancamentos.Comercial.QPedido();
            var posicaoTransacao = 0;


            pedido.Gravar(vpedido, false, ref posicaoTransacao);

            NR_pedido = pedido.ID_PEDIDO;
            ID_NOTA   = pedido.ID_NOTA;

            calculaSubTotal(true);

            if (seTotalPagar.Value > 0)
            {
                bsItens.Clear();
                zeracampos();
                if (valorTroco > 0)
                {
                    teNM.Text = "Troco: " + valorTroco.ToString("N2");
                }
            }

            //if(Mensagens.Pergunta("Deseja enviar e imprimir NFC-e?") == DialogResult.Yes)
            //{
            //    var processador = new FComunicadorFiscal_Processamento();

            //    var documento = QQuery.BancoDados.TB_FAT_NOTA_X_DOCUMENTOs.FirstOrDefault(a => a.ID_NOTA == pedido.ID_NOTA && a.ID_EMPRESA == vpedido.ID_EMPRESA);
            //    processador.Enviar(documento.ID_DOCUMENTO, documento.ID_EMPRESA, Modelo.NFCe, Ambiente.Producao, Emissao.ContigenciaOFFLINE, ImpressaoDANFE.NFCe);
            //}
        }