| | 1 | = Интеграция с внешними учетными системами (1С и др.) = |
| | 2 | |
| | 3 | Интеграция реализована путем обмена сообщениями в JSON формате по протоколу HTTP. Инициатором обмена выступает сторонняя система. Необходимым условием является наличие следующих HTTP заголовков: |
| | 4 | * X-Signature: reserved |
| | 5 | * Content-Type: text/x-json |
| | 6 | |
| | 7 | == Импорт === |
| | 8 | Компонент может импортировать из сторонних систем такие исходные данные: |
| | 9 | * Перечень контейнерных площадок |
| | 10 | * Запланированные маршруты движения |
| | 11 | * Персонал (водители мусороуборочной техники, грузчики/экспедиторы) |
| | 12 | |
| | 13 | == Экспорт === |
| | 14 | В сторонние системы экспортируются данные о фактическом выполнении маршрутов. |
| | 15 | |
| | 16 | '''Выгрузка итогов по маршруту''' (http://<server_name>/components/communa/export_to_1c_v2). |
| | 17 | |
| | 18 | Запрос должен содержать идентификатор/код маршрута в параметре waybill: |
| | 19 | {{{ |
| | 20 | {"waybill":14721} |
| | 21 | }}} |
| | 22 | |
| | 23 | В ответ будет отправлено сообщение с суммарными результатами уборки: |
| | 24 | {{{ |
| | 25 | { |
| | 26 | "waybill": { |
| | 27 | "wastebin_loads": {"reported": 53, "out_of_route": 139, "total": 192}, |
| | 28 | "waybill": 14721, |
| | 29 | "route_start_time": "2021-04-16 13:21:51", |
| | 30 | "route_end_time": "2021-04-17 12:35:46" |
| | 31 | }, |
| | 32 | "trucks": [ |
| | 33 | { |
| | 34 | "tablet_id": "445a52a0f59eb406", |
| | 35 | "capacity": 10.000, |
| | 36 | "id": 1015157 |
| | 37 | }, |
| | 38 | { |
| | 39 | "tablet_id": "e36e5da7533265a0", |
| | 40 | "capacity": 10.000, |
| | 41 | "id": 1015131 |
| | 42 | } |
| | 43 | ], |
| | 44 | "success": true, |
| | 45 | "personnel": [ |
| | 46 | { |
| | 47 | "first_name": "Василий", |
| | 48 | "last_name": "mts1", |
| | 49 | "middle_name": "", |
| | 50 | "id": 1012652 |
| | 51 | }, |
| | 52 | { |
| | 53 | "first_name": "Иван", |
| | 54 | "last_name": "mts", |
| | 55 | "middle_name": "", |
| | 56 | "id": 1012651 |
| | 57 | } |
| | 58 | ] |
| | 59 | } |
| | 60 | }}} |
| | 61 | |
| | 62 | '''Выгрузка итогов по маршруту с площадками''' (http://<server_name>/components/communa/export_to_1c). |
| | 63 | |
| | 64 | Запрос: |
| | 65 | {{{ |
| | 66 | {"waybill":14721} |
| | 67 | }}} |
| | 68 | |
| | 69 | Ответ: |
| | 70 | {{{ |
| | 71 | { |
| | 72 | "waybill": { |
| | 73 | "waybill": 14721, |
| | 74 | "points": [ |
| | 75 | { |
| | 76 | "long": 30.4067446392582, |
| | 77 | "reason": "Cтояв автомобіль", |
| | 78 | "lat": 50.4820775451919, |
| | 79 | "loaded": 0, |
| | 80 | "id": 8556, |
| | 81 | "left": 1 |
| | 82 | }, |
| | 83 | { |
| | 84 | "long": 30.4067553599089, |
| | 85 | "reason": null, |
| | 86 | "lat": 50.4820707265568, |
| | 87 | "loaded": 1, |
| | 88 | "id": 8568, |
| | 89 | "left": 0 |
| | 90 | }, |
| | 91 | |
| | 92 | ... |
| | 93 | |
| | 94 | { |
| | 95 | "long": 30.4095232486725, |
| | 96 | "reason": null, |
| | 97 | "lat": 50.4938488915337, |
| | 98 | "loaded": 1, |
| | 99 | "id": 11831, |
| | 100 | "left": 0 |
| | 101 | } |
| | 102 | ] |
| | 103 | }, |
| | 104 | "success": true |
| | 105 | } |
| | 106 | }}} |
| | 107 | |
| | 108 | '''Выгрузка итогов по машине за заданный интервал времени''' (http://<server_name>/components/communa/export_to_1c_v3). |
| | 109 | |
| | 110 | В запросе указывает идентификатор мусороуборочной машины (код документа карточки спецавтомобиля. Его можно узнать, открыв карточку спецавтомобиля и кликнув самую правую иконку на панели инструментов в карточке), а так же начальное и конечное время: |
| | 111 | {{{ |
| | 112 | { |
| | 113 | "truck_id": 1014489, |
| | 114 | "time_from": "2021-08-09 00:00:00", |
| | 115 | "time_to": "2021-08-09 23:59:59" |
| | 116 | } |
| | 117 | }}} |
| | 118 | |
| | 119 | Ответ: |
| | 120 | {{{ |
| | 121 | { |
| | 122 | "wastebin_loads": { |
| | 123 | "total": 0, |
| | 124 | "reported": 0, |
| | 125 | "time_to": "2021-08-09 23:59:59", |
| | 126 | "time_from": "2021-08-09 00:00:00", |
| | 127 | "out_of_route": 0 |
| | 128 | }, |
| | 129 | "truck": { |
| | 130 | "tablet_id": "29e199b8401de077", |
| | 131 | "id": 1014489, |
| | 132 | "object_id": 1405 |
| | 133 | }, |
| | 134 | "trips": [ |
| | 135 | { |
| | 136 | "route_id": 1029535, |
| | 137 | "loader_id": 1012652, |
| | 138 | "driver_id": 1012651, |
| | 139 | "loader_name": "mts1 Василий ", |
| | 140 | "time_to": "2021-08-09 05:54:29", |
| | 141 | "time_from": null, |
| | 142 | "mileage": null, |
| | 143 | "driver_name": "mts Иван " |
| | 144 | }, |
| | 145 | { |
| | 146 | "route_id": 1029535, |
| | 147 | "loader_id": 1012652, |
| | 148 | "driver_id": 1012651, |
| | 149 | "loader_name": "mts1 Василий ", |
| | 150 | "time_to": "2021-08-09 06:45:05", |
| | 151 | "time_from": "2021-08-09 06:41:21", |
| | 152 | "mileage": 0.181945757264796, |
| | 153 | "driver_name": "mts Иван " |
| | 154 | }, |
| | 155 | { |
| | 156 | "route_id": 1030701, |
| | 157 | "loader_id": 1012652, |
| | 158 | "driver_id": 1012651, |
| | 159 | "loader_name": "mts1 Василий ", |
| | 160 | "time_to": null, |
| | 161 | "time_from": "2021-08-09 06:45:33", |
| | 162 | "mileage": null, |
| | 163 | "driver_name": "mts Иван " |
| | 164 | } |
| | 165 | ], |
| | 166 | "success": true |
| | 167 | } |
| | 168 | }}} |