管道基础大数据平台系统开发-【后端】-Server
1
13693261870
2023-03-09 b514162c0fd137a77dc39231942b8ea2bbd92cfc
1
已修改2个文件
96 ■■■■ 文件已修改
data/db_cx.sql 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
data/db_fn.sql 90 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
data/db_cx.sql
@@ -19,8 +19,7 @@
select * from bs.th_strategic_channel
select * from lf.sys_dict where tab='th_strategic_channel'
select * from bs.sys_model
select * from lf.sys_model -- delete from lf.sys_model
@@ -37,6 +36,9 @@
---------------------------------------------------------------------------------------------- 00.SQL查询
select id,cn_name,en_name,url,serve_type,data_type from lf.sys_layer where url is not null and
  serve_type='WMS' and data_type in ('工程项目','工程项目-地灾类','工程项目-测量类','工程项目-洞库类','工程项目-勘察类') order by id;
select modular1,modular2 from lf.sys_operate where modular1 not in ('综合展示','数据质检','数据管理','数据交换','服务管理','系统对接','运维管理');
delete from lf.sys_operate where modular1 not in ('综合展示','数据质检','数据管理','数据交换','服务管理','系统对接','运维管理');
select id,cn_name,elev from lf.sys_layer where cn_name in ('火车站','地下管线','中卫站','庆阳站','地层示例');
data/db_fn.sql
@@ -313,7 +313,7 @@
select * from lf.sys_meta where depcode similar to '(00|01|02)%';
select fn_dir_similar('基础测绘'); select fn_dir_similar('测量(ESV)'); select * from lf.sys_meta where dircode similar to fn_dir_similar('基础测绘');
----------------------------------------------------------------------------------------------------- 14.FME日志表触发器
----------------------------------------------------------------------------------------------------- 14.FME日志表触发器函数
-- drop function fn_meta_insert();
create or replace function fn_meta_insert() returns trigger as $$
  begin
@@ -323,15 +323,7 @@
  end;
$$ language plpgsql;
-- drop trigger fme_log_trigger on lf.sys_fme_log;
create or replace trigger fn_fme_log_trigger after insert on lf.sys_fme_log
for each row execute procedure fn_meta_insert();
select * from lf.sys_meta limit 10;
/*insert into lf.sys_fme_log (parentid,dirpath,pg_ns,tcmc,tcdm,count) values
  ('8fb3c3dd-6a12-488d-80ae-a93cc7e8b2e3','','bs','中线成果表','m_pipelinepoint',0);
select * from bs.m_pipelinepoint where parentid='8fb3c3dd-6a12-488d-80ae-a93cc7e8b2e3';*/
----------------------------------------------------------------------------------------------------- 15.单位表触发器
----------------------------------------------------------------------------------------------------- 15.单位表触发器函数
-- drop function fn_dep_insert();
create or replace function fn_dep_insert() returns trigger as $$
  begin
@@ -341,14 +333,7 @@
  end;
$$ language plpgsql;
-- drop trigger fn_dep_trigger on lf.sys_dep;
create or replace trigger fn_dep_trigger after insert on lf.sys_dep
for each row execute procedure fn_dep_insert();
select * from lf.sys_dep where pid = 0 order by id;
/*insert into lf.sys_dep (pid,name,level,order_num) values (0,'新单位',1,2);
delete from lf.sys_dep where pid = 0 and id > 1;*/
----------------------------------------------------------------------------------------------------- 16.目录表触发器
----------------------------------------------------------------------------------------------------- 16.目录表触发器函数
-- drop function fn_dir_insert();
create or replace function fn_dir_insert() returns trigger as $$
  begin
@@ -358,14 +343,19 @@
  end;
$$ language plpgsql;
-- drop trigger fn_dir_trigger on lf.sys_dep;
create or replace trigger fn_dir_trigger after insert on lf.sys_dir
for each row execute procedure fn_dir_insert();
----------------------------------------------------------------------------------------------------- 17.同步项目名称触发器函数
-- drop function fn_bs_prj();
create or replace function fn_bs_prj() returns trigger as $$
  begin
    if (new.dirid is not null and length(new.dirid) > 1) then
        select name into new.projname from lf.sys_dir where code = substr(new.dirid, 1, 2) limit 1;
    end if;
    return new;
  end;
$$ language plpgsql;
select * from lf.sys_dir where pid = 0 order by id;
/*insert into lf.sys_dir (pid,name,level,order_num) values (0,'新目录',1,6);
delete from lf.sys_dir where pid = 0 and id > 309;*/
----------------------------------------------------------------------------------------------------- 17.路径分析
----------------------------------------------------------------------------------------------------- 18.路径分析
-- 删除已存在的函数
-- drop function pgr_fromAtoB(varchar, double precision, double precision, double precision, double precision);
@@ -442,6 +432,56 @@
select ST_astext(ST_Union(geom)) as route from pgr_fromAtoB('lrdl'::text, 116.78999, 39.9468, 116.80458, 39.94758);
select st_astext(geom) route from pgr_fromAtoB('lrdl', 116.78999, 39.9468, 116.80458, 39.94758);
/******************************************************************************** 以下为触发器 ********************************************************************************/
-- drop trigger fme_log_trigger on lf.sys_fme_log; -- FME日志
create or replace trigger fn_fme_log_trigger after insert on lf.sys_fme_log for each row execute procedure fn_meta_insert();
select * from lf.sys_meta limit 10;
/*insert into lf.sys_fme_log (parentid,dirpath,pg_ns,tcmc,tcdm,count) values ('8fb3c3dd-6a12-488d-80ae-a93cc7e8b2e3','','bs','中线成果表','m_pipelinepoint',0);
select * from bs.m_pipelinepoint where parentid='8fb3c3dd-6a12-488d-80ae-a93cc7e8b2e3';*/
-- drop trigger fn_dep_trigger on lf.sys_dep; -- 单位
create or replace trigger fn_dep_trigger after insert on lf.sys_dep for each row execute procedure fn_dep_insert();
select * from lf.sys_dep where pid = 0 order by id;
/*insert into lf.sys_dep (pid,name,level,order_num) values (0,'新单位',1,2); delete from lf.sys_dep where pid = 0 and id > 1;*/
-- drop trigger fn_dir_trigger on lf.sys_dep; -- 目录
create or replace trigger fn_dir_trigger after insert on lf.sys_dir for each row execute procedure fn_dir_insert();
select * from lf.sys_dir where pid = 0 order by id;
/*insert into lf.sys_dir (pid,name,level,order_num) values (0,'新目录',1,6); delete from lf.sys_dir where pid = 0 and id > 309;*/
-- drop trigger if exists fn_m_pipeline_trigger on bs.m_pipeline; -- 管线
create or replace trigger fn_m_pipeline_trigger before insert on bs.m_pipeline for each row execute procedure fn_bs_prj();
-- drop trigger if exists fn_m_pipesegment_trigger on bs.m_pipeline; -- 管段
create or replace trigger fn_m_pipesegment_trigger before insert on bs.m_pipesegment for each row execute procedure fn_bs_prj();
-- drop trigger if exists fn_m_sitepoint_trigger on bs.m_pipeline; -- 站场点
create or replace trigger fn_m_sitepoint_trigger before insert on bs.m_sitepoint for each row execute procedure fn_bs_prj();
-- drop trigger if exists fn_m_valvehousepoint_trigger on bs.m_pipeline; -- 阀室点
create or replace trigger fn_m_valvehousepoint_trigger before insert on bs.m_valvehousepoint for each row execute procedure fn_bs_prj();
-- drop trigger if exists fn_m_crossing_trigger on bs.m_pipeline; -- 穿跨越
create or replace trigger fn_m_crossing_trigger before insert on bs.m_crossing for each row execute procedure fn_bs_prj();
-- drop trigger if exists fn_m_marker_trigger on bs.m_pipeline; -- 三桩一牌
create or replace trigger fn_m_markert_trigger before insert on bs.m_marker for each row execute procedure fn_bs_prj();
-- drop trigger if exists fn_m_hydraulic_protection_trigger on bs.m_pipeline; -- 水工保护
create or replace trigger fn_m_hydraulic_protection_trigger before insert on bs.m_hydraulic_protection for each row execute procedure fn_bs_prj();
select gid,projname,eventid,pipename,dirid from bs.m_pipeline order by gid desc;
/* insert into bs.m_pipeline (eventid,pipename,dirid) values (new_guid(),'Test','01'); delete from bs.m_pipeline where gid > 52; */
/******************************************************************************** 以下为废弃函数 ********************************************************************************/
----------------------------------------------------------------------------------------------------- a.查询目录ID数组 *
-- drop function fn_dir_arrs(pids varchar);