300 lines
7.9 KiB
XML
300 lines
7.9 KiB
XML
<?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.njcn.mapper.configuration.EventDataMapper'>
|
|
<resultMap type="EventDataList" id="eventdataMap" autoMapping="true">
|
|
</resultMap>
|
|
<select id='getEventDataList' resultMap="eventdataMap" databaseId="Oracle">
|
|
SELECT M.EVENTDETAIL_INDEX,
|
|
M.LINEID,
|
|
to_char(M.TIMEID, 'YYYY-mm-dd hh24:mi:ss.') || M.MS time,
|
|
round(M.PERSISTTIME / 1000, 3) PERSISTTIME,
|
|
M.EVENTVALUE,
|
|
M.EVENTREASON,
|
|
M.EVENTTYPE,
|
|
M.WAVETYPE TYPE,
|
|
M.NAME lineName,
|
|
M.fileFlag,
|
|
M.Severity,
|
|
M.EVENTASS_INDEX,
|
|
S. NAME GDNAME,
|
|
S1. NAME SUBNAME,
|
|
S2.DIC_NAME SCALE,
|
|
S3.NAME EVENTNAME
|
|
FROM (SELECT T1.EVENTDETAIL_INDEX,
|
|
T1.LINEID,
|
|
T1.TIMEID,
|
|
nvl(substr(10000 + T1.MS, -3), T1.MS) MS,
|
|
T1.PERSISTTIME,
|
|
T1.EVENTVALUE,
|
|
T1.fileFlag,
|
|
T2.DIC_NAME EVENTREASON,
|
|
T3.DIC_NAME EVENTTYPE,
|
|
DECODE(T1.WAVETYPE, 0, '扰动', 1, '暂降', 2, '暂升', '中断') WAVETYPE,
|
|
T1.EVENTASS_INDEX,
|
|
T1.Severity,
|
|
T4. NAME,
|
|
T4.GD_INDEX GDINDEX,
|
|
T4.SUB_INDEX SUBINDEX,
|
|
T4. SCALE
|
|
FROM PQS_EVENTDETAIL T1
|
|
INNER JOIN PQS_DICDATA T2
|
|
ON T1.EVENTREASON = T2.DIC_INDEX
|
|
INNER JOIN PQS_DICDATA T3
|
|
ON T1.EVENTTYPE = T3.DIC_INDEX
|
|
INNER JOIN PQ_LINE T4
|
|
ON T1.LINEID = T4.LINE_INDEX
|
|
WHERE T1.TIMEID between #{startTime} and #{endTime}
|
|
and T1.LINEID = #{lineIndex}
|
|
and T1.WAVETYPE !=5 ) M
|
|
INNER JOIN PQ_GDINFORMATION S
|
|
ON M.GDINDEX = S.GD_INDEX
|
|
INNER JOIN PQ_SUBSTATION S1
|
|
ON M.SUBINDEX = S1.SUB_INDEX
|
|
INNER JOIN PQS_DICDATA S2
|
|
ON M . SCALE = S2.DIC_INDEX
|
|
LEFT JOIN PQS_EVENTASS S3
|
|
ON M.EVENTASS_INDEX = S3.EVENTASS_INDEX
|
|
ORDER BY M.TIMEID DESC
|
|
</select>
|
|
<select id='getEventDataList' resultMap="eventdataMap" databaseId="MariaDB">
|
|
SELECT
|
|
M .EVENTDETAIL_INDEX,
|
|
M .LINEID,
|
|
CONCAT(date_format(M .TIMEID,'%Y-%m-%d %H:%i:%S.'), M.MS) time,
|
|
round(M .PERSISTTIME/1000, 3) PERSISTTIME,
|
|
M
|
|
.EVENTVALUE,
|
|
M .EVENTREASON,
|
|
M .EVENTTYPE,
|
|
M.WAVETYPE TYPE,
|
|
M .NAME lineName,
|
|
M.fileFlag,
|
|
M.Severity,
|
|
M
|
|
.EVENTASS_INDEX,
|
|
S. NAME GDNAME,
|
|
S1. NAME SUBNAME,
|
|
S2.DIC_NAME SCALE,
|
|
S3.NAME EVENTNAME
|
|
FROM
|
|
(
|
|
SELECT
|
|
T1.EVENTDETAIL_INDEX,
|
|
T1.LINEID,
|
|
T1.TIMEID,
|
|
nvl(substr(10000+T1.MS,-3),T1.MS) MS,
|
|
T1.PERSISTTIME,
|
|
T1.EVENTVALUE,
|
|
T1.fileFlag,
|
|
T2.DIC_NAME EVENTREASON,
|
|
T3.DIC_NAME EVENTTYPE,
|
|
(case T1.WAVETYPE
|
|
when 0 then
|
|
'扰动'
|
|
when 1 then
|
|
'暂降'
|
|
when 2 then
|
|
'暂升'
|
|
else
|
|
'中断'
|
|
end) WAVETYPE,
|
|
T1.EVENTASS_INDEX,
|
|
T1.Severity,
|
|
T4.
|
|
NAME,
|
|
T4.GD_INDEX GDINDEX,
|
|
T4.SUB_INDEX SUBINDEX, T4. SCALE
|
|
FROM
|
|
PQS_EVENTDETAIL T1
|
|
INNER JOIN PQS_DICDATA T2 ON T1.EVENTREASON =
|
|
T2.DIC_INDEX
|
|
INNER JOIN PQS_DICDATA T3 ON T1.EVENTTYPE = T3.DIC_INDEX
|
|
INNER JOIN PQ_LINE T4 ON T1.LINEID = T4.LINE_INDEX
|
|
WHERE
|
|
T1.TIMEID
|
|
between #{startTime} and #{endTime}
|
|
and T1.LINEID = #{lineIndex}
|
|
and T1.WAVETYPE = 1
|
|
) M
|
|
INNER JOIN PQ_GDINFORMATION S ON M .GDINDEX = S.GD_INDEX
|
|
INNER JOIN
|
|
PQ_SUBSTATION S1 ON M .SUBINDEX = S1.SUB_INDEX
|
|
INNER JOIN PQS_DICDATA
|
|
S2 ON M . SCALE = S2.DIC_INDEX
|
|
LEFT JOIN PQS_EVENTASS S3 ON
|
|
M.EVENTASS_INDEX=S3.EVENTASS_INDEX
|
|
ORDER BY
|
|
M .TIMEID DESC
|
|
</select>
|
|
|
|
<select id="getCountsByInterval" resultType="Integer" databaseId="Oracle">
|
|
select count(*) from PQS_EVENTDETAIL where to_char(TIMEID,'YYYY-MM') = #{interTime} and LINEID = #{lineIndex}
|
|
</select>
|
|
<select id="getCountsByInterval" resultType="Integer" databaseId="MariaDB">
|
|
select count(*) from PQS_EVENTDETAIL where date_format(TIMEID,'%Y-%m') = #{interTime} and LINEID = #{lineIndex}
|
|
</select>
|
|
|
|
<select id='areaEventDataList' resultMap="eventdataMap" databaseId="Oracle">
|
|
SELECT
|
|
M .EVENTDETAIL_INDEX,
|
|
M .LINEID,
|
|
to_char(M .TIMEID,'YYYY-mm-dd hh24:mi:ss.')||M.MS time,
|
|
round(M .PERSISTTIME/1000, 3) PERSISTTIME,
|
|
M
|
|
.EVENTVALUE,
|
|
M .EVENTREASON,
|
|
M .EVENTTYPE,
|
|
M .NAME lineName,
|
|
M.fileFlag,
|
|
M
|
|
.EVENTASS_INDEX,
|
|
S. NAME GDNAME,
|
|
S1. NAME SUBNAME,
|
|
S2.DIC_NAME SCALE,
|
|
S3.NAME EVENTNAME
|
|
FROM
|
|
(
|
|
SELECT
|
|
T1.EVENTDETAIL_INDEX,
|
|
T1.LINEID,
|
|
T1.TIMEID,
|
|
nvl(substr(10000+T1.MS,-3),T1.MS) MS,
|
|
T1.PERSISTTIME,
|
|
T1.EVENTVALUE,
|
|
T1.fileFlag,
|
|
T2.DIC_NAME EVENTREASON,
|
|
T3.DIC_NAME EVENTTYPE,
|
|
T1.EVENTASS_INDEX,
|
|
T4.
|
|
NAME,
|
|
T4.GD_INDEX GDINDEX,
|
|
T4.SUB_INDEX SUBINDEX, T4. SCALE
|
|
FROM
|
|
PQS_EVENTDETAIL T1
|
|
INNER JOIN PQS_DICDATA T2 ON T1.EVENTREASON =
|
|
T2.DIC_INDEX
|
|
INNER JOIN PQS_DICDATA T3 ON T1.EVENTTYPE = T3.DIC_INDEX
|
|
INNER JOIN PQ_LINE T4 ON T1.LINEID = T4.LINE_INDEX
|
|
WHERE
|
|
T1.TIMEID
|
|
between #{startTime} and #{endTime}
|
|
and T1.LINEID in
|
|
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
|
|
#{item}
|
|
</foreach>
|
|
) M
|
|
INNER JOIN PQ_GDINFORMATION S ON M .GDINDEX = S.GD_INDEX
|
|
INNER JOIN
|
|
PQ_SUBSTATION S1 ON M .SUBINDEX = S1.SUB_INDEX
|
|
INNER JOIN PQS_DICDATA
|
|
S2 ON M . SCALE = S2.DIC_INDEX
|
|
LEFT JOIN PQS_EVENTASS S3 ON
|
|
M.EVENTASS_INDEX=S3.EVENTASS_INDEX
|
|
ORDER BY
|
|
M .TIMEID DESC
|
|
</select>
|
|
<select id='areaEventDataList' resultMap="eventdataMap" databaseId="MariaDB">
|
|
SELECT
|
|
M .EVENTDETAIL_INDEX,
|
|
M .LINEID,
|
|
CONCAT(date_format(M .TIMEID,'%Y-%m-%d %H:%i:%S.'), M.MS) time,
|
|
round(M .PERSISTTIME/1000, 3) PERSISTTIME,
|
|
M
|
|
.EVENTVALUE,
|
|
M .EVENTREASON,
|
|
M .EVENTTYPE,
|
|
M .NAME lineName,
|
|
M.fileFlag,
|
|
M
|
|
.EVENTASS_INDEX,
|
|
S. NAME GDNAME,
|
|
S1. NAME SUBNAME,
|
|
S2.DIC_NAME SCALE,
|
|
S3.NAME EVENTNAME
|
|
FROM
|
|
(
|
|
SELECT
|
|
T1.EVENTDETAIL_INDEX,
|
|
T1.LINEID,
|
|
T1.TIMEID,
|
|
nvl(substr(10000+T1.MS,-3),T1.MS) MS,
|
|
T1.PERSISTTIME,
|
|
T1.EVENTVALUE,
|
|
T1.fileFlag,
|
|
T2.DIC_NAME EVENTREASON,
|
|
T3.DIC_NAME EVENTTYPE,
|
|
T1.EVENTASS_INDEX,
|
|
T4.
|
|
NAME,
|
|
T4.GD_INDEX GDINDEX,
|
|
T4.SUB_INDEX SUBINDEX, T4. SCALE
|
|
FROM
|
|
PQS_EVENTDETAIL T1
|
|
INNER JOIN PQS_DICDATA T2 ON T1.EVENTREASON =
|
|
T2.DIC_INDEX
|
|
INNER JOIN PQS_DICDATA T3 ON T1.EVENTTYPE = T3.DIC_INDEX
|
|
INNER JOIN PQ_LINE T4 ON T1.LINEID = T4.LINE_INDEX
|
|
WHERE
|
|
T1.TIMEID
|
|
between #{startTime} and #{endTime}
|
|
and T1.LINEID in
|
|
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
|
|
#{item}
|
|
</foreach>
|
|
) M
|
|
INNER JOIN PQ_GDINFORMATION S ON M .GDINDEX = S.GD_INDEX
|
|
INNER JOIN
|
|
PQ_SUBSTATION S1 ON M .SUBINDEX = S1.SUB_INDEX
|
|
INNER JOIN PQS_DICDATA
|
|
S2 ON M . SCALE = S2.DIC_INDEX
|
|
LEFT JOIN PQS_EVENTASS S3 ON
|
|
M.EVENTASS_INDEX=S3.EVENTASS_INDEX
|
|
ORDER BY
|
|
M .TIMEID DESC
|
|
</select>
|
|
|
|
<select id='getCountByIndex' resultType="Integer">
|
|
select count(*) from
|
|
PQS_EVENTDETAIL
|
|
where TIMEID
|
|
between #{startTime} and #{endTime}
|
|
and LINEID = #{lineIndex}
|
|
</select>
|
|
|
|
<select id='getGdcounts' resultType="Integer">
|
|
select count(*)
|
|
from PQS_EVENTDETAIL t
|
|
where t.TIMEID
|
|
between #{startTime} and #{endTime}
|
|
and t.lineid in
|
|
(select a.line_index
|
|
from pq_line a, pq_device b
|
|
where a.dev_index = b.dev_index
|
|
and b.devmodel = 1
|
|
and b.datatype in (0,2)
|
|
and a.gd_index = #{gdIndex})
|
|
</select>
|
|
|
|
<select id="getEventTypeCount" resultType="EventTypeList">
|
|
SELECT
|
|
T2.DIC_NAME type ,
|
|
COUNT (1) count
|
|
FROM
|
|
PQS_EVENTDETAIL t1,
|
|
PQS_DICDATA t2
|
|
WHERE
|
|
T1.EVENTTYPE = T2.DIC_INDEX
|
|
AND
|
|
T1.LINEID = #{lineIndex}
|
|
AND
|
|
TIMEID between #{startTime} and #{endTime}
|
|
GROUP BY
|
|
T2.DIC_NAME
|
|
ORDER BY
|
|
count
|
|
</select>
|
|
|
|
</mapper>
|