管道基础大数据平台系统开发-【后端】-Server
13693261870
2024-03-15 bdd3b95a503393f8eb79279d0653f8f88dc8d992
src/main/resources/mapper/sys/ReportMapper.xml
@@ -112,8 +112,9 @@
    <!-- 按项目统计数据 -->
    <select id="countSizesByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1", coalesce((select sum(sizes) from lf.sys_meta b where b.dircode like a.code || '%'), 0) "sizes",
           (select count(*) from lf.sys_meta b where b.dircode like a.code || '%') "count"
        select name "m1",
        (select cast( coalesce(sum(sizes), 0) as decimal(18, 3) ) from lf.sys_meta b where b.dircode like a.code || '%') as  "sizes",
         (select count(*) from lf.sys_meta b where b.dircode like a.code || '%') "count"
        from lf.sys_dir a
        where pid = 0
        order by a.code;
@@ -145,31 +146,38 @@
    <!-- 按项目统计数字高程模型面积 -->
    <select id="countDemAreaByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1", 0.0 "area"
        select name "m1",
          (select cast( coalesce(sum(b.area), 0) as decimal(20, 2) ) from lf.sys_meta b
         inner join lf.sys_dir c on b.dircode = c.code
         where c.name = '数字高程模型' and b.type in ('dem', 'tif', 'tiff') and b.depcode like a.code || '%') "area"
        from lf.sys_dir a
        where pid = 0
        order by code;
    </select>
    <!-- 按项目统计三维地形模型面积 -->
    <!-- 按项目统计三维地形模型面积:mpt -->
    <select id="countMptAreaByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1", 0.0 "area"
        from lf.sys_dir a
        where pid =
        where pid = 0
        order by code;
    </select>
    <!-- 按项目统计倾斜摄影模型面积 -->
    <!-- 按项目统计倾斜摄影模型面积:osgb -->
    <select id="countOsgbAreaByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1", 0.0 "area"
        select name "m1",
          (select coalesce(sum(b.area), 0) from lf.sys_meta b
           where b.type = 'osgb' and b.depcode like a.code || '%') "area"
        from lf.sys_dir a
        where pid = 0
        order by code;
    </select>
    <!-- 按项目统计激光点云模型面积 -->
    <!-- 按项目统计激光点云模型面积:las,laz -->
    <select id="countLasAreaByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1", 0.0 "area"
        select name "m1",
          (select cast( coalesce(sum(area), 0) as decimal(20, 2) ) from lf.sys_meta b
           where b.type in ('las', 'laz') and b.depcode like a.code || '%') "area"
        from lf.sys_dir a
        where pid = 0
        order by code;
@@ -257,4 +265,58 @@
        where pid = 0
        order by code;
    </select>
    <!-- 统计数字线划图面积 -->
    <select id="countDlgAreaByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1", area * 1000000 "area" from lf.sys_line_buffer;
    </select>
    <!-- 按项目统计数字正射影像图面积 -->
    <select id="countDomAreaByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1",
          (select cast( coalesce(sum(b.area), 0) as decimal(20, 2) ) from lf.sys_meta b
         inner join lf.sys_dir c on b.dircode = c.code
         where c.name = '数字正射影像图' and b.type in ('img', 'tif', 'tiff') and b.depcode like a.code || '%') "area"
        from lf.sys_dir a
        where pid = 0
        order by code;
    </select>
    <!-- 统计管线长度 -->
    <select id="countLineLength" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1",
        (select cast( coalesce(sum( ST_Length( ST_GeographyFromText( ST_AsText(geom) ) ) ) / 1000, 0) as decimal(20, 2) )
         from bs.m_pipeline b where b.dirid like a.code || '%') as  "len"
        from lf.sys_dir a
        where pid = 0
        order by a.code;
    </select>
    <!-- 按项目统计勘探点个数 -->
    <select id="countExplorationPointByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1",
          (select count(*) from bs.s_explorationpoint b where b.dirid like a.code || '%') "count"
        from lf.sys_dir a
        where pid = 0
        order by code;
    </select>
    <!-- 按项目统计地质模型面积 -->
    <select id="countGeoModelAreaByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1",
          (select cast( coalesce(sum(b.area), 0) as decimal(20, 2) )
           from lf.sys_meta b where b.dircode like a.code || '%') "area"
        from lf.sys_dir a
        where pid = 0
        order by code;
    </select>
    <!-- 按项目统计地灾点个数 -->
    <select id="countGeologicHazardByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
        select name "m1",
          (select count(*) from bd.b_geologic_hazard b where b.dirid like a.code || '%') "count"
        from lf.sys_dir a
        where pid = 0
        order by code;
    </select>
</mapper>