private bool InsertaPartidas()
        {
            try
            {
                foreach (var v in ventas)
                {
                    partidas = ventapController.SelectPartidas(v.VentaId);

                    foreach (var p in partidas)
                    {
                        p.VentapId      = 0;
                        p.VentaId       = venta.VentaId;
                        p.ClaveProdServ = "01010101";
                        p.ClaveUnidad   = "ACT";
                        p.ProductoId    = "01010101";
                        p.Descripcion   = "VENTA " + v.NoRef;
                        ventapController.InsertOne(p);
                    }
                }



                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
Exemplo n.º 2
0
 private void GuardaPartidas()
 {
     foreach (var p in partidas)
     {
         if (ventapController.InsertOne(p))
         {
             var prod = productoController.SelectOne(p.ProductoId);
             if (prod != null)
             {
                 //if (loteController.RestaLote(prod, p.Cantidad))
                 //{
                 //    if (!inventarioController.AfectaInventario(p.ProductoId, -p.Cantidad))
                 //        Ambiente.Mensaje("Algo salió mal al afectar el inventario");
                 //}
                 //else
                 // Ambiente.Mensaje("Algo salió mal al restar el lote");
             }
             else
             {
                 Ambiente.Mensaje("Algo salió mal con la partida: " + p.Descripcion);
             }
         }
         else
         {
             Ambiente.Mensaje("Algo salió mal con la partida: " + p.Descripcion);
         }
     }
 }
Exemplo n.º 3
0
        private void InsertarPartidas()
        {
            if (venta.VentaId <= 0)
            {
                Ambiente.Mensaje("La venta no existe");
                return;
            }

            for (int i = 0; i < 2; i++)
            {
                //partida a la lista
                var partida = new Ventap();
                partida.VentaId     = venta.VentaId;
                partida.ProductoId  = "01010101";
                partida.Descripcion = "VENTA ";
                partida.Descuento   = 0;
                partida.Cantidad    = 1;

                if (i == 0)
                {
                    partida.Precio         = TxtImporteIva16.Value;
                    partida.ClaveImpuesto1 = "002";
                    partida.Impuesto1      = 0.160000m;
                    partida.ClaveImpuesto2 = "002";
                    partida.Impuesto2      = 0.000000m;
                }
                else if (i == 1)
                {
                    partida.Precio         = TxtImporteExcento.Value;
                    partida.ClaveImpuesto1 = "002";
                    partida.Impuesto1      = 0.000000m;
                    partida.ClaveImpuesto2 = "002";
                    partida.Impuesto2      = 0.000000m;
                }

                partida.LoteId    = null;
                partida.NoLote    = null;
                partida.Caducidad = null;

                partida.PrecioCaja    = 0;
                partida.ClaveProdServ = "01010101";
                partida.ClaveUnidad   = "ACT";
                partida.Unidad        = "SYS";

                partida.TasaOcuota1      = "Tasa";
                partida.TasaOcuota2      = "Tasa";
                partida.SubTotal         = partida.Cantidad * partida.Precio;
                partida.ImporteImpuesto1 = partida.SubTotal * partida.Impuesto1;
                partida.ImporteImpuesto2 = partida.SubTotal * partida.Impuesto2;
                partida.Total            = partida.SubTotal + partida.ImporteImpuesto1 + partida.ImporteImpuesto2;

                if (ventapController.InsertOne(partida))
                {
                    venta.SubTotal += partida.SubTotal;
                    venta.Impuesto += partida.ImporteImpuesto1 + partida.ImporteImpuesto2;
                    venta.Total     = venta.SubTotal + venta.Impuesto;
                }
            }
        }
Exemplo n.º 4
0
 private void GuardaPartidas()
 {
     foreach (var p in partidas)
     {
         if (!ventapController.InsertOne(p))
         {
             Ambiente.Mensaje("Algo salió mal con la partida: " + p.Descripcion);
         }
     }
 }
Exemplo n.º 5
0
        private bool ClonarVenta()
        {
            if (venta == null)
            {
                Ambiente.Mensaje("La venta ya no existe");
                return(false);
            }

            partidas = ventapController.SelectPartidas(venta.VentaId);
            if (partidas.Count == 0)
            {
                Ambiente.Mensaje("La venta ya no tiene partidas");
                return(false);
            }

            if (venta.UuId != null)
            {
                Ambiente.Mensaje("No se clono la venta. Este documento ya es  una factura. ");
                return(false);
            }

            //Anular la el ticket antes de insertar la factura
            venta.Anulada = true;
            if (ventaController.UpdateOne(venta))
            {
                if (cliente == null || formaPago == null || metodoPago == null || usocfdi == null)
                {
                    Ambiente.Mensaje("cliente || formaPago || metodoPago || usocfdi == null");
                    venta.Anulada = false;
                    ventaController.UpdateOne(venta);
                    return(false);
                }

                venta.ClienteId  = cliente.ClienteId;
                venta.FormaPago1 = formaPago.FormaPagoId;
                venta.MetodoPago = metodoPago.MetodoPagoId;
                venta.UsoCfdi    = usocfdi.UsoCfdiid;



                venta.NoRef             = Ambiente.TraeSiguiente("FAC");
                venta.VentaOrigen       = venta.VentaId;
                venta.VentaId           = 0;
                venta.TipoDocId         = "FAC";
                venta.Anulada           = false;
                venta.EsConversiondeTaF = true;
                if (ventaController.InsertOne(venta))
                {
                    foreach (var p in partidas)
                    {
                        p.VentapId = 0;
                        p.VentaId  = venta.VentaId;
                        if (!ventapController.InsertOne(p))
                        {
                            Ambiente.Mensaje("La partida tuvo problemas al re-insertarse");
                        }
                    }
                    Ambiente.UpdateSiguiente("FAC");
                }
                else
                {
                    Ambiente.Mensaje("Imposible re-insertar la venta");
                    return(false);
                }
            }
            else
            {
                Ambiente.Mensaje("Imposible anular el ticket");
                return(false);
            }
            return(true);
        }