Ejemplo n.º 1
0
 public void Procesar()
 {
     foreach (var reporte in reportes)
     {
         reporte.InversionUnidadesProducto = SqliteMoneda.ConvertirAOriginal(reporte.InversionUnidadesProducto);
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Carga y retorna un lote de la base de datos a partir de su id.
        /// </summary>
        /// <param name="id">Id del lote.</param>
        /// <returns>El lote encontrado. Si no se encontro se retorna <see langword="null"/>.</returns>
        public LoteModelo CargarLote_PorId(int id)
        {
            using IDbConnection conexion = new SQLiteConnection(stringConexion);

            var q = $@"select lotes.Id,
                            lotes.UnidadesCompradas,
                            lotes.UnidadesDisponibles,
                            lotes.Inversion,
                            lotes.PrecioVentaUnidad,
                            datetime(lotes.FechaCreacion, 'unixepoch', 'localtime') as 'FechaCreacion',
                            p.*
                            from Lotes
                            join productos p on p.id = lotes.ProductoId
                            where lotes.id = @loteId";

            LoteModelo f(LoteModelo l, ProductoModelo p)
            {
                l.Producto = p; return(l);
            }

            var lote = conexion.Query <LoteModelo, ProductoModelo, LoteModelo>(q, f, new { loteId = id }).FirstOrDefault();

            if (lote == null)
            {
                return(null);
            }

            lote.Inversion         = SqliteMoneda.ConvertirAOriginal(lote.Inversion);
            lote.PrecioVentaUnidad = SqliteMoneda.ConvertirAOriginal(lote.PrecioVentaUnidad);

            return(lote);
        }
Ejemplo n.º 3
0
 public void Procesar()
 {
     foreach (var reporte in reportes)
     {
         reporte.InversionLote     = SqliteMoneda.ConvertirAOriginal(reporte.InversionLote);
         reporte.PrecioVentaUnidad = SqliteMoneda.ConvertirAOriginal(reporte.PrecioVentaUnidad);
     }
 }
Ejemplo n.º 4
0
 public void Procesar()
 {
     // Convertir representacion interna de la moneda a la representacion original.
     foreach (var reporte in reportes)
     {
         reporte.InversionLote     = SqliteMoneda.ConvertirAOriginal(reporte.InversionLote);
         reporte.PrecioVentaUnidad = SqliteMoneda.ConvertirAOriginal(reporte.PrecioVentaUnidad);
     }
 }
Ejemplo n.º 5
0
        /// <summary>
        /// Carga y retorna una venta a partir del id especificado.
        /// </summary>
        /// <param name="id">El id de la venta.</param>
        /// <returns>La venta si existe, <see langword="null"/> si no. </returns>
        public VentaModelo CargarVenta_PorId(int ventaId)
        {
            using IDbConnection conexion = new SQLiteConnection(stringConexion);

            var q = @"select v.Id,
                            v.Unidades,
                            v.PrecioVentaUnidad,
                            v.LoteId,
                            datetime(v.Fecha, 'unixepoch', 'localtime') as 'Fecha',
                            l.*,
                            p.*,
                            c.*
                            from ventas v
                            join lotes l on l.Id = v.LoteId
                            join productos p on p.Id = l.ProductoId
                            left join clientes c on c.Id = v.ClienteId
                            where v.id = @ventaId";

            VentaModelo map(VentaModelo v, LoteModelo l, ProductoModelo p, ClienteModelo c)
            {
                l.Producto = p; v.Lote = l; v.Cliente = c; return(v);
            }

            var parametros = new { ventaId = ventaId };

            var resultados = conexion.Query <VentaModelo, LoteModelo, ProductoModelo, ClienteModelo, VentaModelo>(q, map, parametros);

            var venta = resultados.FirstOrDefault();

            if (venta == null)
            {
                return(null);
            }

            venta.PrecioVentaUnidad      = SqliteMoneda.ConvertirAOriginal(venta.PrecioVentaUnidad);
            venta.Lote.Inversion         = SqliteMoneda.ConvertirAOriginal(venta.Lote.Inversion);
            venta.Lote.PrecioVentaUnidad = SqliteMoneda.ConvertirAOriginal(venta.Lote.PrecioVentaUnidad);

            return(venta);
        }