管道基础大数据平台系统开发-【后端】-Server
1
13693261870
2023-02-25 f15c13bea9f5b47e4527ae9ec715c54602a9ae45
1
已修改3个文件
38 ■■■■ 文件已修改
data/db_cx.sql 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
data/db_fn.sql 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/all/BaseQueryMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
data/db_cx.sql
@@ -11,6 +11,7 @@
select uuid_generate_v4();                    -- uuid,36位
select split_part('12.34.56.78', '.', 1);     -- 切割
select substr('FY2021', 3, 2);                -- 提取
select substr('FY2021', 3);                   -- 提取
select substring('FY2021' FROM 3 for 2);      -- 提取
select position('23' in 'w123456');           -- 位置
select md5('');                               -- MD5
@@ -325,9 +326,9 @@
select (select string_agg(code, ',') from lf.sys_dir where name = a.name) "key", name "value"
from lf.sys_dir a
where name in ('DOM', 'DEM', 'DRG', 'DLG', '测量(ESV)', 'OSM数据', '基础地灾', '基础勘察', '合规数据', '管理数据', '勘察(EGE)', '地灾(EGD)', '洞库(EGD)')
where name in ('基础测绘', '基础地灾', '基础勘察', '合规数据', '管理数据', '测量(ESV)', '勘察(EGE)', '地灾(EGD)', '洞库(EGD)')
group by name
order by key
order by key;
data/db_fn.sql
@@ -291,7 +291,28 @@
select id, name, code from lf.sys_dir order by id;
select fn_set_tab_codes(1, 1); select fn_set_tab_codes(0, 2);
----------------------------------------------------------------------------------------------------- 13.FME日志表触发器
----------------------------------------------------------------------------------------------------- 13.获取目录编码过滤条件
-- drop function fn_get_dirs(varchar);
create or replace function fn_get_dirs(name varchar)
returns varchar as $$
    declare
        code varchar;
        str  varchar := '';
    begin
        for code in execute 'select code from lf.sys_dir where name=''' || name || '''' loop
            str := str || ' or depcode like ''' || code || '%''';
        end loop;
        if length(str) > 0 then
            return substr(str, 5);
        end if;
        return '1=1';
    end;
$$ language plpgsql;
select fn_get_dirs('基础测绘'); select fn_get_dirs('测量(ESV)'); select * from lf.sys_meta where depcode like '0000%';
----------------------------------------------------------------------------------------------------- 14.FME日志表触发器
-- drop function fn_meta_insert();
create or replace function fn_meta_insert() returns trigger as $$
  begin
@@ -309,7 +330,7 @@
/*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';*/
----------------------------------------------------------------------------------------------------- 14.单位表触发器
----------------------------------------------------------------------------------------------------- 15.单位表触发器
-- drop function fn_dep_insert();
create or replace function fn_dep_insert() returns trigger as $$
  begin
@@ -326,7 +347,7 @@
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;*/
----------------------------------------------------------------------------------------------------- 15.目录表触发器
----------------------------------------------------------------------------------------------------- 16.目录表触发器
-- drop function fn_dir_insert();
create or replace function fn_dir_insert() returns trigger as $$
  begin
@@ -343,9 +364,7 @@
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;*/
----------------------------------------------------------------------------------------------------- 16.路径分析
----------------------------------------------------------------------------------------------------- 17.路径分析
-- 删除已存在的函数
-- drop function pgr_fromAtoB(varchar, double precision, double precision, double precision, double precision);
src/main/resources/mapper/all/BaseQueryMapper.xml
@@ -74,7 +74,7 @@
        select (select string_agg(code, ',') from lf.sys_dir where name = a.name) "key", name "value"
        from lf.sys_dir a
        <where>
            name in ('DOM', 'DEM', 'DRG', 'DLG', '测量(ESV)', 'OSM数据', '基础地灾', '基础勘察', '合规数据', '管理数据', '测量(ESV)', '勘察(EGE)', '地灾(EGD)', '洞库(EGD)')
            name in ('基础测绘', '基础地灾', '基础勘察', '合规数据', '管理数据', '测量(ESV)', '勘察(EGE)', '地灾(EGD)', '洞库(EGD)')
            <if test="name != null">
                and name like #{name}
            </if>