@opengis/gis 0.2.20 → 0.2.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/dist/index.css +1 -1
- package/dist/index.js +2245 -2208
- package/dist/index.umd.cjs +32 -32
- package/module/cls.json +6 -6
- package/module/gis/card/gis.maps.table/index.yml +14 -14
- package/module/gis/card/gis.maps.table/main_info.hbs +25 -25
- package/module/gis/card/gis.maps.table/maps_layers.hbs +19 -19
- package/module/gis/card/gis.metadata.table/index.yml +22 -22
- package/module/gis/card/gis.metadata.table/main_info.hbs +20 -20
- package/module/gis/card/gis.metadata.table/metadata_info.hbs +27 -27
- package/module/gis/card/gis.metadata.table/other.hbs +25 -25
- package/module/gis/card/gis.rasters.table/index.yml +11 -11
- package/module/gis/card/gis.rasters.table/main_info.hbs +27 -27
- package/module/gis/card/gis.registers.table/cls.hbs +36 -36
- package/module/gis/card/gis.registers.table/columns.hbs +89 -89
- package/module/gis/card/gis.registers.table/filters.hbs +80 -80
- package/module/gis/card/gis.registers.table/index.yml +23 -23
- package/module/gis/card/gis.registers.table/main_info.hbs +35 -35
- package/module/gis/card/gis.registers.table/source.hbs +45 -45
- package/module/gis/card/gis.services.table/attributes.hbs +91 -91
- package/module/gis/card/gis.services.table/filters.hbs +83 -83
- package/module/gis/card/gis.services.table/index.yml +25 -25
- package/module/gis/card/gis.services.table/main_info.hbs +27 -27
- package/module/gis/card/gis.services.table/source.hbs +25 -25
- package/module/gis/cls/bool.yes_no.json +12 -12
- package/module/gis/cls/encoding.json +14 -14
- package/module/gis/cls/geom_type.json +14 -14
- package/module/gis/cls/gis.column_type.json +34 -34
- package/module/gis/cls/gis.column_view_type.json +26 -26
- package/module/gis/cls/gis.filter_type.json +22 -22
- package/module/gis/cls/language.json +10 -10
- package/module/gis/cls/meta.service_type.json +42 -42
- package/module/gis/cls/ogc.service.json +21 -21
- package/module/gis/cls/service_type.json +42 -42
- package/module/gis/cls/source_type.json +10 -10
- package/module/gis/cls/standarts.json +6 -6
- package/module/gis/cls/topic_category.json +106 -106
- package/module/gis/cls/update_frequency.json +29 -29
- package/module/gis/cls/view.json +21 -21
- package/module/gis/form/gis.group_list.form.json +17 -17
- package/module/gis/form/gis.maps.form.json +64 -64
- package/module/gis/form/gis.metadata.form.json +240 -240
- package/module/gis/form/gis.ogc_service.form.json +40 -40
- package/module/gis/form/gis.rasters.form.json +99 -99
- package/module/gis/form/gis.registers.form.json +110 -110
- package/module/gis/form/gis.registers_column.form.json +84 -84
- package/module/gis/form/gis.registers_filter.form.json +65 -65
- package/module/gis/form/gis.services.form.json +120 -120
- package/module/gis/form/gis.services_attributes.form.json +75 -75
- package/module/gis/form/gis.services_filter.form.json +65 -65
- package/module/gis/menu.json +43 -43
- package/module/gis/select/pg.columns.parent.sql +6 -6
- package/module/gis/select/pg.table_name.sql +17 -17
- package/module/gis/select/service_id.sql +1 -1
- package/module/gis/table/gis.group_list.table.json +35 -35
- package/module/gis/table/gis.maps.table.json +69 -69
- package/module/gis/table/gis.metadata.table.json +70 -70
- package/module/gis/table/gis.ogc_service.table.json +97 -97
- package/module/gis/table/gis.rasters.table.json +97 -97
- package/module/gis/table/gis.registers.table.json +79 -79
- package/module/gis/table/gis.services.table.json +99 -99
- package/module/gis/table/site.gis.registers.table.json +88 -88
- package/module/gis/table/site.gis.services.table.json +106 -106
- package/module/gis/templates/ISO19136_2017_gml_template.xml +330 -330
- package/module/gis/tokens.yml +5 -5
- package/module/test/cls/bp_build_type.json +37 -37
- package/module/test/cls/doc_status.json +31 -31
- package/module/test/cls/ts.temp_status.json +18 -18
- package/module/test/cls/ts.temp_structure.ts_class.json +49 -49
- package/module/test/cls/ts.temp_type.json +9 -9
- package/module/test/layer/bp.json +59 -59
- package/module/test/layer/bp1.yml +33 -33
- package/module/test/layer/individual.yml +53 -53
- package/module/test/layer/ts.linking_passport.yml +55 -55
- package/module/test/layer/ts.temp_structure.yml +50 -50
- package/module/test/map/addr.yml +21 -21
- package/module/test/map/bp_myo.json +43 -43
- package/module/test/map/bpf.json +43 -43
- package/module/test/map/main.json +36 -36
- package/module/test/map/mbd.json +91 -91
- package/module/test/map/ts.json +52 -52
- package/module/test/select/address_id.json +2 -2
- package/module/test/select/address_id.sql +7 -7
- package/module/test/select/core.user_uid.sql +1 -1
- package/module/test/table/data_address.street.table.json +69 -69
- package/module/test/table/data_bp_myo.bp.table.json +122 -122
- package/package.json +69 -69
- package/plugin.js +44 -44
- package/server/migrations/maps.sql +30 -30
- package/server/migrations/ogc.sql +106 -106
- package/server/migrations/rasters.sql +263 -263
- package/server/migrations/services.sql +247 -247
- package/server/migrations/widgets.sql +20 -20
- package/server/plugins/crons.js +21 -21
- package/server/plugins/mapnik/funcs/createXML.js +72 -72
- package/server/plugins/mapnik/funcs/gdalWrapper.js +72 -72
- package/server/plugins/mapnik/funcs/map.proto +241 -241
- package/server/plugins/mapnik/funcs/mapnik.js +106 -106
- package/server/plugins/mapnik/funcs/rasterConfig.js +11 -11
- package/server/plugins/mapnik/funcs/rasterExists.js +20 -20
- package/server/plugins/mapnik/funcs/rasterInfo.js +109 -109
- package/server/plugins/mapnik/funcs/rasterVrt.js +55 -55
- package/server/plugins/mapnik/funcs/rasterXML.js +65 -65
- package/server/plugins/mapnik/funcs/rootFolder.mjs +8 -8
- package/server/plugins/mapnik/utils/map.proto +241 -241
- package/server/plugins/vite.js +74 -74
- package/server/routes/gis/dashboard.js +29 -0
- package/server/routes/gis/index.mjs +61 -59
- package/server/routes/gis/metadata/metadataXML.js +13 -13
- package/server/routes/gis/ogc/map.info.point.js +124 -124
- package/server/routes/gis/registers/add.registry.js +35 -35
- package/server/routes/gis/registers/del.registry.js +14 -14
- package/server/routes/gis/registers/funcs/classifiers.js +100 -100
- package/server/routes/gis/registers/funcs/columns.js +4 -4
- package/server/routes/gis/registers/funcs/content.type.js +9 -9
- package/server/routes/gis/registers/funcs/get.info.js +89 -89
- package/server/routes/gis/registers/funcs/handleRegistryRequest.js +122 -122
- package/server/routes/gis/registers/gis.export.js +148 -148
- package/server/routes/gis/registers/gis.registry.js +38 -38
- package/server/routes/gis/registers/gis.registry.list.js +59 -59
- package/server/routes/gis/registers/insert.columns.js +107 -107
- package/server/routes/gis/registers/insert.filters.js +110 -110
- package/server/routes/gis/registers/map.registry.js +79 -79
- package/server/routes/gis/services/add.service.js +64 -64
- package/server/routes/gis/services/del.service.js +12 -12
- package/server/routes/gis/services/get.layer.geom.js +27 -27
- package/server/routes/gis/services/get.services.col.js +33 -33
- package/server/routes/gis/services/get.services.js +84 -84
- package/server/routes/gis/services/legend.auto.js +77 -77
- package/server/routes/map/controllers/layerList.js +60 -60
- package/server/routes/map/controllers/map.js +123 -123
- package/server/routes/map/controllers/mapCatalog.js +72 -72
- package/server/routes/map/controllers/mapCatalogAttribute.js +55 -55
- package/server/routes/map/controllers/mapFeatures.js +128 -128
- package/server/routes/map/controllers/mapFormat.js +83 -83
- package/server/routes/map/controllers/mapTiles.js +152 -152
- package/server/routes/map/controllers/maps.js +15 -15
- package/server/routes/map/controllers/marker_icon.js +43 -43
- package/server/routes/map/controllers/rtile.js +134 -134
- package/server/routes/map/controllers/vtile.js +172 -172
- package/server/routes/map/index.mjs +129 -129
- package/server/routes/map/maps/add.map.js +41 -41
- package/server/routes/map/maps/del.map.js +18 -18
- package/server/routes/map/maps/get.map.js +86 -86
- package/server/routes/map/vtile1.js +170 -170
- package/server/routes/map/widgets/add.widget.js +38 -38
- package/server/routes/map/widgets/del.widget.js +22 -22
- package/server/routes/map/widgets/get.widget.js +40 -40
- package/server/routes/root.mjs +3 -3
- package/utils.js +11 -11
|
@@ -1,248 +1,248 @@
|
|
|
1
|
-
create schema if not exists gis;
|
|
2
|
-
|
|
3
|
-
CREATE TABLE if not exists gis.services
|
|
4
|
-
(
|
|
5
|
-
service_id text NOT NULL DEFAULT next_id(),
|
|
6
|
-
name text NOT NULL, -- Назва сервісу
|
|
7
|
-
service_key text, -- Унікальний ключ
|
|
8
|
-
description text, -- Опис сервісу
|
|
9
|
-
keywords text[], -- Ключові слова
|
|
10
|
-
category text, -- Категорія сервісу
|
|
11
|
-
service_type text NOT NULL, -- Тип сервісу
|
|
12
|
-
holder text, -- (Опційно) Власник/Утримучач/Відповідальний
|
|
13
|
-
version text DEFAULT '1.0.0'::text, -- Версія сервісу
|
|
14
|
-
source_type text, -- Тип джерела
|
|
15
|
-
service_url text, -- Поислання на сервіс (якщо source_type = 'service')
|
|
16
|
-
source_path text, -- Шлях до файлу або таблиця в БД
|
|
17
|
-
query text, -- Умова для сервісу
|
|
18
|
-
geom_type text, -- Тип геометрії для цього шару
|
|
19
|
-
geometry_column text, -- Назва колонки гемотрії
|
|
20
|
-
sql_list jsonb, -- Перелік sql підзапитів для додаткової інформації
|
|
21
|
-
attributes jsonb, -- Атрибути (для зберігання інформації)
|
|
22
|
-
filters jsonb, -- Фільтри
|
|
23
|
-
popup jsonb, -- Налаштування попапів
|
|
24
|
-
cartocss text, -- Стилі css
|
|
25
|
-
layers jsonb, -- Налаштування шарів mapbox
|
|
26
|
-
srid integer DEFAULT 4326, -- Просторова референтна система
|
|
27
|
-
bbox geometry(Polygon,4326), -- Область покриття сервісу
|
|
28
|
-
center geometry(Point,4326), -- Центр покриття
|
|
29
|
-
is_public boolean NOT NULL DEFAULT false, -- Чи є сервіс публічним?
|
|
30
|
-
is_active boolean DEFAULT true, -- Позначка доступності сервісу
|
|
31
|
-
is_downloadable boolean DEFAULT false, -- Чи можна завантажити дані з цього сервісу?
|
|
32
|
-
metadata jsonb, -- Додаткові метадані
|
|
33
|
-
access_restrictions text, -- Опис обмеження доступу
|
|
34
|
-
metadata_url text, -- Опціонально посилання на документ XML або метадані
|
|
35
|
-
thumbnail_url text, -- Опціонально посилання на фото прев'ю
|
|
36
|
-
config jsonb, -- Опціональна конфігурація
|
|
37
|
-
created_by text NOT NULL,
|
|
38
|
-
updated_by text,
|
|
39
|
-
updated_at timestamp without time zone,
|
|
40
|
-
created_at timestamp without time zone NOT NULL DEFAULT now(),
|
|
41
|
-
image text, -- Зображення
|
|
42
|
-
group_id text, -- Id-групи
|
|
43
|
-
style text, -- Стилі (кольори, товщина лінії тощо)
|
|
44
|
-
interface text, -- Інтерфейс
|
|
45
|
-
legend jsonb, -- Layer legend
|
|
46
|
-
card json,
|
|
47
|
-
CONSTRAINT services_pkey PRIMARY KEY (service_id),
|
|
48
|
-
CONSTRAINT services_group_id_fkey FOREIGN KEY (group_id)
|
|
49
|
-
REFERENCES gis.group_list (group_id)
|
|
50
|
-
);
|
|
51
|
-
|
|
52
|
-
alter table gis.services add column if not exists template text;
|
|
53
|
-
comment on column gis.services.template is 'Назва шаблону';
|
|
54
|
-
|
|
55
|
-
DROP INDEX if exists gis.gis_services_category_gin_idx;
|
|
56
|
-
|
|
57
|
-
CREATE INDEX gis_services_category_gin_idx
|
|
58
|
-
ON gis.services
|
|
59
|
-
USING gin
|
|
60
|
-
(category COLLATE pg_catalog."default" gin_trgm_ops);
|
|
61
|
-
|
|
62
|
-
DROP INDEX if exists gis.gis_services_category_gin_idx_lower;
|
|
63
|
-
|
|
64
|
-
CREATE INDEX gis_services_category_gin_idx_lower
|
|
65
|
-
ON gis.services
|
|
66
|
-
USING gin
|
|
67
|
-
(lower(category) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
68
|
-
|
|
69
|
-
DROP INDEX if exists gis.gis_services_description_gin_idx;
|
|
70
|
-
|
|
71
|
-
CREATE INDEX gis_services_description_gin_idx
|
|
72
|
-
ON gis.services
|
|
73
|
-
USING gin
|
|
74
|
-
(description COLLATE pg_catalog."default" gin_trgm_ops);
|
|
75
|
-
|
|
76
|
-
DROP INDEX if exists gis.gis_services_description_gin_idx_lower;
|
|
77
|
-
|
|
78
|
-
CREATE INDEX gis_services_description_gin_idx_lower
|
|
79
|
-
ON gis.services
|
|
80
|
-
USING gin
|
|
81
|
-
(lower(description) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
82
|
-
|
|
83
|
-
DROP INDEX if exists gis.gis_services_holder_gin_idx;
|
|
84
|
-
|
|
85
|
-
CREATE INDEX gis_services_holder_gin_idx
|
|
86
|
-
ON gis.services
|
|
87
|
-
USING gin
|
|
88
|
-
(holder COLLATE pg_catalog."default" gin_trgm_ops);
|
|
89
|
-
|
|
90
|
-
DROP INDEX if exists gis.gis_services_holder_gin_idx_lower;
|
|
91
|
-
|
|
92
|
-
CREATE INDEX gis_services_holder_gin_idx_lower
|
|
93
|
-
ON gis.services
|
|
94
|
-
USING gin
|
|
95
|
-
(lower(holder) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
96
|
-
|
|
97
|
-
DROP INDEX if exists gis.gis_services_name_gin_idx;
|
|
98
|
-
|
|
99
|
-
CREATE INDEX gis_services_name_gin_idx
|
|
100
|
-
ON gis.services
|
|
101
|
-
USING gin
|
|
102
|
-
(name COLLATE pg_catalog."default" gin_trgm_ops);
|
|
103
|
-
|
|
104
|
-
DROP INDEX if exists gis.gis_services_name_gin_idx_lower;
|
|
105
|
-
|
|
106
|
-
CREATE INDEX gis_services_name_gin_idx_lower
|
|
107
|
-
ON gis.services
|
|
108
|
-
USING gin
|
|
109
|
-
(lower(name) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
110
|
-
|
|
111
|
-
DROP INDEX if exists gis.gis_services_service_type_btree_idx;
|
|
112
|
-
|
|
113
|
-
CREATE INDEX gis_services_service_type_btree_idx
|
|
114
|
-
ON gis.services
|
|
115
|
-
USING btree
|
|
116
|
-
(service_type COLLATE pg_catalog."default");
|
|
117
|
-
|
|
118
|
-
DROP INDEX if exists gis.gis_services_source_path_btree_idx;
|
|
119
|
-
|
|
120
|
-
CREATE INDEX gis_services_source_path_btree_idx
|
|
121
|
-
ON gis.services
|
|
122
|
-
USING btree
|
|
123
|
-
(source_path COLLATE pg_catalog."default");
|
|
124
|
-
|
|
125
|
-
DROP INDEX if exists gis.gis_services_source_path_gin_idx;
|
|
126
|
-
|
|
127
|
-
CREATE INDEX gis_services_source_path_gin_idx
|
|
128
|
-
ON gis.services
|
|
129
|
-
USING gin
|
|
130
|
-
(source_path COLLATE pg_catalog."default" gin_trgm_ops);
|
|
131
|
-
|
|
132
|
-
DROP INDEX if exists gis.gis_services_source_path_gin_idx_lower;
|
|
133
|
-
|
|
134
|
-
CREATE INDEX gis_services_source_path_gin_idx_lower
|
|
135
|
-
ON gis.services
|
|
136
|
-
USING gin
|
|
137
|
-
(lower(source_path) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
138
|
-
|
|
139
|
-
DROP INDEX if exists gis.services_service_key_idx;
|
|
140
|
-
|
|
141
|
-
CREATE UNIQUE INDEX services_service_key_idx
|
|
142
|
-
ON gis.services
|
|
143
|
-
USING btree
|
|
144
|
-
(service_key COLLATE pg_catalog."default");
|
|
145
|
-
|
|
146
|
-
-- Add new columns if they do not exist
|
|
147
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS service_id text;
|
|
148
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS name text;
|
|
149
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS service_key text;
|
|
150
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS description text;
|
|
151
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS keywords text[];
|
|
152
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS category text;
|
|
153
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS service_type text;
|
|
154
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS holder text;
|
|
155
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS version text;
|
|
156
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS source_type text;
|
|
157
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS service_url text;
|
|
158
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS source_path text;
|
|
159
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS query text;
|
|
160
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS geom_type text;
|
|
161
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS geometry_column text;
|
|
162
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS sql_list jsonb;
|
|
163
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS attributes jsonb;
|
|
164
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS filters jsonb;
|
|
165
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS popup jsonb;
|
|
166
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS cartocss text;
|
|
167
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS layers jsonb;
|
|
168
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS srid integer;
|
|
169
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS bbox geometry(Polygon,4326);
|
|
170
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS center geometry(Point,4326);
|
|
171
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS is_public boolean;
|
|
172
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS is_active boolean;
|
|
173
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS is_downloadable boolean;
|
|
174
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS metadata jsonb;
|
|
175
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS access_restrictions text;
|
|
176
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS metadata_url text;
|
|
177
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS thumbnail_url text;
|
|
178
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS config jsonb;
|
|
179
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS created_by text;
|
|
180
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS updated_by text;
|
|
181
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS updated_at timestamp without time zone;
|
|
182
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS created_at timestamp without time zone;
|
|
183
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS image text;
|
|
184
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS group_id text;
|
|
185
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS style text;
|
|
186
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS interface text;
|
|
187
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS legend jsonb;
|
|
188
|
-
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS card json;
|
|
189
|
-
|
|
190
|
-
-- Set default values
|
|
191
|
-
ALTER TABLE gis.services ALTER COLUMN service_id SET DEFAULT next_id();
|
|
192
|
-
ALTER TABLE gis.services ALTER COLUMN version SET DEFAULT '1.0.0';
|
|
193
|
-
ALTER TABLE gis.services ALTER COLUMN srid SET DEFAULT 4326;
|
|
194
|
-
ALTER TABLE gis.services ALTER COLUMN is_public SET DEFAULT false;
|
|
195
|
-
ALTER TABLE gis.services ALTER COLUMN is_active SET DEFAULT true;
|
|
196
|
-
ALTER TABLE gis.services ALTER COLUMN is_downloadable SET DEFAULT false;
|
|
197
|
-
ALTER TABLE gis.services ALTER COLUMN created_at SET DEFAULT now();
|
|
198
|
-
|
|
199
|
-
-- Set NOT NULL constraints
|
|
200
|
-
ALTER TABLE gis.services ALTER COLUMN service_id SET NOT NULL;
|
|
201
|
-
update gis.services set name='' where name is null;
|
|
202
|
-
ALTER TABLE gis.services ALTER COLUMN name SET NOT NULL;
|
|
203
|
-
update gis.services set service_type='' where service_type is null;
|
|
204
|
-
ALTER TABLE gis.services ALTER COLUMN service_type SET NOT NULL;
|
|
205
|
-
update gis.services set is_public=false where is_public is null;
|
|
206
|
-
ALTER TABLE gis.services ALTER COLUMN is_public SET NOT NULL;
|
|
207
|
-
update gis.services set created_by='1' where created_by is null;
|
|
208
|
-
ALTER TABLE gis.services ALTER COLUMN created_by SET NOT NULL;
|
|
209
|
-
update gis.services set created_by=now() where created_at is null;
|
|
210
|
-
ALTER TABLE gis.services ALTER COLUMN created_at SET NOT NULL;
|
|
211
|
-
|
|
212
|
-
COMMENT ON TABLE gis.services IS 'Сервіси';
|
|
213
|
-
COMMENT ON COLUMN gis.services.name IS 'Назва сервісу';
|
|
214
|
-
COMMENT ON COLUMN gis.services.service_key IS 'Унікальний ключ';
|
|
215
|
-
COMMENT ON COLUMN gis.services.description IS 'Опис сервісу';
|
|
216
|
-
COMMENT ON COLUMN gis.services.keywords IS 'Ключові слова';
|
|
217
|
-
COMMENT ON COLUMN gis.services.category IS 'Категорія сервісу';
|
|
218
|
-
COMMENT ON COLUMN gis.services.service_type IS 'Тип сервісу';
|
|
219
|
-
COMMENT ON COLUMN gis.services.holder IS '(Опційно) Власник/Утримучач/Відповідальний';
|
|
220
|
-
COMMENT ON COLUMN gis.services.version IS 'Версія сервісу';
|
|
221
|
-
COMMENT ON COLUMN gis.services.source_type IS 'Тип джерела';
|
|
222
|
-
COMMENT ON COLUMN gis.services.service_url IS 'Поислання на сервіс (якщо source_type = ''service'')';
|
|
223
|
-
COMMENT ON COLUMN gis.services.source_path IS 'Шлях до файлу або таблиця в БД';
|
|
224
|
-
COMMENT ON COLUMN gis.services.query IS 'Умова для сервісу';
|
|
225
|
-
COMMENT ON COLUMN gis.services.geom_type IS 'Тип геометрії для цього шару';
|
|
226
|
-
COMMENT ON COLUMN gis.services.geometry_column IS 'Назва колонки гемотрії';
|
|
227
|
-
COMMENT ON COLUMN gis.services.sql_list IS 'Перелік sql підзапитів для додаткової інформації';
|
|
228
|
-
COMMENT ON COLUMN gis.services.attributes IS 'Атрибути (для зберігання інформації)';
|
|
229
|
-
COMMENT ON COLUMN gis.services.filters IS 'Фільтри';
|
|
230
|
-
COMMENT ON COLUMN gis.services.popup IS 'Налаштування попапів';
|
|
231
|
-
COMMENT ON COLUMN gis.services.cartocss IS 'Стилі css';
|
|
232
|
-
COMMENT ON COLUMN gis.services.layers IS 'Налаштування шарів mapbox';
|
|
233
|
-
COMMENT ON COLUMN gis.services.srid IS 'Просторова референтна система';
|
|
234
|
-
COMMENT ON COLUMN gis.services.bbox IS 'Область покриття сервісу';
|
|
235
|
-
COMMENT ON COLUMN gis.services.center IS 'Центр покриття';
|
|
236
|
-
COMMENT ON COLUMN gis.services.is_public IS 'Чи є сервіс публічним?';
|
|
237
|
-
COMMENT ON COLUMN gis.services.is_active IS 'Позначка доступності сервісу';
|
|
238
|
-
COMMENT ON COLUMN gis.services.is_downloadable IS 'Чи можна завантажити дані з цього сервісу?';
|
|
239
|
-
COMMENT ON COLUMN gis.services.metadata IS 'Додаткові метадані';
|
|
240
|
-
COMMENT ON COLUMN gis.services.access_restrictions IS 'Опис обмеження доступу';
|
|
241
|
-
COMMENT ON COLUMN gis.services.metadata_url IS 'Опціонально посилання на документ XML або метадані';
|
|
242
|
-
COMMENT ON COLUMN gis.services.thumbnail_url IS 'Опціонально посилання на фото прев''ю';
|
|
243
|
-
COMMENT ON COLUMN gis.services.config IS 'Опціональна конфігурація';
|
|
244
|
-
COMMENT ON COLUMN gis.services.image IS 'Зображення';
|
|
245
|
-
COMMENT ON COLUMN gis.services.group_id IS 'Id-групи';
|
|
246
|
-
COMMENT ON COLUMN gis.services.style IS 'Стилі (кольори, товщина лінії тощо)';
|
|
247
|
-
COMMENT ON COLUMN gis.services.interface IS 'Інтерфейс';
|
|
1
|
+
create schema if not exists gis;
|
|
2
|
+
|
|
3
|
+
CREATE TABLE if not exists gis.services
|
|
4
|
+
(
|
|
5
|
+
service_id text NOT NULL DEFAULT next_id(),
|
|
6
|
+
name text NOT NULL, -- Назва сервісу
|
|
7
|
+
service_key text, -- Унікальний ключ
|
|
8
|
+
description text, -- Опис сервісу
|
|
9
|
+
keywords text[], -- Ключові слова
|
|
10
|
+
category text, -- Категорія сервісу
|
|
11
|
+
service_type text NOT NULL, -- Тип сервісу
|
|
12
|
+
holder text, -- (Опційно) Власник/Утримучач/Відповідальний
|
|
13
|
+
version text DEFAULT '1.0.0'::text, -- Версія сервісу
|
|
14
|
+
source_type text, -- Тип джерела
|
|
15
|
+
service_url text, -- Поислання на сервіс (якщо source_type = 'service')
|
|
16
|
+
source_path text, -- Шлях до файлу або таблиця в БД
|
|
17
|
+
query text, -- Умова для сервісу
|
|
18
|
+
geom_type text, -- Тип геометрії для цього шару
|
|
19
|
+
geometry_column text, -- Назва колонки гемотрії
|
|
20
|
+
sql_list jsonb, -- Перелік sql підзапитів для додаткової інформації
|
|
21
|
+
attributes jsonb, -- Атрибути (для зберігання інформації)
|
|
22
|
+
filters jsonb, -- Фільтри
|
|
23
|
+
popup jsonb, -- Налаштування попапів
|
|
24
|
+
cartocss text, -- Стилі css
|
|
25
|
+
layers jsonb, -- Налаштування шарів mapbox
|
|
26
|
+
srid integer DEFAULT 4326, -- Просторова референтна система
|
|
27
|
+
bbox geometry(Polygon,4326), -- Область покриття сервісу
|
|
28
|
+
center geometry(Point,4326), -- Центр покриття
|
|
29
|
+
is_public boolean NOT NULL DEFAULT false, -- Чи є сервіс публічним?
|
|
30
|
+
is_active boolean DEFAULT true, -- Позначка доступності сервісу
|
|
31
|
+
is_downloadable boolean DEFAULT false, -- Чи можна завантажити дані з цього сервісу?
|
|
32
|
+
metadata jsonb, -- Додаткові метадані
|
|
33
|
+
access_restrictions text, -- Опис обмеження доступу
|
|
34
|
+
metadata_url text, -- Опціонально посилання на документ XML або метадані
|
|
35
|
+
thumbnail_url text, -- Опціонально посилання на фото прев'ю
|
|
36
|
+
config jsonb, -- Опціональна конфігурація
|
|
37
|
+
created_by text NOT NULL,
|
|
38
|
+
updated_by text,
|
|
39
|
+
updated_at timestamp without time zone,
|
|
40
|
+
created_at timestamp without time zone NOT NULL DEFAULT now(),
|
|
41
|
+
image text, -- Зображення
|
|
42
|
+
group_id text, -- Id-групи
|
|
43
|
+
style text, -- Стилі (кольори, товщина лінії тощо)
|
|
44
|
+
interface text, -- Інтерфейс
|
|
45
|
+
legend jsonb, -- Layer legend
|
|
46
|
+
card json,
|
|
47
|
+
CONSTRAINT services_pkey PRIMARY KEY (service_id),
|
|
48
|
+
CONSTRAINT services_group_id_fkey FOREIGN KEY (group_id)
|
|
49
|
+
REFERENCES gis.group_list (group_id)
|
|
50
|
+
);
|
|
51
|
+
|
|
52
|
+
alter table gis.services add column if not exists template text;
|
|
53
|
+
comment on column gis.services.template is 'Назва шаблону';
|
|
54
|
+
|
|
55
|
+
DROP INDEX if exists gis.gis_services_category_gin_idx;
|
|
56
|
+
|
|
57
|
+
CREATE INDEX gis_services_category_gin_idx
|
|
58
|
+
ON gis.services
|
|
59
|
+
USING gin
|
|
60
|
+
(category COLLATE pg_catalog."default" gin_trgm_ops);
|
|
61
|
+
|
|
62
|
+
DROP INDEX if exists gis.gis_services_category_gin_idx_lower;
|
|
63
|
+
|
|
64
|
+
CREATE INDEX gis_services_category_gin_idx_lower
|
|
65
|
+
ON gis.services
|
|
66
|
+
USING gin
|
|
67
|
+
(lower(category) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
68
|
+
|
|
69
|
+
DROP INDEX if exists gis.gis_services_description_gin_idx;
|
|
70
|
+
|
|
71
|
+
CREATE INDEX gis_services_description_gin_idx
|
|
72
|
+
ON gis.services
|
|
73
|
+
USING gin
|
|
74
|
+
(description COLLATE pg_catalog."default" gin_trgm_ops);
|
|
75
|
+
|
|
76
|
+
DROP INDEX if exists gis.gis_services_description_gin_idx_lower;
|
|
77
|
+
|
|
78
|
+
CREATE INDEX gis_services_description_gin_idx_lower
|
|
79
|
+
ON gis.services
|
|
80
|
+
USING gin
|
|
81
|
+
(lower(description) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
82
|
+
|
|
83
|
+
DROP INDEX if exists gis.gis_services_holder_gin_idx;
|
|
84
|
+
|
|
85
|
+
CREATE INDEX gis_services_holder_gin_idx
|
|
86
|
+
ON gis.services
|
|
87
|
+
USING gin
|
|
88
|
+
(holder COLLATE pg_catalog."default" gin_trgm_ops);
|
|
89
|
+
|
|
90
|
+
DROP INDEX if exists gis.gis_services_holder_gin_idx_lower;
|
|
91
|
+
|
|
92
|
+
CREATE INDEX gis_services_holder_gin_idx_lower
|
|
93
|
+
ON gis.services
|
|
94
|
+
USING gin
|
|
95
|
+
(lower(holder) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
96
|
+
|
|
97
|
+
DROP INDEX if exists gis.gis_services_name_gin_idx;
|
|
98
|
+
|
|
99
|
+
CREATE INDEX gis_services_name_gin_idx
|
|
100
|
+
ON gis.services
|
|
101
|
+
USING gin
|
|
102
|
+
(name COLLATE pg_catalog."default" gin_trgm_ops);
|
|
103
|
+
|
|
104
|
+
DROP INDEX if exists gis.gis_services_name_gin_idx_lower;
|
|
105
|
+
|
|
106
|
+
CREATE INDEX gis_services_name_gin_idx_lower
|
|
107
|
+
ON gis.services
|
|
108
|
+
USING gin
|
|
109
|
+
(lower(name) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
110
|
+
|
|
111
|
+
DROP INDEX if exists gis.gis_services_service_type_btree_idx;
|
|
112
|
+
|
|
113
|
+
CREATE INDEX gis_services_service_type_btree_idx
|
|
114
|
+
ON gis.services
|
|
115
|
+
USING btree
|
|
116
|
+
(service_type COLLATE pg_catalog."default");
|
|
117
|
+
|
|
118
|
+
DROP INDEX if exists gis.gis_services_source_path_btree_idx;
|
|
119
|
+
|
|
120
|
+
CREATE INDEX gis_services_source_path_btree_idx
|
|
121
|
+
ON gis.services
|
|
122
|
+
USING btree
|
|
123
|
+
(source_path COLLATE pg_catalog."default");
|
|
124
|
+
|
|
125
|
+
DROP INDEX if exists gis.gis_services_source_path_gin_idx;
|
|
126
|
+
|
|
127
|
+
CREATE INDEX gis_services_source_path_gin_idx
|
|
128
|
+
ON gis.services
|
|
129
|
+
USING gin
|
|
130
|
+
(source_path COLLATE pg_catalog."default" gin_trgm_ops);
|
|
131
|
+
|
|
132
|
+
DROP INDEX if exists gis.gis_services_source_path_gin_idx_lower;
|
|
133
|
+
|
|
134
|
+
CREATE INDEX gis_services_source_path_gin_idx_lower
|
|
135
|
+
ON gis.services
|
|
136
|
+
USING gin
|
|
137
|
+
(lower(source_path) COLLATE pg_catalog."default" gin_trgm_ops);
|
|
138
|
+
|
|
139
|
+
DROP INDEX if exists gis.services_service_key_idx;
|
|
140
|
+
|
|
141
|
+
CREATE UNIQUE INDEX services_service_key_idx
|
|
142
|
+
ON gis.services
|
|
143
|
+
USING btree
|
|
144
|
+
(service_key COLLATE pg_catalog."default");
|
|
145
|
+
|
|
146
|
+
-- Add new columns if they do not exist
|
|
147
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS service_id text;
|
|
148
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS name text;
|
|
149
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS service_key text;
|
|
150
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS description text;
|
|
151
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS keywords text[];
|
|
152
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS category text;
|
|
153
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS service_type text;
|
|
154
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS holder text;
|
|
155
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS version text;
|
|
156
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS source_type text;
|
|
157
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS service_url text;
|
|
158
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS source_path text;
|
|
159
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS query text;
|
|
160
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS geom_type text;
|
|
161
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS geometry_column text;
|
|
162
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS sql_list jsonb;
|
|
163
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS attributes jsonb;
|
|
164
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS filters jsonb;
|
|
165
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS popup jsonb;
|
|
166
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS cartocss text;
|
|
167
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS layers jsonb;
|
|
168
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS srid integer;
|
|
169
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS bbox geometry(Polygon,4326);
|
|
170
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS center geometry(Point,4326);
|
|
171
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS is_public boolean;
|
|
172
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS is_active boolean;
|
|
173
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS is_downloadable boolean;
|
|
174
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS metadata jsonb;
|
|
175
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS access_restrictions text;
|
|
176
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS metadata_url text;
|
|
177
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS thumbnail_url text;
|
|
178
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS config jsonb;
|
|
179
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS created_by text;
|
|
180
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS updated_by text;
|
|
181
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS updated_at timestamp without time zone;
|
|
182
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS created_at timestamp without time zone;
|
|
183
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS image text;
|
|
184
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS group_id text;
|
|
185
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS style text;
|
|
186
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS interface text;
|
|
187
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS legend jsonb;
|
|
188
|
+
ALTER TABLE gis.services ADD COLUMN IF NOT EXISTS card json;
|
|
189
|
+
|
|
190
|
+
-- Set default values
|
|
191
|
+
ALTER TABLE gis.services ALTER COLUMN service_id SET DEFAULT next_id();
|
|
192
|
+
ALTER TABLE gis.services ALTER COLUMN version SET DEFAULT '1.0.0';
|
|
193
|
+
ALTER TABLE gis.services ALTER COLUMN srid SET DEFAULT 4326;
|
|
194
|
+
ALTER TABLE gis.services ALTER COLUMN is_public SET DEFAULT false;
|
|
195
|
+
ALTER TABLE gis.services ALTER COLUMN is_active SET DEFAULT true;
|
|
196
|
+
ALTER TABLE gis.services ALTER COLUMN is_downloadable SET DEFAULT false;
|
|
197
|
+
ALTER TABLE gis.services ALTER COLUMN created_at SET DEFAULT now();
|
|
198
|
+
|
|
199
|
+
-- Set NOT NULL constraints
|
|
200
|
+
ALTER TABLE gis.services ALTER COLUMN service_id SET NOT NULL;
|
|
201
|
+
update gis.services set name='' where name is null;
|
|
202
|
+
ALTER TABLE gis.services ALTER COLUMN name SET NOT NULL;
|
|
203
|
+
update gis.services set service_type='' where service_type is null;
|
|
204
|
+
ALTER TABLE gis.services ALTER COLUMN service_type SET NOT NULL;
|
|
205
|
+
update gis.services set is_public=false where is_public is null;
|
|
206
|
+
ALTER TABLE gis.services ALTER COLUMN is_public SET NOT NULL;
|
|
207
|
+
update gis.services set created_by='1' where created_by is null;
|
|
208
|
+
ALTER TABLE gis.services ALTER COLUMN created_by SET NOT NULL;
|
|
209
|
+
update gis.services set created_by=now() where created_at is null;
|
|
210
|
+
ALTER TABLE gis.services ALTER COLUMN created_at SET NOT NULL;
|
|
211
|
+
|
|
212
|
+
COMMENT ON TABLE gis.services IS 'Сервіси';
|
|
213
|
+
COMMENT ON COLUMN gis.services.name IS 'Назва сервісу';
|
|
214
|
+
COMMENT ON COLUMN gis.services.service_key IS 'Унікальний ключ';
|
|
215
|
+
COMMENT ON COLUMN gis.services.description IS 'Опис сервісу';
|
|
216
|
+
COMMENT ON COLUMN gis.services.keywords IS 'Ключові слова';
|
|
217
|
+
COMMENT ON COLUMN gis.services.category IS 'Категорія сервісу';
|
|
218
|
+
COMMENT ON COLUMN gis.services.service_type IS 'Тип сервісу';
|
|
219
|
+
COMMENT ON COLUMN gis.services.holder IS '(Опційно) Власник/Утримучач/Відповідальний';
|
|
220
|
+
COMMENT ON COLUMN gis.services.version IS 'Версія сервісу';
|
|
221
|
+
COMMENT ON COLUMN gis.services.source_type IS 'Тип джерела';
|
|
222
|
+
COMMENT ON COLUMN gis.services.service_url IS 'Поислання на сервіс (якщо source_type = ''service'')';
|
|
223
|
+
COMMENT ON COLUMN gis.services.source_path IS 'Шлях до файлу або таблиця в БД';
|
|
224
|
+
COMMENT ON COLUMN gis.services.query IS 'Умова для сервісу';
|
|
225
|
+
COMMENT ON COLUMN gis.services.geom_type IS 'Тип геометрії для цього шару';
|
|
226
|
+
COMMENT ON COLUMN gis.services.geometry_column IS 'Назва колонки гемотрії';
|
|
227
|
+
COMMENT ON COLUMN gis.services.sql_list IS 'Перелік sql підзапитів для додаткової інформації';
|
|
228
|
+
COMMENT ON COLUMN gis.services.attributes IS 'Атрибути (для зберігання інформації)';
|
|
229
|
+
COMMENT ON COLUMN gis.services.filters IS 'Фільтри';
|
|
230
|
+
COMMENT ON COLUMN gis.services.popup IS 'Налаштування попапів';
|
|
231
|
+
COMMENT ON COLUMN gis.services.cartocss IS 'Стилі css';
|
|
232
|
+
COMMENT ON COLUMN gis.services.layers IS 'Налаштування шарів mapbox';
|
|
233
|
+
COMMENT ON COLUMN gis.services.srid IS 'Просторова референтна система';
|
|
234
|
+
COMMENT ON COLUMN gis.services.bbox IS 'Область покриття сервісу';
|
|
235
|
+
COMMENT ON COLUMN gis.services.center IS 'Центр покриття';
|
|
236
|
+
COMMENT ON COLUMN gis.services.is_public IS 'Чи є сервіс публічним?';
|
|
237
|
+
COMMENT ON COLUMN gis.services.is_active IS 'Позначка доступності сервісу';
|
|
238
|
+
COMMENT ON COLUMN gis.services.is_downloadable IS 'Чи можна завантажити дані з цього сервісу?';
|
|
239
|
+
COMMENT ON COLUMN gis.services.metadata IS 'Додаткові метадані';
|
|
240
|
+
COMMENT ON COLUMN gis.services.access_restrictions IS 'Опис обмеження доступу';
|
|
241
|
+
COMMENT ON COLUMN gis.services.metadata_url IS 'Опціонально посилання на документ XML або метадані';
|
|
242
|
+
COMMENT ON COLUMN gis.services.thumbnail_url IS 'Опціонально посилання на фото прев''ю';
|
|
243
|
+
COMMENT ON COLUMN gis.services.config IS 'Опціональна конфігурація';
|
|
244
|
+
COMMENT ON COLUMN gis.services.image IS 'Зображення';
|
|
245
|
+
COMMENT ON COLUMN gis.services.group_id IS 'Id-групи';
|
|
246
|
+
COMMENT ON COLUMN gis.services.style IS 'Стилі (кольори, товщина лінії тощо)';
|
|
247
|
+
COMMENT ON COLUMN gis.services.interface IS 'Інтерфейс';
|
|
248
248
|
COMMENT ON COLUMN gis.services.legend IS 'Layer legend';
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
create schema if not exists gis;
|
|
2
|
-
|
|
3
|
-
CREATE TABLE if not exists gis.widgets
|
|
4
|
-
(
|
|
5
|
-
widget_id text NOT NULL DEFAULT next_id(),
|
|
6
|
-
map_id text NOT NULL,
|
|
7
|
-
name text,
|
|
8
|
-
type text NOT NULL,
|
|
9
|
-
title text,
|
|
10
|
-
position text,
|
|
11
|
-
config jsonb,
|
|
12
|
-
created_by text NOT NULL,
|
|
13
|
-
updated_by text,
|
|
14
|
-
updated_at timestamp without time zone,
|
|
15
|
-
created_at timestamp without time zone NOT NULL DEFAULT now(),
|
|
16
|
-
CONSTRAINT widgets_pkey PRIMARY KEY (widget_id),
|
|
17
|
-
CONSTRAINT widgets_map_id_fkey FOREIGN KEY (map_id)
|
|
18
|
-
REFERENCES gis.maps (map_id)
|
|
19
|
-
);
|
|
20
|
-
|
|
1
|
+
create schema if not exists gis;
|
|
2
|
+
|
|
3
|
+
CREATE TABLE if not exists gis.widgets
|
|
4
|
+
(
|
|
5
|
+
widget_id text NOT NULL DEFAULT next_id(),
|
|
6
|
+
map_id text NOT NULL,
|
|
7
|
+
name text,
|
|
8
|
+
type text NOT NULL,
|
|
9
|
+
title text,
|
|
10
|
+
position text,
|
|
11
|
+
config jsonb,
|
|
12
|
+
created_by text NOT NULL,
|
|
13
|
+
updated_by text,
|
|
14
|
+
updated_at timestamp without time zone,
|
|
15
|
+
created_at timestamp without time zone NOT NULL DEFAULT now(),
|
|
16
|
+
CONSTRAINT widgets_pkey PRIMARY KEY (widget_id),
|
|
17
|
+
CONSTRAINT widgets_map_id_fkey FOREIGN KEY (map_id)
|
|
18
|
+
REFERENCES gis.maps (map_id)
|
|
19
|
+
);
|
|
20
|
+
|
|
21
21
|
COMMENT ON TABLE gis.widgets IS 'Map widgets';
|
package/server/plugins/crons.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import path from 'node:path';
|
|
2
|
-
import { existsSync } from 'node:fs';
|
|
3
|
-
import { rm } from 'node:fs/promises';
|
|
4
|
-
|
|
5
|
-
import { addCron } from '@opengis/fastify-table/utils.js';
|
|
6
|
-
import rootFolder from './mapnik/funcs/rootFolder.mjs';
|
|
7
|
-
|
|
8
|
-
async function clearOldVectorTiles() {
|
|
9
|
-
if (existsSync(path.join(rootFolder, 'vtile'))) {
|
|
10
|
-
await rm(path.join(rootFolder, 'vtile'), { recursive: true, force: true });
|
|
11
|
-
console.log('clear tiles...', rootFolder, 'vtile');
|
|
12
|
-
return 'vector tiles cleared';
|
|
13
|
-
}
|
|
14
|
-
return 'nothing to clear';
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
async function plugin() {
|
|
18
|
-
addCron(clearOldVectorTiles, 60 * 60 * 24);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export default plugin;
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { existsSync } from 'node:fs';
|
|
3
|
+
import { rm } from 'node:fs/promises';
|
|
4
|
+
|
|
5
|
+
import { addCron } from '@opengis/fastify-table/utils.js';
|
|
6
|
+
import rootFolder from './mapnik/funcs/rootFolder.mjs';
|
|
7
|
+
|
|
8
|
+
async function clearOldVectorTiles() {
|
|
9
|
+
if (existsSync(path.join(rootFolder, 'vtile'))) {
|
|
10
|
+
await rm(path.join(rootFolder, 'vtile'), { recursive: true, force: true });
|
|
11
|
+
console.log('clear tiles...', rootFolder, 'vtile');
|
|
12
|
+
return 'vector tiles cleared';
|
|
13
|
+
}
|
|
14
|
+
return 'nothing to clear';
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
async function plugin() {
|
|
18
|
+
addCron(clearOldVectorTiles, 60 * 60 * 24);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export default plugin;
|