Пример #1
0
        public ActionResult <PdpModel> Get(string id)

        {
            var data = OnGet(id).Result;

            if (data.Length > 0)
            {
                _result = JsonConvert.DeserializeObject <recordsRecord>(data);
            }
            return(_result != null?_result.toPdpModel() : null);
        }
Пример #2
0
        public ActionResult <recordsRecord> Get(string id)
        {
            recordsRecord record = null;

            record = data.First(x => x.fields.Any(n => n.name == "name" && n.values.Any(q => q.Value.ToLower() == id.ToLower())));
            if (record != null)
            {
                return(record);
            }
            //return via id (faster than text)
            record = data.FirstOrDefault(x => x.fields[0].values[0].Value == id);
            return(record);
        }
Пример #3
0
        public void ConvertedCdpShouldHaveCorrectName()
        {
            const string  productname   = "alpha sv";
            recordsRecord recordsRecord = new recordsRecord();

            recordsRecord.fields = new recordsRecordField[] { new recordsRecordField
                                                              {
                                                                  name   = "name",
                                                                  values = new recordsRecordFieldValue[] { new recordsRecordFieldValue {
                                                                                                               Value = productname, language = "EN"
                                                                                                           } }
                                                              } };

            var result = Converters.toPdpModel(recordsRecord);

            Assert.AreEqual(result.Name, productname);
        }
Пример #4
0
        public static PdpModel toPdpModel(this recordsRecord pimRecord, string language = "EN", string region = "CA")

        {
            PdpModel pdpModel = new PdpModel();

            //details
            var productNo = pimRecord.fields.Where(x => x.name == "id").Select(x => x.values).First();

            pdpModel.Details.ProductNo = productNo.Length > 0 ? int.Parse(productNo[0].Value) : 0;
            var images = pimRecord.fields.Where(x => x.name == "images").Select(x => x.values).First();


            //translated fields
            var names        = pimRecord.fields.Where(x => x.name == "name").Select(x => x.values).First();
            var descriptions = pimRecord.fields.Where(x => x.name == "shortdescription").Select(x => x.values).First();

            pdpModel.Name = names.FirstOrDefault(x => x.language == language)?.Value;
            pdpModel.Details.TranslatedDescr = descriptions.FirstOrDefault(x => x.language == language)?.Value;
            pdpModel.Details.LargeImageUrl   = images.First().Value;

            return(pdpModel);
        }