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); }
private void ValidacionDatosSimilares(List <Similares> lstSimilaresNuevos) { if (lstSimilaresNuevos != null) { var asin = lstSimilaresNuevos.First().ASIN; var lstSimilaresViejos = SimilaresAdapter.ObtenerSimilares(asin); var lstAsinSimilaresNuevos = (from similar in lstSimilaresNuevos select similar.ASINSimilar).ToList(); var lstAsinSimilaresViejos = (from similar in lstSimilaresViejos select similar.ASINSimilar).ToList(); var nuevos = lstAsinSimilaresNuevos.Except(lstAsinSimilaresViejos); var bajas = lstAsinSimilaresViejos.Except(lstAsinSimilaresNuevos); if (nuevos.Any()) { var lstCamposActualizado = new List <CampoActualizado>(); foreach (var nuevo in nuevos) { CampoActualizado campo = new CampoActualizado { Campo = "ASINSimilar", ValorNuevo = nuevo }; lstCamposActualizado.Add(campo); } productoActualizado.Campos.AddRange(lstCamposActualizado); cambioSimilares = true; Cambio = true; } if (bajas.Count() > 0) { List <CampoActualizado> lstCamposActualizado = new List <CampoActualizado>(); foreach (var baja in bajas) { var campo = new CampoActualizado { Campo = "ASINSimilar", ValorViejo = baja, ValorNuevo = "" }; lstCamposActualizado.Add(campo); } productoActualizado.Campos.AddRange(lstCamposActualizado); cambioSimilares = true; Cambio = true; } } }
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); } }
private void UploadSimi(string asin, string internalId) { var similar = SimilaresAdapter.ObtenerSimilares(asin); foreach (var item in similar) { var value = ObtenerRecordId("342", "Similares", internalId, 3, "custrecord_sim_asin", item.ASINSimilar); var rec = new SuiteTalkWs.CustomRecord(); var recType = new SuiteTalkWs.RecordRef { internalId = "342", name = "Similares" }; rec.recType = recType; rec.name = "Similares"; rec.customFieldList = CustomListSimi(internalId, item); if (!string.IsNullOrEmpty(value)) { rec.internalId = value; var resUpdate = _client.update(rec); if (resUpdate.status.isSuccess) { return; } var res = _client.add(rec); _bitacora.GuardarLinea(res.status.isSuccess ? $"{DateTime.Now:yyyy-MM-dd hh:mm:ss}|Correcto" : $"{DateTime.Now:yyyy-MM-dd hh:mm:ss}|Error|{res.status.statusDetail.First().message}"); return; } var res2 = _client.add(rec); _bitacora.GuardarLinea(res2.status.isSuccess ? $"{DateTime.Now:yyyy-MM-dd hh:mm:ss}|Correcto" : $"{DateTime.Now:yyyy-MM-dd hh:mm:ss}|Error|{res2.status.statusDetail.First().message}"); } }