Тема: СДЭК: задержка для городов, где нет их офиса

Модуль СДЭК привязан к зоне “Все”. Если пользователь при оформлении заказа вводит город (индекс), где нет ПВЗ СДЭК, то страница выбора вариантов доставки подгружается долго (пользователь может не дождаться), а в списке выдается длинное сообщение “15 Почтовый индекс города-получателя отсутствует в базе СДЭК, В указанном населённом пункте нет пунтов самовывоза”.

(кстати опечатка в слове “пунтов”)

В связи с этим вопросы:

1. Чтобы избежать таймаута, необходимо создать отдельную зону доставки, в которую поместить все города, в которых есть ПВЗ СДЭК и привязать этот вариант доставки только к этой зоне?
2. Есть ли уже готовая табличка для БД с такой информацией, чтобы импортировать ее к себе?

Re: СДЭК: задержка для городов, где нет их офиса

К сожалению и время ответа, и саму опечатку генерирует СДЕК.

1. Чтобы избежать таймаута, необходимо создать отдельную зону доставки, в которую поместить все города, в которых есть ПВЗ СДЭК и привязать этот вариант доставки только к этой зоне?

Я думаю это делать не стоит.

2. Есть ли уже готовая табличка для БД с такой информацией, чтобы импортировать ее к себе?

Таблички такой нет в открытом доступе нигде.

Re: СДЭК: задержка для городов, где нет их офиса

Закусило Александр пишет:

Я думаю это делать не стоит.

Почему? Как избежать отображения вариантов доставки СДЭК в тех городах, где они невозможны?

Re: СДЭК: задержка для городов, где нет их офиса

Пока, к сожалению никак. Мы уже выпустили улучшенный алгоритм поиска по городам СДЕКА. Есть правда как вариант модифицировать шаблон под себя с доставками и проверить, что если возвращается какая либо ошибка у способа доставки, то его скрывать.

Re: СДЭК: задержка для городов, где нет их офиса

Закусило Александр пишет:

Пока, к сожалению никак. Мы уже выпустили улучшенный алгоритм поиска по городам СДЕКА. Есть правда как вариант модифицировать шаблон под себя с доставками и проверить, что если возвращается какая либо ошибка у способа доставки, то его скрывать.

Добрый день Александр.
Подскажите как доработать шаблон чтобы скрывались доставки СДЕКа которые не работают по некоторым тарифам в определенных населенных пунктах и выдают ошибку?

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

На данный момент, можно внести изменения в шаблон списка доставки и проверить, если если ошибки, то не выводить доставку. У Вас какая тема оформления?

Re: СДЭК: задержка для городов, где нет их офиса

Молодежная.

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

Я сейчас зашел в шаблон этого модуля и там прописано, показывать красные надписи, только тогда когда Вы админ, в противном случае этот пункт доставки будет пропускаться. Посмотрите неавторизованным. Я давно это делал, видимо сразу предусмотрел.

Re: СДЭК: задержка для городов, где нет их офиса

Добрый день.
Проверил без авторизации и с авторизацией не админ. Также отображаются красные надписи.

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

https://yadi.sk/i/vTUBOC923L8DUs

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

Да и также хотелось бы чтобы красные надписи не отображались в модуле "Блок расчета стоимости доставки". Чтобы их видел только админ.

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

Закусило Александр пишет:

Я сейчас зашел в шаблон этого модуля и там прописано, показывать красные надписи, только тогда когда Вы админ, в противном случае этот пункт доставки будет пропускаться. Посмотрите неавторизованным. Я давно это делал, видимо сразу предусмотрел.

Может эта функция не работает, потому что у меня шаблон модифицированный? Доработку сделали позже.

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

Возможно. Киньте содержимое шаблона.

14 Отредактировано Владимир (17.07.2017 18:33:38)

Re: СДЭК: задержка для городов, где нет их офиса

У меня облачный интерфейс. Кинуть не могу. Может как то доступ дать? Или какой файл шаблона скачать и кинуть?

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

Управление->шаблоны->Выберите Ваш модифицированный шаблон и скоруйте сюда содержимое шаблона обернув его

Здесь содержимое шаблона

16 Отредактировано Владимир (17.07.2017 21:11:18)

Re: СДЭК: задержка для городов, где нет их офиса

Имели ввиду список файлов используемых в шаблоне?

moduleview
resource
block_stub.tpl
default.tpl
exception.tpl 
fullscreen.tpl
index.tpl
lastcomments.tpl
layout.tpl
paginator.tpl
wrapper_article.tpl
wrapper_cart.tpl
wrapper_catalog.tpl
wrapper_checkout.tpl
wrapper_profile.tpl
wrapper.tpl

moduleview

article
banners
catalog
comments
deliverycost
emailsubscribe
feedback
jivosite
main
menu
photo
shop
support
users

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

Мне нужно, то что лежит в /moduleview/delverycost/blocks/deliverycost/ . Там по идее один или 2 файла.

18 Отредактировано Владимир (18.07.2017 14:05:15)

Re: СДЭК: задержка для городов, где нет их офиса

У меня один файл.
deliverycost.tpl

<p class="deliveryCostListTitle">{t}Стоимость доставки в г.{/t} <b>{t}{$city.title}{/t}</b> (<a data-href="{$router->getUrl('deliverycost-front-choosecityautocomplete', ['redirect' => urlencode($redirect)])}" class="inDialog">{t}Выбрать другой город{/t}</a>)</p>
{if !empty($list)}
    <ul class="deliveryCostListRows">
        {foreach $list as $item}
            {assign var=something_wrong value=$item->getTypeObject()->somethingWrong($order)} 
            {if !$something_wrong || ($something_wrong && $current_user->isAdmin())}
            <li class="deliveryCostListRow">
                <div class="key">
                    {$item.title}
                </div>
                <div class="val">
                    {if $something_wrong}
                        <span style="color:red;">{$something_wrong}</span>
                    {else}
                        {assign var=dcost value=$order->getDeliveryCostText($item)}
                        <span class="help">{$order->getDeliveryExtraText($item)}</span>                             
                        {if $dcost>0}                        
                            <span id="scost_{$item.id}" class="scost">{$dcost}</span>
                        {else}
                            {$dcost}
                        {/if}
                    {/if}
                </div>
                <div style="clear: both;"></div>
            </li>
            {/if}
        {/foreach}
    </ul>
{else}
    <p class="noDeliveryService">{t}Нет служб доставки, доставляющих данный товар{/t}</p>
{/if}

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

Добрый день. Этот файл нужен?

Повысить оценку Понизить оценку

Re: СДЭК: задержка для городов, где нет их офиса

Извините за долгий ответ.
Судя по шаблону у Вас всё должно быть в порядке. Ведь у Вас есть строка

{if !$something_wrong || ($something_wrong && $current_user->isAdmin())}

Дайте как ссылку на проблемный товар, может у Вас всё на самом деле в порядке.

Re: СДЭК: задержка для городов, где нет их офиса

Добрый день. У меня со всеми товарами так.
Вот например этот: https://vaporstore.kz/product/coilart-azeroth-rdta/
Выберите город Балхаш, Карагандинская обл.

Красные строки с ошибками что в модуле расчета доставки и также при оформлении заказа при выборе доставки.

Повысить оценку Понизить оценку