private bool Autenticar() { var passport = new SuiteTalkWs.Passport(); var role = new SuiteTalkWs.RecordRef(); passport.account = ConfigurationManager.AppSettings["SuiteAccount"]; passport.email = ConfigurationManager.AppSettings["SuiteEmail"]; role.internalId = ConfigurationManager.AppSettings["SuiteInternalId"]; passport.role = role; passport.password = ConfigurationManager.AppSettings["SuitePassword"]; _client.applicationInfo = new SuiteTalkWs.ApplicationInfo { applicationId = ConfigurationManager.AppSettings["SuiteApplicationId"] }; var response = _client.login(passport); if (response.status.isSuccess) { return(true); } LstErrores.Add(ReportarErrores(response.status)); return(false); }
private void UpdateBuybox(Producto prod, string internalId) { var value = ObtenerRecordId("338", "Buybox", prod.ASIN, 33, "custrecord_ib_asin"); var rec = new SuiteTalkWs.CustomRecord(); var recType = new SuiteTalkWs.RecordRef { internalId = "338", name = "Buybox" }; rec.recType = recType; rec.name = "Buybox"; rec.customFieldList = CustomListBuybox(prod, internalId); 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}"); }
private void UploadDimensionesPaquete(string asin, string internalId) { var value = ObtenerRecordSelectId("341", "Dimensiones del paquete", internalId, 7, "custrecord_dp_item"); var dimencion = DimensionesPaqueteAdapter.ObtenerDimensionesPaquete(asin); if (dimencion == null) { return; } var rec = new SuiteTalkWs.CustomRecord(); var recType = new SuiteTalkWs.RecordRef { internalId = "341", name = "Dimensiones del paquete" }; rec.recType = recType; rec.name = "Dimensiones del paquete"; rec.customFieldList = CustomListDimensionPaquete(internalId, dimencion); 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}"); }
private void UpdateResumenOfertas(Producto prod, string internalId) { var value = ObtenerRecordSelectId("344", "Resúmen Ofertas", internalId, 8, "custrecord_ro_item"); var resumen = ResumenAdapter.ObtenerResumen(prod.ASIN); if (resumen == null) { return; } var rec = new SuiteTalkWs.CustomRecord(); var recType = new SuiteTalkWs.RecordRef { internalId = "344", name = "Resúmen Ofertas" }; rec.recType = recType; rec.name = "Resúmen Ofertas"; rec.customFieldList = CustomListResumenOfertas(internalId, resumen); 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}"); }
private void UploadCaracteristicas(string asin, string internalId) { var caract = CaracteristicasAdapter.ObtenerCaracteristicas(asin); foreach (var item in caract) { var value = ObtenerRecordId("345", "Buybox caracteristicas", internalId, 1, "custrecord_bc_caracteristicas", item.Caracteristica); var rec = new SuiteTalkWs.CustomRecord(); var recType = new SuiteTalkWs.RecordRef { internalId = "345", name = "Buybox caracteristicas" }; rec.recType = recType; rec.name = "Buybox caracteristicas"; rec.customFieldList = CustomListCaract(internalId, item); 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}"); } }
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}"); } }
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}"); } }
private string ObtenerRecordId(string internalId, string name, string search, int totalColums, string columName, string search2 = "") { var customRecordSearch = new SuiteTalkWs.CustomRecordSearch(); var customRecordSearchBasic = new SuiteTalkWs.CustomRecordSearchBasic(); var recType = new SuiteTalkWs.RecordRef { internalId = internalId, name = name }; customRecordSearchBasic.recType = recType; var customRecordName = new SuiteTalkWs.SearchStringField { @operator = SuiteTalkWs.SearchStringFieldOperator.contains, operatorSpecified = true, searchValue = search }; customRecordSearchBasic.name = customRecordName; customRecordSearch.basic = customRecordSearchBasic; var response = _client.search(customRecordSearch); // Process response if (response.status.isSuccess) { foreach (var item in response.recordList) { var custom = (SuiteTalkWs.CustomRecord)item; //if (custom.customFieldList.Length == totalColums) //{ foreach (var item2 in custom.customFieldList.Where(x => x.GetType() == typeof(SuiteTalkWs.StringCustomFieldRef) && x.scriptId == columName)) { try { var value = (SuiteTalkWs.StringCustomFieldRef)item2; if (search2 == "") { if (value.value == search) { return(custom.internalId); } } else { if (value.value == search2) { return(custom.internalId); } } } catch (Exception) { // ignored } } //} } } else { Console.WriteLine(response.status); } return(""); }