Exemplo n.º 1
0
        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;
                }
            }
        }
Exemplo n.º 2
0
        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}");
            }
        }