integrated_traffic/src/main/resources/mybatis/datasource/video/VideoManagerMapper.xml

294 lines
8.5 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.zcloud.mapper.datasource.video.VideoManagerMapper">
<!--表名 -->
<sql id="tableName">
BUS_VIDEOMANAGER
</sql>
<!--数据字典表名 -->
<sql id="dicTableName">
SYS_DICTIONARIES
</sql>
<!-- 字段 -->
<sql id="Field">
f
.
CORPINFO_ID
,
f.VIDEONAME,
f.VIDEOURL,
f.OPDATE,
f.OPUSER,
f.ISDELETE,
f.ISSHOW,
f.GBS_NUM,
f.VIDEOMANAGER_ID,
f.PLS_ID,
f.CODE
</sql>
<!-- 字段用于新增 -->
<sql id="Field2">
CORPINFO_ID
,
VIDEONAME,
VIDEOURL,
OPDATE,
OPUSER,
ISDELETE,
ISSHOW,
VIDEOMANAGER_ID,
PLS_ID,
CODE
</sql>
<!-- 字段值 -->
<sql id="FieldValue">
#{CORPINFO_ID}
,
#{VIDEONAME},
#{VIDEOURL},
#{OPDATE},
#{OPUSER},
#{ISDELETE},
#{ISSHOW},
#{VIDEOMANAGER_ID},
#{PLS_ID},
#{CODE}
</sql>
<!-- 新增-->
<insert id="save" parameterType="pd">
insert into
<include refid="tableName"></include>
(
<include refid="Field2"></include>
) values (
<include refid="FieldValue"></include>
)
</insert>
<!-- 删除-->
<delete id="delete" parameterType="pd">
update
<include refid="tableName"></include>
set
ISDELETE = '1'
where
VIDEOMANAGER_ID = #{VIDEOMANAGER_ID}
</delete>
<!-- 修改 -->
<update id="edit" parameterType="pd">
update
<include refid="tableName"></include>
set
<if test="CORPINFO_ID != null and CORPINFO_ID != ''"><!-- 关键词检索 -->
CORPINFO_ID = #{CORPINFO_ID},
</if>
<if test="VIDEONAME != null and VIDEONAME != ''"><!-- 关键词检索 -->
VIDEONAME = #{VIDEONAME},
</if>
<if test="VIDEOURL != null and VIDEOURL != ''"><!-- 关键词检索 -->
VIDEOURL = #{VIDEOURL},
</if>
<if test="ISSHOW != null and ISSHOW != ''"><!-- 关键词检索 -->
ISSHOW = #{ISSHOW},
</if>
<if test="CODE != null and CODE != ''"><!-- 关键词检索 -->
CODE = #{CODE},
</if>
VIDEOMANAGER_ID = VIDEOMANAGER_ID
where
VIDEOMANAGER_ID = #{VIDEOMANAGER_ID}
</update>
<!-- 修改 -->
<update id="editPls" parameterType="pd">
update
<include refid="tableName"></include>
set
PLS_ID = #{PLS_ID}
where
VIDEOMANAGER_ID = #{VIDEOMANAGER_ID}
</update>
<update id="editIsShowBycorpinfoid" parameterType="pd">
update
<include refid="tableName"></include>
set ISSHOW= #{ISSHOW}
where
CORPINFO_ID = #{CORPINFO_ID}
</update>
<update id="editIsShow" parameterType="pd">
update
<include refid="tableName"></include>
set ISSHOW= #{ISSHOW}
where
VIDEOMANAGER_ID = #{VIDEOMANAGER_ID}
</update>
<!-- 通过ID获取数据 -->
<select id="findById" parameterType="pd" resultType="pd">
select
<include refid="Field"></include>
from
<include refid="tableName"></include>
f
where
f.VIDEOMANAGER_ID = #{VIDEOMANAGER_ID} and
f.ISDELETE = '0'
<if test="CORPINFO_ID != null and CORPINFO_ID != ''"><!-- 关键词检索 -->
and f.CORPINFO_ID=#{CORPINFO_ID}
</if>
<!-- <if test="ISSHOW != null and ISSHOW != ''">&lt;!&ndash; 关键词检索 &ndash;&gt;-->
<!-- and f.ISSHOW=#{ISSHOW}-->
<!-- </if>-->
</select>
<!-- 列表 -->
<select id="datalistPage" parameterType="page" resultType="pd">
select
<include refid="Field"></include>,
c.CORP_NAME
from
<include refid="tableName"></include>
f left join bus_CORP_INFO c on f.CORPINFO_ID=c.CORPINFO_ID
where f.ISDELETE = '0'
<if test="pd.CORPINFO_ID != null and pd.CORPINFO_ID != ''"><!-- 关键词检索 -->
and f.CORPINFO_ID=#{pd.CORPINFO_ID}
</if>
<if test="pd.OUTSOURCED_ID != null and pd.OUTSOURCED_ID != ''"><!-- 关键词检索 -->
and f.OUTSOURCED_ID=#{pd.OUTSOURCED_ID}
</if>
<if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 -->
and
(
VIDEONAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
<!-- 根据需求自己加检索条件
or
字段2 LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
-->
)
</if>
order by f.ISSHOW desc
</select>
<!-- 列表(全部) -->
<select id="listAll" parameterType="pd" resultType="pd">
select
<include refid="Field"></include>
from
<include refid="tableName"></include>
f
where f.ISDELETE = '0'
<if test="CORPINFO_ID != null and CORPINFO_ID != ''"><!-- 关键词检索 -->
and f.CORPINFO_ID=#{CORPINFO_ID}
</if>
<if test="ISSHOW != null and ISSHOW != ''"><!-- 关键词检索 -->
and f.ISSHOW=#{ISSHOW}
</if>
</select>
<select id="findByCode" parameterType="pd" resultType="pd">
SELECT
f.*,
e.CHECK_NO
FROM
bus_videomanager f
LEFT JOIN bus_eightwork_videomanager e ON f.VIDEOMANAGER_ID = e.VIDEOMANAGER_ID
AND e.ISDELETE = 0
where
f.CODE=#{CODE}
</select>
<select id="getCameraAlarmCount" resultType="com.zcloud.entity.PageData">
SELECT COUNT(1) count,
a.ISTRUE type
FROM
bus_aiwarning a
WHERE
a.ISDELETE = 0
AND a.CORPINFO_ID = #{CORPINFO_ID}
GROUP BY
a.ISTRUE
</select>
<select id="getCameraAlarmTypeCount" resultType="com.zcloud.entity.PageData">
SELECT ROUND((COUNT(a.TYPE) / (SELECT COUNT(*)
FROM bus_aiwarning
WHERE CORPINFO_ID =
#{CORPINFO_ID}
AND ISDELETE = 0)) * 100, 2) AS PERCENTAGE,
a.TYPE
FROM bus_aiwarning a
WHERE a.ISDELETE = 0
AND a.CORPINFO_ID = #{CORPINFO_ID}
GROUP BY a.TYPE;
</select>
<select id="getCameraAlarmTimeCount" resultType="com.zcloud.entity.PageData">
<foreach item="item" index="index" collection="generateTimeArray" separator="UNION">
SELECT
count( 1 ) MONTH_COUNT,
#{item.month} MONTH
FROM
bus_aiwarning a
WHERE
a.ISDELETE = 0
AND a.CORPINFO_ID = #{CORPINFO_ID}
AND WARNING_TIME BETWEEN #{item.dateBegin}
AND #{item.dateEnd}
</foreach>
</select>
<select id="getCameraTopToShow" resultType="com.zcloud.entity.PageData">
select * from bus_videomanager where ISSHOW = 1 and CORPINFO_ID = #{CORPINFO_ID} and ISDELETE = 0
</select>
<!-- 批量删除 -->
<delete id="deleteAll" parameterType="String">
update
<include refid="tableName"></include>
set
ISDELETE = '1'
where
VIDEOMANAGER_ID in
<foreach item="item" index="index" collection="ArrayDATA_IDS" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 修改 -->
<update id="editZhiding" parameterType="pd">
UPDATE bus_videomanager
SET ISSHOW = (CASE WHEN VIDEOMANAGER_ID = #{VIDEOMANAGER_ID} THEN 1 ELSE 0 END)
where CORPINFO_ID = #{CORPINFO_ID}
</update>
<!-- 列表 -->
<select id="dataApplistPage" parameterType="page" resultType="pd">
select
<include refid="Field"></include>
from
<include refid="tableName"></include> f
where f.ISDELETE = '0'
<if test="pd.OUTSOURCED_ID != null and pd.OUTSOURCED_ID != ''"><!-- 关键词检索 -->
and f.OUTSOURCED_ID=#{pd.OUTSOURCED_ID}
</if>
<if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 -->
and
(
f.VIDEONAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
)
</if>
</select>
<update id="updateAiByOUTSOURCED_ID" parameterType="pd">
update
<include refid="tableName"></include>
set
PLATFORMVIDEOMANAGEMENT_ID = null,
VIDEO_RESOURCES_ID = null
where
OUTSOURCED_ID = #{OUTSOURCED_ID}
</update>
</mapper>