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