Ejemplo n.º 1
0
        public bool ActualizarDatos(Producto producto)
        {
            OBitacora.GuardarLinea($"{ DateTime.Now :yyyy-MM-dd hh:mm:ss}|Productos|Actualizando datos producto");
            if (CambioProducto)
            {
                ProductosAdapter.Actualizar(producto);
            }

            OBitacora.GuardarLinea($"{ DateTime.Now :yyyy-MM-dd hh:mm:ss}|Productos|Actualizando datos dimensiones");
            if (cambioDimensiones)
            {
                DimensionesAdapter.Actualizar(producto.Dimensiones);
            }

            OBitacora.GuardarLinea($"{ DateTime.Now :yyyy-MM-dd hh:mm:ss}|Productos|Actualizando datos dimensiones paquete");
            if (cambioDimensionesPaquete)
            {
                DimensionesPaqueteAdapter.Actualizar(producto.DimensionesPaquete);
            }

            OBitacora.GuardarLinea($"{ DateTime.Now :yyyy-MM-dd hh:mm:ss}|Productos|Actualizando datos resumen");
            if (cambioResumen)
            {
                ResumenAdapter.Actualizar(producto.Resumen);
            }

            OBitacora.GuardarLinea($"{ DateTime.Now :yyyy-MM-dd hh:mm:ss}|Productos|Actualizando datos simialres");
            if (cambioSimilares)
            {
                SimilaresAdapter.Actualizar(producto.Similares);
            }

            OBitacora.GuardarLinea($"{ DateTime.Now :yyyy-MM-dd hh:mm:ss}|Productos|Actualizando datos caracteristicas");
            if (cambioCaracteristicas)
            {
                CaracteristicasAdapter.Actualizar(producto.Caracteristicas);
            }

            OBitacora.GuardarLinea($"{ DateTime.Now :yyyy-MM-dd hh:mm:ss}|Productos|Actualizando datos upcs");
            if (CambioUpcs)
            {
                UPCsAdapter.Actualizar(producto.UPCs);
            }

            if (!CambioProducto && (cambioDimensiones || cambioDimensionesPaquete || cambioResumen || cambioSimilares || cambioCaracteristicas || CambioUpcs))
            {
                ProductosAdapter.ActualizarBandera(producto.ASIN, true);
            }

            CambioProducto           = false;
            cambioDimensiones        = false;
            cambioDimensionesPaquete = false;
            cambioResumen            = false;
            cambioSimilares          = false;
            cambioCaracteristicas    = false;
            CambioUpcs = false;

            return(true);
        }
Ejemplo n.º 2
0
        private void ValidacionDatosUpCs(List <UPCs> lstUpcsNuevos)
        {
            if (lstUpcsNuevos != null)
            {
                string      asin          = lstUpcsNuevos.First().ASIN;
                List <UPCs> lstUpcsViejos = UPCsAdapter.ObtenerUpcs(asin);

                List <string> lstUpcNuevos = (from upc in lstUpcsNuevos
                                              select upc.UPC).ToList();

                List <string> lstUpcViejos = (from upc in lstUpcsViejos
                                              select upc.UPC).ToList();

                IEnumerable <string> nuevos = lstUpcNuevos.Except(lstUpcViejos);
                IEnumerable <string> bajas  = lstUpcViejos.Except(lstUpcNuevos);

                if (nuevos.Count() > 0)
                {
                    List <CampoActualizado> lstCamposActualizado = new List <CampoActualizado>();
                    foreach (var nuevo in nuevos)
                    {
                        CampoActualizado campo = new CampoActualizado
                        {
                            Campo      = "UPCs",
                            ValorNuevo = nuevo
                        };

                        lstCamposActualizado.Add(campo);
                    }

                    productoActualizado.Campos.AddRange(lstCamposActualizado);

                    CambioUpcs = true;
                    Cambio     = true;
                }

                if (bajas.Count() > 0)
                {
                    List <CampoActualizado> lstCamposActualizado = new List <CampoActualizado>();
                    foreach (var baja in bajas)
                    {
                        CampoActualizado campo = new CampoActualizado
                        {
                            Campo      = "Caracteristicas",
                            ValorViejo = baja,
                            ValorNuevo = ""
                        };

                        lstCamposActualizado.Add(campo);
                    }

                    productoActualizado.Campos.AddRange(lstCamposActualizado);

                    CambioUpcs = true;
                    Cambio     = true;
                }
            }
        }
Ejemplo n.º 3
0
        public void GenerarProductosActualizados()
        {
            IEnumerable <Producto> lstProductos = ProductosAdapter.ObtenerProductosTodos().ToList();
            IEnumerable <string>   lstAsin      = lstProductos.Select(producto => producto.ASIN).ToList();

            if (!lstAsin.Any())
            {
                return;
            }
            var lstDataTable = new List <DataTable>();
            var oCorreo      = new Correo();

            var dtasins              = ASINAdapter.GetAllAsins().ConvertirADataTable("asin");
            var dtProductos          = lstProductos.ConvertirADataTable(Productos);
            var dtBuyBox             = BuyBoxAdapter.ObtenerCaracteristicasActualizados(lstAsin).ConvertirADataTable(Buybox);
            var dtCaracteristicas    = CaracteristicasAdapter.ObtenerCaracteristicasActualizados(lstAsin).ConvertirADataTable(Caracteristicas);
            var dtDimensiones        = DimensionesAdapter.ObtenerCaracteristicasActualizados(lstAsin).ConvertirADataTable(Dimensiones);
            var dtDimensionesPaquete = DimensionesPaqueteAdapter.ObtenerCaracteristicasActualizados(lstAsin).ConvertirADataTable(Dimensionespaquete);
            var dtResumen            = ResumenAdapter.ObtenerCaracteristicasActualizados(lstAsin).ConvertirADataTable(Resumen);
            var dtSimilares          = SimilaresAdapter.ObtenerCaracteristicasActualizados(lstAsin).ConvertirADataTable(Similares);
            var dtUpCs = UPCsAdapter.ObtenerCaracteristicasActualizados(lstAsin).ConvertirADataTable(Upcs);

            lstDataTable.Add(dtasins);
            lstDataTable.Add(dtProductos);
            lstDataTable.Add(dtBuyBox);
            lstDataTable.Add(dtResumen);
            lstDataTable.Add(dtCaracteristicas);
            lstDataTable.Add(dtDimensiones);
            lstDataTable.Add(dtDimensionesPaquete);
            lstDataTable.Add(dtSimilares);
            lstDataTable.Add(dtUpCs);

            var bytes = GenerarExcel(lstDataTable);

            var nombreArchivo = $"{DateTime.Now:yyyy-MM-dd HHmm} Productos Amazon.xlsx";
            var existoso      = oCorreo.EnviarMensaje(bytes, nombreArchivo);

            if (!existoso)
            {
                return;
            }
            foreach (var asin in lstAsin)
            {
                ProductosAdapter.ActualizarBandera(asin, false);
            }
        }