
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
02.09.2017, 22:20:34
|
|||
|---|---|---|---|
Подскажите как реализовать. |
|||
|
#18+
Всем привет, подскажите как правильно сделать следующую фичу. Есть таблица заказов в которой храниться ID службы доставки через которую отправили заказ (id_deliveryservice) и номер отправления (tracknumber). Есть таблица слубж доставки типа где храниться информация о службах доставки. IDNAMEAPIKEY Поступили задача трекать статус доставки с программы, у служб доставки есть прекрасные API которые отдают JSON с полной информацией о статусе посылки, у каждой службы доставки своя структура как реквеста так и респонса. Входные и выходные данные для трекинга будут унифицированные (на вход передать трек номер) и получить на выходе данные о статусе. А саму магию делать в средине некой функции или ряда функций. Собственно вопрос как это реализовать чтобы меньше было всяких IF и легко в одном месте можно было добавлять новые службы доставки или редактировать в случае изменения API? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.09.2017, 22:45:22
|
|||
|---|---|---|---|
Подскажите как реализовать. |
|||
|
#18+
defecator, Приложение на Delphi, а вот база здесь участия мало принимает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.09.2017, 22:48:05
|
|||
|---|---|---|---|
Подскажите как реализовать. |
|||
|
#18+
Sashauadefecator, Приложение на Delphi, а вот база здесь участия мало принимает. Тогда надо вспомнить объектно-ориентированное программирование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.09.2017, 23:00:08
|
|||
|---|---|---|---|
Подскажите как реализовать. |
|||
|
#18+
Поставить один лишний иф и строчку кода -- мелочь по сравнению с реализацией протокола обмена со службой доставки. Более того, службы бывают настолько разные, что у них будет не только реализация отличаться (json, xml, soap, plain text), но и банальные коды ошибок и статусов. Я бы начал с приведением к одному общему внутреннему формату и составлению списка базовых операций с дальнейшей реализации этих самых операций в отдельных модулях (один модуль-класс -- одна служба доставки: инициализация настроек доступа-подключения, получение статуса посылки, заявка на доставку и т.п. верхнеуровневые методы). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.09.2017, 07:19:48
|
|||
|---|---|---|---|
Подскажите как реализовать. |
|||
|
#18+
конечно, тут очень нужно знать подробности но в общем, с т.з. ООП мы имеем необходимость выработать общий класс-предок и для каждой из служб перекрывать методы получения информации ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.09.2017, 23:41:43
|
|||
|---|---|---|---|
Подскажите как реализовать. |
|||
|
#18+
Подскажите еще. Реализовал так. Каждая служба доставки отдельный класс, в котором реализуется своя магия получения статуса отправления. Вопрос, как правильно без костылей обратиться к правильному классу в зависимости от службы доставки (в каждой службы доставки свой уникальный ID)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.09.2017, 08:22:13
|
|||
|---|---|---|---|
|
|||
Подскажите как реализовать. |
|||
|
#18+
Sashaua, Процедура трекинга на скриптовом языке. Скрипт в базе и связан со службой доставки. У меня подобным образом организован импорт банковских выписок. Там тоже форматы разные и требуется добавление новых видов: txt, dbf, xml и т.д. Сделал на FastScript. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=58&mobile=1&tid=2041816]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
204ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 542ms |

| 0 / 0 |
