<?xml version="1.0" encoding="UTF-8" ?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.lf.server.mapper.sys.ReportMapper">
|
<select id="selectCount" resultType="java.lang.Integer">
|
select count(*) from lf.sys_report
|
<where>
|
<if test="name != null">
|
upper(name) like #{name}
|
</if>
|
<if test="code != null">
|
code = #{code}
|
</if>
|
</where>
|
</select>
|
|
<select id="selectByPage" resultType="com.lf.server.entity.sys.ReportEntity">
|
select a.*,fn_uname(a.create_user) createName,fn_uname(a.update_user) updateName from lf.sys_report a
|
<where>
|
<if test="name != null">
|
upper(name) like #{name}
|
</if>
|
<if test="code != null">
|
code = #{code}
|
</if>
|
</where>
|
order by a.id desc
|
limit #{limit} offset #{offset}
|
</select>
|
|
<select id="selectAll" resultType="com.lf.server.entity.sys.ReportEntity">
|
select * from lf.sys_report order by id desc;
|
</select>
|
|
<select id="selectById" resultType="com.lf.server.entity.sys.ReportEntity">
|
select * from lf.sys_report where id = #{id}
|
</select>
|
|
<insert id="insert" parameterType="com.lf.server.entity.sys.ReportEntity">
|
insert into lf.sys_report
|
(name,type,fname,guid,code,create_user,create_time,bak)
|
values
|
(#{name},#{type},#{fname},#{guid},#{code},#{createUser},now(),#{bak})
|
</insert>
|
|
<insert id="inserts">
|
insert into lf.sys_report
|
(name,type,fname,guid,code,create_user,create_time,bak)
|
values
|
<foreach collection="list" item="item" index="index" separator=",">
|
(#{item.name},#{item.type},#{item.fname},#{item.guid},#{item.code},#{item.createUser},now(),#{item.bak})
|
</foreach>
|
</insert>
|
|
<delete id="delete">
|
delete from lf.sys_report where id = #{id}
|
</delete>
|
|
<delete id="deletes">
|
delete from lf.sys_report where id in
|
<foreach item="id" collection="ids" index="index" open="(" separator="," close=")">
|
#{id}
|
</foreach>
|
</delete>
|
|
<update id="update">
|
update lf.sys_report
|
set name=#{name},type=#{type},fname=#{fname},guid=#{guid},code=#{code},update_user=#{updateUser},update_time=now(),bak=#{bak}
|
where id=#{id}
|
</update>
|
|
<update id="updates">
|
<foreach collection="list" item="item" index="index" separator=";">
|
update lf.sys_report
|
<set>
|
name=#{item.name},type=#{item.type},fname=#{item.fname},guid=#{item.guid},code=#{item.code},update_user=#{item.updateUser},update_time=now(),bak=#{item.bak}
|
</set>
|
where id = #{item.id}
|
</foreach>
|
</update>
|
|
<!-- 数据量统计 -->
|
<select id="countSizes" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select fn_get_fullname(depcode, 1) "m1", cast(sum(sizes) as decimal(18, 3)) "sizes", count(*) "count"
|
from lf.sys_meta
|
group by depcode
|
order by depcode;
|
</select>
|
|
<!-- 按文件类型统计 -->
|
<select id="countSizesByType" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select type "m1", cast(sum(sizes) as decimal(18, 3)) "sizes", count(*) "count"
|
from lf.sys_meta
|
group by type
|
order by type;
|
</select>
|
|
<!-- 服务调用量统计 -->
|
<select id="countServices" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1", count(*) "count"
|
from lf.sys_serve_log
|
group by name
|
order by name;
|
</select>
|
|
<!-- 用户流量统计 -->
|
<select id="countOperates" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select modular1 "m1", modular2 "m2", count(*) "count"
|
from lf.sys_operate
|
group by modular1,modular2
|
order by modular1 desc,modular2;
|
</select>
|
|
<!-- 按项目统计数据 -->
|
<select id="countSizesByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
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;
|
</select>
|
|
<!-- 按项目统计钻孔数据 -->
|
<select id="countExplorationPoints" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select
|
name "m1", a.code "m3", 0.0 "area",
|
(select count(*) from bs.s_explorationpoint b where dirid like a.code || '%') "count",
|
(select coalesce(round(sum(sizes)::numeric, 3), 0)
|
from bs.s_explorationpoint b
|
inner join lf.sys_meta c
|
on b.parentid = c.eventid
|
where b.dirid like a.code || '%') "sizes"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 根据项目编码查询钻孔数据坐标点 -->
|
<select id="selectExplorationPoints" resultType="com.lf.server.entity.ctrl.CoordinateEntity">
|
select ST_X(geom) "x", ST_Y(geom) "y"
|
from bs.s_explorationpoint b
|
<where>
|
dirid like #{code} and geom is not null
|
</where>
|
</select>
|
|
<!-- 按项目统计数字高程模型面积 -->
|
<select id="countDemAreaByPrj" 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 ('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 = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计倾斜摄影模型面积:osgb -->
|
<select id="countOsgbAreaByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
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",
|
(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;
|
</select>
|
|
<!-- 按项目统计勘察工点个数 -->
|
<select id="countSurveyWorksiteByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.s_surveyworksite b where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计勘察报告个数 -->
|
<select id="countExplorationReportByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.s_explorationpoint b
|
inner join lf.sys_attach c on b.eventid = c.tab_guid
|
where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计崩塌个数 -->
|
<select id="countCollapseByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.g_collapse b where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计泥石流个数 -->
|
<select id="countDebrisFlowByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.g_debrisflow b where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计地面塌陷个数 -->
|
<select id="countGroundCollapseByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.g_ground_collapse b where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计高陡边坡个数 -->
|
<select id="countHighSteepSlopeByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.g_highandsteep_slope b where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计滑坡个数 -->
|
<select id="countLandSlideByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.g_landslide b where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计不稳定斜坡个数 -->
|
<select id="countUnstableSlopeByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.g_unstable_slope b where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
where pid = 0
|
order by code;
|
</select>
|
|
<!-- 按项目统计水毁个数 -->
|
<select id="countWaterDamageByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
|
select name "m1",
|
(select count(*) from bs.g_water_damage b where b.dirid like a.code || '%') "count"
|
from lf.sys_dir a
|
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", area * 1000000 "area" from lf.sys_line_buffer;
|
</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>
|