Merge branch 'new-ci-cd' into 'dev'

add create procedures

See merge request spatial/postamates!138
dev
Timofey Malinin 2 years ago
commit ade7257ad0

@ -19,7 +19,7 @@ spec:
containers:
- name: django
image: DEPLOY_IMAGE_TAG
command: ["sh", "-c", "python manage.py delete_views && python manage.py migrate && python manage.py create_views && python manage.py runserver 0.0.0.0:${DJANGO_PORT}"]
command: ["sh", "-c", "python manage.py delete_views && python manage.py create_procedures && python manage.py migrate && python manage.py create_views && python manage.py runserver 0.0.0.0:${DJANGO_PORT}"]
ports:
- containerPort: 8000
name: django-port

@ -1,7 +1,10 @@
from django.core.management.base import BaseCommand
from service.utils import run_sql_command, log_to_telegram
CMD_PIVOT_DIST = """CREATE OR REPLACE procedure pivot_dist()
CMD_PIVOT_DIST = """DROP VIEW IF EXISTS compact_placementpoint;
CREATE OR REPLACE VIEW compact_placementpoint AS
SELECT status, category, age_day, fact, area_id, district_id, address, name, prediction_first, prediction_current, doors, flat_cnt, rival_post_cnt, rival_pvz_cnt, target_post_cnt, flats_cnt, tc_cnt, culture_cnt, mfc_cnt, public_stop_cnt, supermarket_cnt, target_dist, metro_dist, geometry FROM service_placementpoint;
CREATE OR REPLACE PROCEDURE pivot_dist()
--RETURNS SET OF record
AS $BODY$
DECLARE columnNames TEXT;
@ -9,7 +12,8 @@ BEGIN
DROP VIEW IF EXISTS points_with_dist;
SELECT 'placement_point bigint, ' || string_agg(c, ', ') FROM (SELECT distinct pvz_postamates_group_id, 'd' || pvz_postamates_group_id || ' double precision' as c from service_placementpointpvzdistance order by 1) as asd
INTO columnNames;
EXECUTE format('CREATE OR REPLACE VIEW points_with_dist AS SELECT *
EXECUTE format('CREATE OR REPLACE VIEW points_with_dist AS SELECT
FROM CROSSTAB(
$$
SELECT placement_point_id, pvz_postamates_group_id, dist
@ -17,12 +21,12 @@ FROM CROSSTAB(
ORDER BY 1, 2
$$
) AS ct(%s)
LEFT JOIN service_placementpoint ON placement_point_id=id'
LEFT JOIN compact_placementpoint ON placement_point_id=id'
,columnNames);
END;
$BODY$
LANGUAGE plpgsql;
CALL public.pivot_dist();"""
"""
CMD_PIVOT_DIST_PRE = """CREATE OR REPLACE procedure prepivot_dist()
AS $BODY$
@ -43,8 +47,7 @@ LEFT JOIN service_preplacementpoint ON placement_point_id=id'
,columnNames);
END;
$BODY$
LANGUAGE plpgsql;
CALL public.prepivot_dist();"""
LANGUAGE plpgsql;"""
class Command(BaseCommand):
help = 'Create procedures'

Loading…
Cancel
Save