public GeoLocation GetLocation(Publication publication, GeoLocation list) { list.Province = new Location(); list.Province.Id = publication.VehicleLocProv; list.Province.Name = publication.VehicleLocProvText; list.Partido = new Location(); list.Partido.Id = publication.VehicleLocPart; list.Partido.Name = publication.VehicleLocPartText; list.Localidad = new Location(); list.Localidad.Id = publication.VehicleLocLoc; list.Localidad.Name = publication.VehicleLocLocText; return list; }
private Dictionary<string, ItemData> GetPublishableItemData(Publication publication) { GeoLocation location = new GeoLocation(); var publishableItemData = new Dictionary<string, ItemData> { {"PUBLISHABLE_ITEM_DATA_ID", new ItemData(publication.PublishableItemId.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_TYPE_ID",new ItemData(publication.VehicleType.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_TYPE_DESCRIPTION", new ItemData(publication.VehicleType==1?"Used":"New",typeof(string).Name) }, {"PUBLISHABLE_ITEM_DATA_PICTURES_QUANTITY",new ItemData(publication.VehiclePicQty.ToString(),typeof(int).Name) }, {"PUBLISHABLE_ITEM_CONTACTS_QUANTITY",new ItemData(publication.PublicationContactsQty.ToString(),typeof(int).Name) }, {"PUBLISHABLE_ITEM_DATA_VEHICLE_MAKE_ID", new ItemData(publication.VehicleMake.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_VEHICLE_MAKE_DESCRIPTION", new ItemData(publication.VehicleMakeText, typeof(string).Name)}, {"PUBLISHABLE_ITEM_DATA_VEHICLE_MODEL_ID",new ItemData(publication.VehicleModel.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_VEHICLE_MODEL_DESCRIPTION",new ItemData(publication.VehicleModelText, typeof(string).Name)}, {"PUBLISHABLE_ITEM_DATA_VEHICLE_VERSION_ID",new ItemData(publication.VehicleVersion.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_VEHICLE_VERSION_DESCRIPTION",new ItemData(publication.VehicleVersionText, typeof(string).Name)}, {"PUBLISHABLE_ITEM_DATA_VEHICLE_SEGMENT_ID",new ItemData(publication.VehicleSegment.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_VEHICLE_SEGMENT_DESCRIPTION",new ItemData(publication.VehicleSegmentText, typeof(string).Name)}, {"PUBLISHABLE_ITEM_DATA_GEOLOCATION",new ItemData((JsonSerializer.Serialize((location.GetLocation(publication, location)), GetKnownTypes())), typeof(string).Name)}, {"PUBLISHABLE_ITEM_DATA_PRICE",new ItemData(publication.VehiclePrice.ToString(), typeof(decimal).Name)}, {"PUBLISHABLE_ITEM_DATA_PRICE_CURRENCY_SYMBOL",new ItemData(publication.CVehiclePriceCurrency.Symbol, typeof(decimal).Name)}, {"PUBLISHABLE_ITEM_DATA_PRICE_CURRENCY_ID",new ItemData(publication.VehiclePriceCurrency.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_YEAR",new ItemData(publication.VehicleYear.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_MILEAGE",new ItemData(publication.VehicleKm.ToString(),typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_FUEL_TYPE_ID",new ItemData(publication.VehicleFuelType.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_FUEL_TYPE_DESCRIPTION",new ItemData(publication.VehicleFuelTypeText, typeof(string).Name)}, {"PUBLISHABLE_ITEM_DATA_IS_FIRST_OWNER",new ItemData(publication.VehicleFirstOwner.ToString(),typeof(bool).Name)}, {"PUBLISHABLE_ITEM_DATA_COLOUR_ID",new ItemData(publication.VehicleColor.ToString(), typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_COLOUR_DESCRIPTION",new ItemData(publication.VehicleColorText, typeof(int).Name)}, {"PUBLISHABLE_ITEM_DATA_ACCEPTED_PAYMENT_METHOD_ID",new ItemData(publication.PaymentMethod.ToString(), typeof(string).Name)}, {"PUBLISHABLE_ITEM_DATA_ACCEPTED_PAYMENT_METHOD_DESCRIPTION",new ItemData(publication.PaymentMethodText, typeof(string).Name)}, {"PUBLISHABLE_ITEM_DATA_COMMENTS",new ItemData(publication.SellerComment,typeof(string).Name) } }; //EQUIPMENT for (int i = 0; i < publication.EquipmentAttributes.Count; i++) { if (publishableItemData.ContainsKey(publication.EquipmentAttributesKeys[i])) continue; publishableItemData.Add(publication.EquipmentAttributesKeys[i], new ItemData(publication.EquipmentAttributes[i].ToString(), typeof(string).Name)); } return publishableItemData; }