Example #1
0
        private void toolStripButton_Reeimprimir_Click(object sender, EventArgs e)
        {
            var idTickets = "0";
            var contador  = 0;

            dataGridView1.EndEdit();
            foreach (DataGridViewRow registro in dataGridView1.Rows)
            {
                try
                {
                    if ((Boolean)registro.Cells["Seleccionar"].Value != true)
                    {
                        continue;
                    }
                    contador++;
                    idTickets += "," + registro.Cells["ID"].Value;
                }
                catch
                {
                    // ignored
                }
            }

            if (contador == 0)
            {
                MessageBox.Show(@"Debe seleccionar al menos un pedido.");
                return;
            }

            var parts = idTickets.Split(',');

            foreach (string part in parts)
            {
                if (part == "0" || part == "")
                {
                    continue;
                }
                var clPrinPedido = new Classes.Print.Class_Pedido(part);
                clPrinPedido.Imprimir();
            }
        }
Example #2
0
        private void button_Terminar_Click(object sender, EventArgs e)
        {
            double fPropina = 0;

            if (textBox_Propina.Text.Trim() != "")
            {
                try
                {
                    fPropina = Convert.ToDouble(textBox_Propina.Text.Trim());
                }
                catch
                {
                    MessageBox.Show("El monto ingresado como propina es incorrecto");
                    return;
                }
            }

            DialogResult Resp = MessageBox.Show(@"Esta usted seguro de cerrar la venta?", "Confirmar", MessageBoxButtons.YesNo);

            if (Resp == DialogResult.Yes)
            {
                if (FPAGADO >= FTOTAL)
                {
                    if (Math.Abs(FTOTAL - FPAGADO) > Efectivo)
                    {
                        MessageBox.Show("El monto para dar cambio es mayor al que se tiene como efectivo");
                        button_Terminar.Enabled = false;
                        return;
                    }
                }

                double CambioReal   = Math.Abs(FTOTAL - FPAGADO);
                double EfectivoReal = Efectivo - CambioReal;



                if (EfectivoReal > 0)
                {
                    ClsPagoPedido.InsertaInformacionbyValor(IdPedido, "1", EfectivoReal);//1	1	01	Efectivo
                }

                if (Credito > 0)
                {
                    ClsPagoPedido.InsertaInformacionbyValor(IdPedido, "4", Credito);//4	1	04	Tarjeta de crédito
                }
                if (Debito > 0)
                {
                    ClsPagoPedido.InsertaInformacionbyValor(IdPedido, "18", Debito);//18	1	28	Tarjeta de débito
                }
                if (Vales > 0)
                {
                    ClsPagoPedido.InsertaInformacionbyValor(IdPedido, "7", Vales);//7	1	08	Vales de despensa
                }
                if (Cheque > 0)
                {
                    ClsPagoPedido.InsertaInformacionbyValor(IdPedido, "2", Cheque);//2	1	02	Cheque nominativo
                }
                if (Otro > 0)
                {
                    ClsPagoPedido.InsertaInformacionbyValor(IdPedido, "20", Otro);//20	1	99	Pordefinir
                }
                ///Obtenemos la Ganancia
                object    oGanancia = null;
                DataTable dtDetalle = ClsDetallePedidos.getDetallePedido(IdPedido);
                if (dtDetalle.Rows.Count > 0)
                {
                    oGanancia = dtDetalle.Compute("Sum(fGanancia)", string.Empty);
                }

                double fGanancia = 0;
                try
                {
                    if (oGanancia != null)
                    {
                        fGanancia = Convert.ToDouble(oGanancia);
                    }
                }
                catch { }

                ///Cerramos y
                if (!ClsPedidos.CierraVenta(IdPedido, FTOTAL.ToString(), CambioReal.ToString(), fPropina, fGanancia))
                {
                    MessageBox.Show("Problema al Cerrar la venta, contacte al administrador");
                    return;
                }


                /// Imprimimos.
                DialogResult RespPrin = MessageBox.Show(@"Desea Imprimir el ticket?", "Confirmar", MessageBoxButtons.YesNo);
                if (RespPrin == DialogResult.Yes)
                {
                    Classes.Print.Class_Pedido ClsPrint = new Classes.Print.Class_Pedido(IdPedido);
                    ClsPrint.Imprimir();
                }

                ///Restamos Existencia
                ClsProcesoRestar.RestaExisteciaVenta(IdPedido);


                /////////Enviar ticket a la Nuve
                DataRow[] RowVal;
                if (Classes.Class_Session.dtParamConf != null)
                {
                    RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Utilizar Auto-Factura? (SI/NO)'");
                    if (RowVal.Count() > 0)
                    {
                        if (RowVal[0]["vchConfiguracion"].ToString().Trim() == "SI")
                        {
                            try
                            {
                                DataTable dtPedido = ClsPedidos.getLista(" AND iidPedido = " + IdPedido);
                                if (dtPedido.Rows.Count > 0)
                                {
                                    DataTable pedido = new DataTable("pedido");


                                    pedido.Columns.Add("KEY", typeof(string));
                                    pedido.Columns.Add("Id", typeof(string));
                                    pedido.Columns.Add("SubTotal", typeof(float));
                                    pedido.Columns.Add("Descuento", typeof(float));
                                    pedido.Columns.Add("IVA", typeof(float));
                                    pedido.Columns.Add("Total", typeof(float));
                                    pedido.Columns.Add("ID_EMPRESA", typeof(string));
                                    pedido.Columns.Add("fechaTicket", typeof(string));
                                    DataRow ROW = pedido.NewRow();

                                    ROW["KEY"]         = dtPedido.Rows[0]["vchkey"].ToString();
                                    ROW["Id"]          = IdPedido;
                                    ROW["SubTotal"]    = dtPedido.Rows[0]["fSubtotal"].ToString();
                                    ROW["Descuento"]   = dtPedido.Rows[0]["fDescuento"].ToString();
                                    ROW["IVA"]         = dtPedido.Rows[0]["IVA"].ToString();
                                    ROW["Total"]       = dtPedido.Rows[0]["fTotal"].ToString();
                                    ROW["ID_EMPRESA"]  = dtPedido.Rows[0]["ID_EMPRESA"].ToString();
                                    ROW["fechaTicket"] = dtPedido.Rows[0]["dfechaIn126"].ToString();
                                    pedido.Rows.Add(ROW);

                                    wschefControl.Service1 WebSer = new wschefControl.Service1();

                                    try
                                    {
                                        WebSer.Upticket(pedido); //se sube la factura
                                    }
                                    catch (System.Exception)
                                    {
                                        MessageBox.Show("Error al enviar información de autofactura.");
                                    }
                                }
                            }
                            catch { }
                        }
                    }
                }
                ///////////////

                this.Close();
                try
                {
                    lista_pedidos();
                }
                catch { }
            }
        }