From 41a33e651688d02ad880800d7f7acebeecf61278 Mon Sep 17 00:00:00 2001
From: Maxim Slipenko
Date: Thu, 13 Jun 2024 20:30:01 +0300
Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?=
=?UTF-8?q?=D0=BD=D0=BE=20=D0=BE=D1=82=D0=BE=D0=B1=D1=80=D0=B0=D0=B6=D0=B5?=
=?UTF-8?q?=D0=BD=D0=B8=D0=B5=20ID=20=D0=BF=D1=83=D0=BD=D0=BA=D1=82=D0=B0?=
=?UTF-8?q?=20=D0=B2=D1=8B=D0=B4=D0=B0=D1=87=D0=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Closes #3
---
merged-data.json | 148 +++++++++++++++++++++---------------------
scripts/merge-data.js | 7 ++
scripts/utils.js | 12 ++++
src/features.js | 2 +-
src/index.html | 3 +
src/popup.js | 15 +++--
6 files changed, 108 insertions(+), 79 deletions(-)
diff --git a/merged-data.json b/merged-data.json
index c9540f7..c9df73a 100644
--- a/merged-data.json
+++ b/merged-data.json
@@ -1,334 +1,334 @@
[
{
+ "id": "538097",
"coordinates": [
37.689712,
47.948376
],
"name": "ПВЗ-03 Ляшенко",
"address": "Донецк, Ляшенко 1а",
- "link": "https://ozon.ru/point/538097",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538186",
"coordinates": [
37.798876,
47.988652
],
"name": "ПВЗ-08 Первомайская",
"address": "Донецк, ул. Первомайская (АС Центр)",
- "link": "https://ozon.ru/point/538186",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "524639",
"coordinates": [
37.798576,
48.006233
],
"name": "ПВЗ-10 Театральный",
"address": "Донецк, ул. Университетская 26",
- "link": "https://ozon.ru/point/524639",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "536833",
"coordinates": [
37.846456,
48.009223
],
"name": "ПВЗ-11 Шевченко",
"address": "Донецк, бул. Шевченко 77",
- "link": "https://ozon.ru/point/536833",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "536825",
"coordinates": [
38.61702,
48.026791
],
"name": "ПВЗ-13 Торез",
"address": "Торез, ул. Пионерская 1",
- "link": "https://ozon.ru/point/536825",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538179",
"coordinates": [
37.830801,
48.000825
],
"name": "ПВЗ-14 Ильича",
"address": "Донецк, пр. Ильича 27",
- "link": "https://ozon.ru/point/538179",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "536838",
"coordinates": [
37.810254,
47.9534
],
"name": "ПВЗ-15 Боссе",
"address": "Донецк, ул. Речная 24б",
- "link": "https://ozon.ru/point/536838",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "536623",
"coordinates": [
38.159416,
48.036587
],
"name": "ПВЗ-16 Харцызск",
"address": "Харцызск, ул. Шалимова 14б",
- "link": "https://ozon.ru/point/536623",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "536839",
"coordinates": [
38.266878,
48.007579
],
"name": "ПВЗ-17 Зугрэс",
"address": "Зугрэс, ул. Рыночная 1",
- "link": "https://ozon.ru/point/536839",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "533314",
"coordinates": [
37.81148,
48.008645
],
"name": "ПВЗ-21 Крытый",
"address": "Донецк, ул. 50-летия СССР 150",
- "link": "https://ozon.ru/point/533314",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "536826",
"coordinates": [
37.914097,
47.99136
],
"name": "ПВЗ-22 Независимости",
"address": "Донецк, ул. Независимости 16д",
- "link": "https://ozon.ru/point/536826",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "533348",
"coordinates": [
37.921085,
47.975167
],
"name": "ПВЗ-23 Раздольная",
"address": "Донецк, ул. Раздольная 6",
- "link": "https://ozon.ru/point/533348",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "536830",
"coordinates": [
37.793818,
47.975021
],
"name": "ПВЗ-24 Соловки",
"address": "Донецк, ул. Пилотная 28",
- "link": "https://ozon.ru/point/536830",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "534957",
"coordinates": [
37.955202,
48.098354
],
"name": "ПВЗ-25 МК3 Черемушки",
"address": "Макеевка, квартал Северный 17",
- "link": "https://ozon.ru/point/534957",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "534949",
"coordinates": [
37.854225,
48.008783
],
"name": "ПВЗ-26 Шахтостроителей",
"address": "Донецк, бул. Шахтостроителей 20",
- "link": "https://ozon.ru/point/534949",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "536823",
"coordinates": [
37.799925,
48.022137
],
"name": "ПВЗ-27 Детский Мир",
"address": "Донецк, ул. Артема 147а",
- "link": "https://ozon.ru/point/536823",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538369",
"coordinates": [
37.926916,
47.964525
],
"name": "ПВЗ-29 Объединенный",
"address": "Донецк, ул. Буденновских партизан",
- "link": "https://ozon.ru/point/538369",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538183",
"coordinates": [
37.8062,
47.991033
],
"name": "ПВЗ-30 Постышева",
"address": "Донецк, ул. Постышева 43",
- "link": "https://ozon.ru/point/538183",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "533329",
"coordinates": [
37.811583,
47.99713
],
"name": "ПВЗ-33 Пирамида",
"address": "Донецк, ул. 50-летия СССР 100",
- "link": "https://ozon.ru/point/533329",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538182",
"coordinates": [
37.778903,
48.044231
],
"name": "ПВЗ-34 Киевский",
"address": "Донецк, пр. Киевский 24",
- "link": "https://ozon.ru/point/538182",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538096",
"coordinates": [
37.753662,
48.028202
],
"name": "ПВЗ-35 Топаз",
"address": "Донецк, ул. Куйбышева 169б",
- "link": "https://ozon.ru/point/538096",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538184",
"coordinates": [
37.965086,
48.100112
],
"name": "ПВЗ-36 МК-4 Даки",
"address": "Макеевка, ул. 50 лет Образования СССР 24а",
- "link": "https://ozon.ru/point/538184",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "533332",
"coordinates": [
37.747969,
48.034874
],
"name": "ПВЗ-38 Волна",
"address": "Донецк, ул. Куйбышева 217Б",
- "link": "https://ozon.ru/point/533332",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "535056",
"coordinates": [
37.70346,
47.970189
],
"name": "ПВЗ-39 Семашко",
"address": "Донецк, ул. Коммунаров 38",
- "link": "https://ozon.ru/point/535056",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "533345",
"coordinates": [
37.701071,
47.945246
],
"name": "ПВЗ-40 Островского20",
"address": "Донецк, ул. Островского 20",
- "link": "https://ozon.ru/point/533345",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538094",
"coordinates": [
37.807773,
48.004304
],
"name": "ПВЗ-43 Гурова 22",
"address": "Донецк, пр. Гурова 22",
- "link": "https://ozon.ru/point/538094",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "538095",
"coordinates": [
37.768318,
47.95952
],
"name": "ПВЗ-44 Кольцова15",
"address": "Донецк, ул. Кольцова 15",
- "link": "https://ozon.ru/point/538095",
"operationTime": "пн-вс с 9:00 до 18:00",
"source": "https://login.woyag.ru/map",
"provider": "WOЯЖ"
},
{
+ "id": "533323",
"coordinates": [
37.811995,
48.011767
],
- "link": "https://ozon.ru/point/533323",
"name": "г. Донецк, ул. 50-летия СССР, 157А",
"address": "г. Донецк, ул. 50-летия СССР, 157А",
"operationTime": "ГРАФИК РАБОТЫ",
@@ -336,11 +336,11 @@
"provider": "Global Express"
},
{
+ "id": "533347",
"coordinates": [
37.799192,
47.991666
],
- "link": "https://ozon.ru/point/533347",
"name": "г. Донецк, площадь Коммунаров 1к1, ТЦ «Южный»",
"address": "г. Донецк, площадь Коммунаров 1к1, ТЦ «Южный»",
"operationTime": "ГРАФИК РАБОТЫ",
@@ -348,11 +348,11 @@
"provider": "Global Express"
},
{
+ "id": "534953",
"coordinates": [
37.775896,
47.959707
],
- "link": "https://ozon.ru/point/534953",
"name": "г. Донецк, пр - кт Ленинский, 98Аостановка «Звездный»",
"address": "г. Донецк, пр - кт Ленинский, 98Аостановка «Звездный»",
"operationTime": "ГРАФИК РАБОТЫ",
@@ -360,11 +360,11 @@
"provider": "Global Express"
},
{
+ "id": "533350",
"coordinates": [
38.635921,
48.047327
],
- "link": "https://ozon.ru/point/533350",
"name": "г. Торез, 4й микрорайон, (торговые павильоны в районе дома 23)",
"address": "г. Торез, 4й микрорайон, (торговые павильоны в районе дома 23)",
"operationTime": "ГРАФИК РАБОТЫ",
@@ -372,11 +372,11 @@
"provider": "Global Express"
},
{
+ "id": "534920",
"coordinates": [
38.761523,
48.021133
],
- "link": "https://ozon.ru/point/534920",
"name": "Снежное, ул. Дзержинского, 2",
"address": "Снежное, ул. Дзержинского, 2",
"operationTime": "ГРАФИК РАБОТЫ",
@@ -384,11 +384,11 @@
"provider": "Global Express"
},
{
+ "id": "534903",
"coordinates": [
38.208714,
48.221055
],
- "link": "https://ozon.ru/point/534903",
"name": "Енакиево, проспект Ленина, 98в",
"address": "Енакиево, проспект Ленина, 98в",
"operationTime": "ГРАФИК РАБОТЫ",
@@ -396,311 +396,311 @@
"provider": "Global Express"
},
{
+ "id": "517058",
"coordinates": [
37.845475,
47.994778
],
"name": "ПВЗ г.Донецк, ул.Харитонова, 3",
"address": "г.Донецк, ул.Харитонова, 3",
- "link": "https://ozon.ru/point/517058",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "517054",
"coordinates": [
37.790642,
47.988073
],
"name": "ПВЗ г.Донецк, пр.Ленинский, 4",
"address": "г.Донецк, пр.Ленинский, 4",
- "link": "https://ozon.ru/point/517054",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "517053",
"coordinates": [
37.694046,
47.949874
],
"name": "ПВЗ г.Донецк, ул.Петровского, 111в",
"address": "г.Донецк, ул.Петровского, 111в",
- "link": "https://ozon.ru/point/517053",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "514822",
"coordinates": [
37.798637,
48.009
],
"name": "ПВЗ г.Донецк, ул.Университетская, 34",
"address": "г.Донецк, ул.Университетская, 34",
- "link": "https://ozon.ru/point/514822",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "517056",
"coordinates": [
37.899868,
47.991365
],
"name": "ПВЗ г.Донецк, ул.Полоцкая, 9",
"address": "г.Донецк, ул.Полоцкая, 9",
- "link": "https://ozon.ru/point/517056",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "516734",
"coordinates": [
37.551447,
47.106867
],
"name": "ПВЗ г.Мариуполь, пр.Металлургов, 94",
"address": "г.Мариуполь, пр.Металлургов, 94",
- "link": "https://ozon.ru/point/516734",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "517062",
"coordinates": [
37.960468,
48.041197
],
"name": "ПВЗ г.Макеевка, ул.Рябцева, 1",
"address": "г.Макеевка, ул.Рябцева, 1",
- "link": "https://ozon.ru/point/517062",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "517055",
"coordinates": [
37.781488,
48.03651
],
"name": "ПВЗ г.Донецк, ул.Артема, 148а",
"address": "г.Донецк, ул.Артема, 148а",
- "link": "https://ozon.ru/point/517055",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "517061",
"coordinates": [
37.7964,
48.00381
],
"name": "ПВЗ г.Донецк, пр.Гурова, 7",
"address": "г.Донецк, пр.Гурова, 7",
- "link": "https://ozon.ru/point/517061",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "517059",
"coordinates": [
37.807934,
48.014371
],
"name": "ПВЗ г.Донецк, ул.Челюскинцев, 167",
"address": "г.Донецк, ул.Челюскинцев, 167",
- "link": "https://ozon.ru/point/517059",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "514844",
"coordinates": [
37.835405,
48.002471
],
"name": "ПВЗ г.Донецк, пр.Ильича, 32",
"address": "г.Донецк, пр.Ильича, 32",
- "link": "https://ozon.ru/point/514844",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "534902",
"coordinates": [
38.026077,
48.045442
],
"name": "ПВЗ г.Макеевка, пр.Генерала Данилова, 71б",
"address": "г.Макеевка, пр.Генерала Данилова, 71б",
- "link": "https://ozon.ru/point/534902",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "534899",
"coordinates": [
37.778362,
47.978513
],
"name": "ПВЗ г. Донецк, ул.Воровского, 9",
"address": "г. Донецк, ул.Воровского, 9",
- "link": "https://ozon.ru/point/534899",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "533305",
"coordinates": [
38.084391,
47.11915
],
"name": "ПВЗ г.Новоазовск, ул.Ленина, 48",
"address": "г.Новоазовск, ул.Ленина, 48",
- "link": "https://ozon.ru/point/533305",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "538086",
"coordinates": [
37.795933,
48.021495
],
"name": "ПВЗ г.Донецк, ул.Университетская, 76",
"address": "г.Донецк, ул.Университетская, 76",
- "link": "https://ozon.ru/point/538086",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "533308",
"coordinates": [
37.907342,
47.977482
],
"name": "ПВЗ г.Донецк, ул.Прожекторная, 3",
"address": "г.Донецк, ул.Прожекторная, 3",
- "link": "https://ozon.ru/point/533308",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "538180",
"coordinates": [
37.864259,
48.009494
],
"name": "ПВЗ г.Донецк, бул.Шевченко, 129",
"address": "г.Донецк, бул.Шевченко, 129",
- "link": "https://ozon.ru/point/538180",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
+ "id": "535038",
"coordinates": [
38.145171,
48.04074
],
"name": "г. Харцызск, ул. Октябрьская 84",
- "link": "https://ozon.ru/point/535038",
"address": "г. Харцызск, ул. Октябрьская 84",
"operationTime": "Понедельник — с 9 до 17\nВторник — с 11 до 17\nСреда — с 9 до 17\nЧетверг — с 11 до 17\nПятница — с 11 до 17\nСуббота — с 10 до 15\nВоскресенье — выходной",
"source": "https://vk.com/pervijpvzkharcizsk?w=wall-217042772_1342",
"provider": "ПЕРВЫЙ ПУНКТ ВЫДАЧИ"
},
{
+ "id": "534940",
"coordinates": [
38.140113,
48.056208
],
"name": "г. Харцызск, м-н Юбилейный 4",
- "link": "https://ozon.ru/point/534940",
"address": "г. Харцызск, м-н Юбилейный 4",
"operationTime": "Понедельник — выходной\nВторник — с 11 до 17\nСреда — с 9 до 17\nЧетверг — с 11 до 17\nПятница — с 11 до 17\nСуббота — с 9 до 17\nВоскресенье — выходной",
"source": "https://vk.com/pervijpvzkharcizsk?w=wall-217042772_1342",
"provider": "ПЕРВЫЙ ПУНКТ ВЫДАЧИ"
},
{
+ "id": "536824",
"coordinates": [
38.010271,
48.303874
],
"name": "Горловка, проспект Победы 55",
- "link": "https://ozon.ru/point/536824",
"address": "Горловка, проспект Победы 55",
"operationTime": "пн-вс с 9.00 до 18.00",
"source": "https://vk.com/pvz_dnr?w=wall-201744740_796",
"provider": "PVZ | Пункт выдачи заказов"
},
{
+ "id": "536836",
"coordinates": [
38.142934,
48.321593
],
"name": "Горловка, ул. 40 лет Украины 9",
- "link": "https://ozon.ru/point/536836",
"address": "Горловка, ул. 40 лет Украины 9",
"operationTime": "пн-вс с 9.00 до 18.00",
"source": "https://vk.com/pvz_dnr?w=wall-201744740_796",
"provider": "PVZ | Пункт выдачи заказов"
},
{
+ "id": "536827",
"coordinates": [
38.059606,
48.329483
],
"name": "Горловка, ул. Бессонова 29а",
- "link": "https://ozon.ru/point/536827",
"address": "Горловка, ул. Бессонова 29а",
"operationTime": "пн-вс с 9.00 до 18.00",
"source": "https://vk.com/pvz_dnr?w=wall-201744740_796",
"provider": "PVZ | Пункт выдачи заказов"
},
{
+ "id": "536832",
"coordinates": [
38.020943,
48.305576
],
"name": "Горловка, ул. Гагарина 32",
- "link": "https://ozon.ru/point/536832",
"address": "Горловка, ул. Гагарина 32",
"operationTime": "пн-вс с 9.00 до 18.00",
"source": "https://vk.com/pvz_dnr?w=wall-201744740_796",
"provider": "PVZ | Пункт выдачи заказов"
},
{
+ "id": "536666",
"coordinates": [
38.211377,
48.248815
],
"name": "Енакиево, 50 лет Октября 58а",
- "link": "https://ozon.ru/point/536666",
"address": "Енакиево, 50 лет Октября 58а",
"operationTime": "пн-вс с 9.00 до 18.00",
"source": "https://vk.com/pvz_dnr?w=wall-201744740_796",
"provider": "PVZ | Пункт выдачи заказов"
},
{
+ "id": "536668",
"coordinates": [
38.20826,
48.218447
],
"name": "Енакиево, ул. Ленина 91а",
- "link": "https://ozon.ru/point/536668",
"address": "Енакиево, ул. Ленина 91а",
"operationTime": "пн-вс с 9.00 до 18.00",
"source": "https://vk.com/pvz_dnr?w=wall-201744740_796",
"provider": "PVZ | Пункт выдачи заказов"
},
{
+ "id": "518290",
"coordinates": [
37.525568,
47.122058
],
- "link": "https://ozon.ru/point/518290",
"name": "г. Мариуполь ул. Урицкого 63",
"address": "г. Мариуполь ул. Урицкого 63",
"operationTime": "неизвестно",
@@ -708,11 +708,11 @@
"provider": "7dostavka"
},
{
+ "id": "524695",
"coordinates": [
37.964861,
48.042703
],
- "link": "https://ozon.ru/point/524695",
"name": "Макеевка, улица Ленина, 50А",
"address": "Макеевка, улица Ленина, 50А",
"operationTime": "неизвестно",
@@ -720,11 +720,11 @@
"provider": "7dostavka"
},
{
+ "id": "533299",
"coordinates": [
37.964385,
48.063151
],
- "link": "https://ozon.ru/point/533299",
"name": "Макеевка, улица Ленина, 108",
"address": "Макеевка, улица Ленина, 108",
"operationTime": "неизвестно",
@@ -732,11 +732,11 @@
"provider": "7dostavka"
},
{
+ "id": "536829",
"coordinates": [
37.554403,
47.1071
],
- "link": "https://ozon.ru/point/536829",
"name": "Мариуполь, пр. Металлургов 97",
"address": "Мариуполь, пр. Металлургов 97",
"operationTime": "неизвестно",
@@ -744,11 +744,11 @@
"provider": "7dostavka"
},
{
+ "id": "536828",
"coordinates": [
37.567455,
47.13514
],
- "link": "https://ozon.ru/point/536828",
"name": "Мариуполь, пр. Металлургов 227",
"address": "Мариуполь, пр. Металлургов 227",
"operationTime": "неизвестно",
@@ -756,11 +756,11 @@
"provider": "7dostavka"
},
{
+ "id": "536673",
"coordinates": [
37.65426,
47.106075
],
- "link": "https://ozon.ru/point/536673",
"name": "Мариуполь, пр. Победы 89",
"address": "Мариуполь, пр. Победы 89",
"operationTime": "неизвестно",
@@ -768,11 +768,11 @@
"provider": "7dostavka"
},
{
+ "id": "536837",
"coordinates": [
37.687749,
47.125122
],
- "link": "https://ozon.ru/point/536837",
"name": "Мариуполь, ул. Киевская 51",
"address": "Мариуполь, ул. Киевская 51",
"operationTime": "неизвестно",
@@ -780,11 +780,11 @@
"provider": "7dostavka"
},
{
+ "id": "536835",
"coordinates": [
37.675083,
47.113282
],
- "link": "https://ozon.ru/point/536835",
"name": "Мариуполь, ул. Февральская 44а",
"address": "Мариуполь, ул. Февральская 44а",
"operationTime": "неизвестно",
@@ -792,11 +792,11 @@
"provider": "7dostavka"
},
{
+ "id": "536831",
"coordinates": [
37.539257,
47.096568
],
- "link": "https://ozon.ru/point/536831",
"name": "Мариуполь, Казанцева 22а",
"address": "Мариуполь, Казанцева 22а",
"operationTime": "неизвестно",
@@ -804,11 +804,11 @@
"provider": "7dostavka"
},
{
+ "id": "538187",
"coordinates": [
36.792245,
46.755007
],
- "link": "https://ozon.ru/point/538187",
"name": "г. Бердянск проспект Победы 11 б",
"address": "г. Бердянск проспект Победы 11 б",
"operationTime": "неизвестно",
@@ -816,11 +816,11 @@
"provider": "7dostavka"
},
{
+ "id": "538091",
"coordinates": [
38.48274,
48.043203
],
- "link": "https://ozon.ru/point/538091",
"name": "г. Шахтёрск, улица Крупская,1( района автовокзала)",
"address": "г. Шахтёрск, улица Крупская,1( района автовокзала)",
"operationTime": "неизвестно",
@@ -828,11 +828,11 @@
"provider": "7dostavka"
},
{
+ "id": "538092",
"coordinates": [
38.144865,
48.037727
],
- "link": "https://ozon.ru/point/538092",
"name": "г.Харцызск, ул.Вокзальная, 67",
"address": "г.Харцызск, ул.Вокзальная, 67",
"operationTime": "неизвестно",
@@ -840,11 +840,11 @@
"provider": "7dostavka"
},
{
+ "id": "538093",
"coordinates": [
38.150597,
48.042505
],
- "link": "https://ozon.ru/point/538093",
"name": "г.Харцызск, ул.Первомайская,1а",
"address": "г.Харцызск, ул.Первомайская,1а",
"operationTime": "неизвестно",
@@ -852,11 +852,11 @@
"provider": "7dostavka"
},
{
+ "id": "538181",
"coordinates": [
37.806057,
47.958853
],
- "link": "https://ozon.ru/point/538181",
"name": "г. Донецк, Куприна 3а",
"address": "г. Донецк, Куприна 3а",
"operationTime": "неизвестно",
@@ -864,11 +864,11 @@
"provider": "7dostavka"
},
{
+ "id": "538177",
"coordinates": [
37.849239,
48.009934
],
- "link": "https://ozon.ru/point/538177",
"name": "г. Донецк, бул. Шевченко 66",
"address": "г. Донецк, бул. Шевченко 66",
"operationTime": "неизвестно",
@@ -876,11 +876,11 @@
"provider": "7dostavka"
},
{
+ "id": "538178",
"coordinates": [
37.995841,
47.413247
],
- "link": "https://ozon.ru/point/538178",
"name": "пгт. Тельманово ул. Ленина 251",
"address": "пгт. Тельманово ул. Ленина 251",
"operationTime": "неизвестно",
diff --git a/scripts/merge-data.js b/scripts/merge-data.js
index bbe5d80..6e15090 100644
--- a/scripts/merge-data.js
+++ b/scripts/merge-data.js
@@ -1,6 +1,7 @@
import fs from "node:fs/promises";
import { asyncMap } from "modern-async";
import { getDistance } from "ol/sphere.js";
+import { extractIDFromURL } from "./utils.js";
function removeDuplicatesByUrl(points) {
const uniquePoints = [];
@@ -64,6 +65,12 @@ async function main() {
data = data.flatMap((v) => v);
data = removeDuplicatesByUrl(data);
data = removeDuplicatesByRadius(data, 10);
+
+ // pick all except url
+ data = data.map(x => {
+ const { link, ...rest } = x;
+ return { id: extractIDFromURL(link), ...rest };
+ });
await fs.writeFile("merged-data.json", JSON.stringify(data, undefined, 2));
}
diff --git a/scripts/utils.js b/scripts/utils.js
index 687fcab..7a59f04 100644
--- a/scripts/utils.js
+++ b/scripts/utils.js
@@ -63,3 +63,15 @@ export async function getTelegramMessage(input) {
.innerHTML,
};
}
+
+/**
+ * Извлекает идентификатор пункта выдачи OZON из ссылки
+ * @param {string} url
+ */
+export function extractIDFromURL(url) {
+ const match = url.match(/https:\/\/ozon\.ru\/point\/([0-9]+)/);
+ if (match) {
+ return match[1];
+ }
+ return null;
+}
\ No newline at end of file
diff --git a/src/features.js b/src/features.js
index 8caf347..e8ba344 100644
--- a/src/features.js
+++ b/src/features.js
@@ -22,7 +22,7 @@ function createFeatures(places) {
geometry: new Point(fromLonLat(place.coordinates)),
name: `[${place.provider}] ${place.name}`,
address: place.address,
- link: place.link,
+ id: place.id,
source: place.source,
operationTime: place.operationTime,
});
diff --git a/src/index.html b/src/index.html
index be91bd3..3c6dc83 100644
--- a/src/index.html
+++ b/src/index.html
@@ -111,6 +111,9 @@
+
+ Пункт Партнёра
+
diff --git a/src/popup.js b/src/popup.js
index f183fa6..47d0d6d 100644
--- a/src/popup.js
+++ b/src/popup.js
@@ -10,10 +10,12 @@ const closer = el("popup-closer");
const popupName = el("popup-name");
const popupAddress = el("popup-address");
const popupLink = el("popup-link");
+const popupPVZId = el("popup-pvz-id");
const popupCanvas = el("popup-canvas");
const popupSource = el("popup-source");
const popupOperationTime = el("popup-operation-time");
+
const overlay = new Overlay({
element: popup,
autoPan: true,
@@ -41,16 +43,21 @@ function onClick(event) {
const [lon, lat] = toLonLat(coordinates);
+
+ const pvzId = feature.get("id");
+
+ const link = `https://ozon.ru/point/${pvzId}`;
+
popupName.textContent = feature.get("name");
popupAddress.textContent = feature.get("address");
- popupAddress.href = `https://yandex.ru/maps/?whatshere[point]=${lon},${lat}&whatshere[zoom]=18&l=map`
- popupLink.href = feature.get("link");
+ popupAddress.href = `https://yandex.ru/maps/?whatshere[point]=${lon},${lat}&whatshere[zoom]=18&l=map`;
+ popupLink.href = link;
popupSource.href = feature.get("source");
popupOperationTime.innerHTML = feature.get("operationTime") ?? "неизвестно";
+ popupPVZId.innerText = pvzId;
- QRCode.toCanvas(popupCanvas, feature.get("link"), function (error) {
+ QRCode.toCanvas(popupCanvas, link, function (error) {
if (error) console.error(error);
- console.log("success!");
});
overlay.setPosition(coordinates);