public void ReportarNetSuiteInicial(List <of.BuyBox> buyBoxes, string asin) { DicDatosNetSuite = new Dictionary <string, Dictionary <string, string> >(); if (buyBoxes == null) { buyBoxes = BuyBoxAdapter.ObtenerBuyBox(asin); } if (DicDatosNetSuite == null) { DicDatosNetSuite = new Dictionary <string, Dictionary <string, string> >(); } var prod = ProductosAdapter.ObtenerProducto(asin); Dictionary <string, string> campos = new Dictionary <string, string> { { "custitem_ib_update_buybox_date", DateTime.Now.ToString("dd/MM/yyyy") } }; if (buyBoxes != null && buyBoxes.Any()) { campos.Add(Box, buyBoxes.First().Merchant.Equals("Ibushak") ? "true" : "false"); } campos.Add(Precio, prod.FormattedPrice); DicDatosNetSuite.Add(asin, campos); Cambio = true; }
public void ValidarCambios(List <of.BuyBox> buyBoxes) { if (buyBoxes != null) { var productoActualizado = new ProductoActualizado { ASIN = buyBoxes.First().ASIN, BuyBox = new List <BuyBoxActualizado>() }; OBitacora.GuardarLinea($"{ DateTime.Now:yyyy-MM-dd hh:mm:ss}|Productos|Validando datos BuyBox"); foreach (var buyBoxNuevo in buyBoxes) { var buyBoxViejo = BuyBoxAdapter.ObtenerBuyBox(buyBoxNuevo.ASIN, buyBoxNuevo.Condition); if (buyBoxViejo != null) { ValidarMerchantBuyBox(buyBoxNuevo.Merchant, buyBoxViejo.Merchant); List <CampoActualizado> lstCamposActualizado = buyBoxNuevo.DetailedCompare(buyBoxViejo); if (lstCamposActualizado.Count > 0) { productoActualizado.BuyBox.AddRange((from campo in lstCamposActualizado select new BuyBoxActualizado { Campo = campo.Campo, Condicion = buyBoxNuevo.Condition, ValorNuevo = campo.ValorNuevo, ValorViejo = campo.ValorViejo }).ToList()); CambioBuyBox = true; Cambio = true; AgregarDicNetSuite(buyBoxNuevo, buyBoxNuevo.ASIN); } } else { CambioBuyBox = true; Cambio = true; ValidarMerchantBuyBox(buyBoxNuevo.Merchant, ""); AgregarDicNetSuite(buyBoxNuevo, buyBoxNuevo.ASIN); } } if (CambioBuyBox) { if (LstProductoActualizado == null) { LstProductoActualizado = new List <ProductoActualizado>(); } LstProductoActualizado.Add(productoActualizado); } } }
private void UpdateBuyboxInfo(string asin, string internalId) { var buybox = BuyBoxAdapter.ObtenerBuyBox(asin); foreach (var item in buybox) { var value = ObtenerRecordId("339", "BuyBox Info", internalId, 11, "custrecord_bb_item"); var rec = new SuiteTalkWs.CustomRecord(); var recType = new SuiteTalkWs.RecordRef { internalId = "339", name = "BuyBox Info" }; rec.recType = recType; rec.name = "BuyBox Info"; rec.customFieldList = CustomListBuyboxInfo(item, internalId); if (!string.IsNullOrEmpty(value)) { rec.internalId = value; var resUpdate = _client.update(rec); if (resUpdate.status.isSuccess) { continue; } 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}"); continue; } 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}"); } }