...
Подробнее о модуле и его подключении: http://key.otcommerce.com/ru/service-payments-rates
Способы и условия поиска
У каждого товарного провайдера есть свой набор условий поиска. Этот набор можно варьировать под цели сайта. Получить список доступных способов поиска и полную информацию о том, что они поддерживают, можно методом GetProviderSearchMethodInfoList..
Сам поиск можно выполнить двумя методами: SearchItemsFrame и BatchSearchItemsFrame. По работе они полностью идентичны, только с помощью второго метода можно получить различную дополнительную информацию сразу за один запрос, помимо самого поиска. Возможная дополнительная информация будет описана далее.
Условия самого поиска также идентичны, передаются в параметр xmlParameters, и представлены структурой.OtapiSearchItemsParameters. Как и все структурные параметры, он имеет формат xml, примеры будут описаны далее.
В следующей таблице представлено сравнительное описание условий поиска, как они представлены в структуре параметров, и как они представлены в описании способов поиска.
Параметр | Параметр в условиях поиска | Описание условия поиска | Параметр в описании способа поиска | Описание | Описание в способе поиска | |||
---|---|---|---|---|---|---|---|---|
Провайдер | Provider | Если в условиях поиска не указан провайдер явно, он будет определен по другим условиям (например, категории). Если ни одно условие не определяет провайдера, поиск будет произведен в провайдере по умолчанию. Если разные условия поиска ведут к различным провайдерам, то такой поиск невозможен и приведет к ошибке. | Provider | Идентификатор провайдера | ||||
Способ поиска
| SearchMethod | Если не указано, используется определенный в настройках способ поиска по умолчанию. | SearchMethod |
| Название способа поиска | |||
DisplayName |
| |||||||
Условие поиска | Параметр для описания способа поиска | Применение условия поиска | ||||||
Способ поиска | SearchMethod | Название способа поиска (Тип используемого поискового метода) | ||||||
Название способа поиска (на нужном языке) | DisplayName | Отображаемое название способа поиска (на нужном языке) | ||||||
Flags |
| Особенности выбранного способа поиска | Flags | Список особенностей способа поиска | ||||
Ограничения на число товаров | UseOptimalFrameSize | Признак использования оптимального размера фрейма вместо переданного. Если данное условие передано в значении true, то параметр frameSize игнорируется, и будет использовано OptimalFrameSize из выбранного способа поиска. |
| |||||
OptimalFrameSize |
| Количество выводимых товаров на одну страницу (влияет на скорость загрузки страницы и работу скорости поиска) | OptimalFrameSize | Оптимальное число запрашиваемых товаров (размер страницы) | ||||
Максимальное количество товаров на страницу (влияет на скорость загрузки страницы и работу скорости поиска) | MaximumFrameSize | Максимальное число запрашиваемых товаров (размер страницы) | ||||||
Максимальное количество товаров выбранного способа поиска (влияет на скорость загрузки страницы и работу скорости поиска) | MaximumItemsCount | Максимальное число товаров, до которых может выдать способ поиска | ||||||
. Если использовать страницы данного размера, это обеспечивает максимальную возможную скорость работы поиска, т.к. оно соответствует размерам страниц у провайдера. | ||||||||
MaximumFrameSize |
| Максимальное число товаров, которое можно получить за 1 запрос. Может работать значительно медленнее, чем при использовании оптимального числа. | ||||||
MaximumItemsCount |
| Число товаров, до которого в принципе можно получить по одним и тем же условиям поиска. Чтобы получать больше товаров, надо менять и уточнять условия поиска. | ||||||
Сортировка товаров | OrderBy | Если не указано, или указанное значение не входит в число допустимых, будет использована определенная в настройках сортировка по умолчанию. | AvailableSorts |
| Сортировки в выбранном способе поиска | AvailableSorts | Список допустимых сортировок в способе поиска (OrderBy в параметрах поиска) | |
Товарный провайдер | Provider | Тип провайдера Nullable<ItemProviderType> | ||||||
. | ||||||||
Категория
Поиск в категории | CategoryId | Идентификатор категории, в которой искать товары. |
| |||||
CategoryMode нужно перенести | Режим выдачи категорий в результатах поиска |
| ||||||
Название товара | нет параметра (доступен всегда) | ItemTitle | Поисковая строка по названию товара. Если в поисковой строке указаны только идентификатор (артикул) товара или ссылка на страницу на сайте провайдера, то будет найден и выдан именно этот единственный товар (или пусто, если таковой товар отсутствует). | Язык поиска | ||||
LanguageOfQuery | Язык поисковой строки по названию товара | |||||||
Артикул товара | нет параметра (доступен всегда) | |||||||
Ссылка на товар | нет параметра (доступен всегда) | |||||||
Поиск товаров внутри категории | нет параметра (доступен всегда) | |||||||
. Если не указан, считается равным языку выдачи товаров. Если не равен языку провайдера, то производится автоперевод на язык провайдера. |
| |||||||
Продавец | VendorId | Идентификатор продавца | Vendor |
| Поддерживается ли поиск по продавцу |
Имя продавца | Vendor | Поддерживает ли способ поиска продавца (VendorId в параметрах поиска)|
VendorName | Имя продавца | VendorId | ||||||
Местонахождение продавца | VendorAreaId | МестонахождениеИдентификатор местонахождения продавца (зоны) | VendorLocation |
| Поддерживает ли способ поиска местонахождение продавца (VendorAreaId в параметрах поиска) | |||
VendorAreaId | Идентификатор местонахождения продавца (зоны) | |||||||
Рейтинг продавца | MinVendorRating | Минимальное значение рейтинга | продавца | VendorRatingRange |
| Поддерживает ли способ поиска фильтр по рейтингу продавца (MinVendorRating и MaxVendorRating в параметрах поиска) | MinVendorRating | Минимальное значение рейтинга продавца |
MaxVendorRating | Максимальное значение рейтинга продавца | |||||||
Название бренда | Brand | Поддерживает ли способ поиска бренды (BrandId в параметрах поиска) | ||||||
BrandId | Идентификатор искомой торговой марки | |||||||
BrandPropertyValueId | Идентификатор значения искомой торговой марки (устаревший параметр, используйте BrandId) | |||||||
В диапазоне цен | PriceRange | Поддерживает ли способ поиска фильтр по цене товара (MinPrice и MaxPrice в параметрах поиска) | ||||||
MinPrice | Минимальная цена | |||||||
MaxPrice | Максимальная цена | |||||||
По объему продаж | VolumeRange | Поддерживает ли способ поиска фильтр по объему продаж (MinVolume и MaxVolume в параметрах поиска) | ||||||
MinVolume | Минимальный объем продаж | |||||||
MaxVolume | Максимальный объем продаж | |||||||
По состоянию товара (новый, б/у, неиспользованый) | StuffStatus | Поддерживает ли способ поиска фильтр по состоянию товара (StuffStatus в параметрах поиска) | ||||||
Характеристики товара (цвет, модель и тд) | Configurators | Список поисковых свойств, представленных структурой. Поддерживает ли способ поиска характеристики товара (Configurators в параметрах поиска) | ||||||
Features | Список искомых фич товара | |||||||
Аукционные товары | Features/Auction | Список специальных фильтров, поддерживаемых способом поиска (Features в параметрах поиска) | ||||||
Товары со скидками | Features/Discount | Список специальных фильтров, поддерживаемых способом поиска (Features в параметрах поиска) | ||||||
Использование в поиске нескольких значений одной характеристики (например, можно вывести только красное, красное И зеленое, красное ИЛИ зеленое) | MultipleConfiguratorLogic | Логика работы способа поиска по нескольким значениям одной характеристики | ||||||
OrderBy | Параметры сортировки | |||||||
OutputMode | Режим выдачи результатов поиска | |||||||
IsOriginal | Признак выбора только оригинальных товаров | |||||||
IsTmall | Признак выбора только товаров из Tmall | |||||||
StuffStatus | Состояние товара | |||||||
IsClearItemTitles | Признак очистки заголовков товаров |
Поиск по всем товарным провайдерам
...