Advanced: 03 Rebuild coverage after site change.sql

File 03 Rebuild coverage after site change.sql, 549 bytes (added by 231139, 10 days ago)
Line 
1CREATE OR REPLACE FUNCTION public.rebuild_coverage_after_site_change()
2RETURNS trigger
3LANGUAGE plpgsql
4AS $$
5BEGIN
6 IF OLD.latitude IS DISTINCT FROM NEW.latitude
7 OR OLD.longitude IS DISTINCT FROM NEW.longitude THEN
8 UPDATE public.coverage_zones cz
9 SET coverage_radius_m = cz.coverage_radius_m
10 FROM public.tower_sectors ts
11 JOIN public.cell_towers ct ON ct.tower_id = ts.tower_id
12 WHERE cz.sector_id = ts.sector_id
13 AND ct.site_id = NEW.site_id;
14 END IF;
15
16 RETURN NEW;
17END;
18$$;