<?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.ycl.platform.mapper.CheckIndexVideoMapper">
|
|
<resultMap type="com.ycl.platform.domain.entity.CheckIndexVideo" id="CheckIndexVideoResult">
|
<result property="id" column="id" />
|
<result property="deptId" column="dept_id" />
|
<result property="createTime" column="create_time" />
|
<result property="examineTag" column="examine_tag" />
|
<result property="platformOnline" column="platform_online" />
|
<result property="monitorQualification" column="monitor_qualification" />
|
<result property="monitorRegistration" column="monitor_registration" />
|
<result property="archivesRate" column="archives_rate" />
|
<result property="siteOnline" column="site_online" />
|
<result property="videoAvailable" column="video_available" />
|
<result property="ministrySiteOnline" column="ministry_site_online" />
|
<result property="ministryVideoAvailable" column="ministry_video_available" />
|
<result property="keySiteOnline" column="key_site_online" />
|
<result property="keyVideoAvailable" column="key_video_available" />
|
<result property="keyAnnotationAccuracy" column="key_annotation_accuracy" />
|
<result property="keyTimingAccuracy" column="key_timing_accuracy" />
|
<result property="keyCommandImageOnline" column="key_command_image_online" />
|
<result property="imageResourceSecurity" column="image_resource_security" />
|
</resultMap>
|
|
<sql id="selectCheckIndexVideoVo">
|
select id, dept_id, create_time, examine_tag, platform_online, monitor_qualification, monitor_registration, archives_rate, site_online, video_available, ministry_site_online, ministry_video_available, key_site_online, key_video_available, key_annotation_accuracy, key_timing_accuracy, key_command_image_online,image_resource_security from t_check_index_video
|
</sql>
|
|
<select id="selectCheckIndexVideoList" parameterType="CheckIndexVideo" resultMap="CheckIndexVideoResult">
|
select tciv.*,sd.dept_name,tcs.score
|
from t_check_index_video tciv left join sys_dept sd on tciv.dept_id = sd.dept_id
|
left join t_check_score tcs on tciv.id = tcs.index_id
|
<where>
|
<if test="deptId != null "> and tciv.dept_id = #{deptId}</if>
|
<if test="examineTag != null "> and examine_tag = #{examineTag}</if>
|
<if test="date != null "> and date_format(tciv.create_time,'%Y-%m') = #{date}</if>
|
<if test="day != null "> and date(tciv.create_time) = #{day}</if>
|
<if test="createTime != null "> and date(tciv.create_time) = #{createTime}</if>
|
<if test="params.publish != null and params.publish != ''">and publish = #{params.publish}</if>
|
<if test="deptIds != null ">and tciv.dept_id in
|
<foreach collection="deptIds" separator="," open="(" close=")" item="deptId">
|
#{deptId}
|
</foreach>
|
</if>
|
<if test="examineTags != null and examineTags.size()>0">and tciv.examine_tag in
|
<foreach collection="examineTags" separator="," open="(" close=")" item="examineTag">
|
#{examineTag}
|
</foreach>
|
</if>
|
</where>
|
</select>
|
|
<select id="selectCheckIndexVideoById" resultMap="CheckIndexVideoResult">
|
<include refid="selectCheckIndexVideoVo"/>
|
where id = #{id}
|
</select>
|
|
<insert id="insertCheckIndexVideo" useGeneratedKeys="true" keyProperty="id">
|
insert into t_check_index_video
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="deptId != null">dept_id,</if>
|
<if test="createTime != null">create_time,</if>
|
<if test="examineTag != null">examine_tag,</if>
|
<if test="platformOnline != null">platform_online,</if>
|
<if test="monitorQualification != null">monitor_qualification,</if>
|
<if test="monitorRegistration != null">monitor_registration,</if>
|
<if test="archivesRate != null">archives_rate,</if>
|
<if test="siteOnline != null">site_online,</if>
|
<if test="videoAvailable != null">video_available,</if>
|
<if test="ministrySiteOnline != null">ministry_site_online,</if>
|
<if test="ministryVideoAvailable != null">ministry_video_available,</if>
|
<if test="keySiteOnline != null">key_site_online,</if>
|
<if test="keyVideoAvailable != null">key_video_available,</if>
|
<if test="keyAnnotationAccuracy != null">key_annotation_accuracy,</if>
|
<if test="keyTimingAccuracy != null">key_timing_accuracy,</if>
|
<if test="keyCommandImageOnline != null">key_command_image_online,</if>
|
<if test="imageResourceSecurity != null">image_resource_security,</if>
|
</trim>
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<if test="deptId != null">#{deptId},</if>
|
<if test="createTime != null">#{createTime},</if>
|
<if test="examineTag != null">#{examineTag},</if>
|
<if test="platformOnline != null">#{platformOnline},</if>
|
<if test="monitorQualification != null">#{monitorQualification},</if>
|
<if test="monitorRegistration != null">#{monitorRegistration},</if>
|
<if test="archivesRate != null">#{archivesRate},</if>
|
<if test="siteOnline != null">#{siteOnline},</if>
|
<if test="videoAvailable != null">#{videoAvailable},</if>
|
<if test="ministrySiteOnline != null">#{ministrySiteOnline},</if>
|
<if test="ministryVideoAvailable != null">#{ministryVideoAvailable},</if>
|
<if test="keySiteOnline != null">#{keySiteOnline},</if>
|
<if test="keyVideoAvailable != null">#{keyVideoAvailable},</if>
|
<if test="keyAnnotationAccuracy != null">#{keyAnnotationAccuracy},</if>
|
<if test="keyTimingAccuracy != null">#{keyTimingAccuracy},</if>
|
<if test="keyCommandImageOnline != null">#{keyCommandImageOnline},</if>
|
<if test="imageResourceSecurity != null">#{imageResourceSecurity},</if>
|
</trim>
|
</insert>
|
|
<update id="updateCheckIndexVideo" >
|
update t_check_index_video
|
<trim prefix="SET" suffixOverrides=",">
|
<if test="deptId != null">dept_id = #{deptId},</if>
|
<if test="createTime != null">create_time = #{createTime},</if>
|
<if test="examineTag != null">examine_tag = #{examineTag},</if>
|
<if test="platformOnline != null">platform_online = #{platformOnline},</if>
|
<if test="monitorQualification != null">monitor_qualification = #{monitorQualification},</if>
|
<if test="monitorRegistration != null">monitor_registration = #{monitorRegistration},</if>
|
<if test="archivesRate != null">archives_rate = #{archivesRate},</if>
|
<if test="siteOnline != null">site_online = #{siteOnline},</if>
|
<if test="videoAvailable != null">video_available = #{videoAvailable},</if>
|
<if test="ministrySiteOnline != null">ministry_site_online = #{ministrySiteOnline},</if>
|
<if test="ministryVideoAvailable != null">ministry_video_available = #{ministryVideoAvailable},</if>
|
<if test="keySiteOnline != null">key_site_online = #{keySiteOnline},</if>
|
<if test="keyVideoAvailable != null">key_video_available = #{keyVideoAvailable},</if>
|
<if test="keyAnnotationAccuracy != null">key_annotation_accuracy = #{keyAnnotationAccuracy},</if>
|
<if test="keyTimingAccuracy != null">key_timing_accuracy = #{keyTimingAccuracy},</if>
|
<if test="keyCommandImageOnline != null">key_command_image_online = #{keyCommandImageOnline},</if>
|
<if test="imageResourceSecurity != null">image_resource_security = #{imageResourceSecurity},</if>
|
</trim>
|
where id = #{id}
|
</update>
|
|
<delete id="deleteCheckIndexVideoById" >
|
delete from t_check_index_video where id = #{id}
|
</delete>
|
|
<delete id="deleteCheckIndexVideoByIds" >
|
delete from t_check_index_video where id in
|
<foreach item="id" collection="array" open="(" separator="," close=")">
|
#{id}
|
</foreach>
|
</delete>
|
|
<select id="selectToday" resultType="com.ycl.platform.domain.entity.CheckIndexVideo">
|
select * from t_check_index_video where DATE(create_time) = #{today}
|
</select>
|
|
<select id="dashboard" resultType="com.ycl.platform.domain.entity.CheckIndexVideo">
|
SELECT
|
IFNULL(ROUND(AVG(platform_online * 100), 0), 0) AS platform_online,
|
IFNULL(ROUND(AVG(monitor_qualification * 100), 0), 0) AS monitor_qualification,
|
IFNULL(ROUND(AVG(monitor_registration * 100), 0), 0) AS monitor_registration,
|
IFNULL(ROUND(AVG(archives_rate * 100), 0), 0) AS archives_rate,
|
IFNULL(ROUND(AVG(site_online * 100), 0), 0) AS site_online,
|
IFNULL(ROUND(AVG(video_available * 100), 0), 0) AS video_available,
|
IFNULL(ROUND(AVG(ministry_site_online * 100), 0), 0) AS ministry_site_online,
|
IFNULL(ROUND(AVG(ministry_video_available * 100), 0), 0) AS ministry_video_available,
|
IFNULL(ROUND(AVG(key_site_online * 100), 0), 0) AS key_site_online,
|
IFNULL(ROUND(AVG(key_video_available * 100), 0), 0) AS key_video_available,
|
IFNULL(ROUND(AVG(key_annotation_accuracy * 100), 0), 0) AS key_annotation_accuracy,
|
IFNULL(ROUND(AVG(key_timing_accuracy * 100), 0), 0) AS key_timing_accuracy,
|
IFNULL(ROUND(AVG(key_command_image_online * 100), 0), 0) AS key_command_image_online,
|
IFNULL(ROUND(AVG(image_resource_security * 100), 0), 0) AS image_resource_security
|
FROM
|
t_check_index_video
|
<where>
|
<if test="deptId != null">
|
AND dept_id = #{deptId}
|
</if>
|
<if test="dataScope == 1">
|
AND examine_tag = 1
|
</if>
|
</where>
|
ORDER BY
|
create_time DESC
|
<if test="deptId == null">
|
LIMIT 7
|
</if>
|
<if test="deptId != null">
|
LIMIT 1
|
</if>
|
</select>
|
|
<select id="selectAndDeptName" resultType="com.ycl.platform.domain.entity.CheckIndexVideo">
|
WITH temp AS (
|
SELECT
|
r.id,
|
r.dept_id,
|
r.platform_online,
|
r.monitor_qualification,
|
d.area,
|
ROW_NUMBER() OVER(PARTITION BY r.dept_id ORDER BY r.create_time DESC) AS rn
|
FROM
|
t_check_index_video r
|
JOIN
|
sys_dept d ON r.dept_id = d.dept_id
|
)
|
SELECT
|
id,
|
dept_id,
|
area as deptName,
|
platform_online,
|
monitor_qualification
|
FROM
|
temp
|
WHERE
|
rn = 1;
|
</select>
|
|
<select id="selectLastOneByDept" resultType="com.ycl.platform.domain.dto.ImageResourceDTO">
|
WITH temp AS (
|
SELECT
|
image_resource_security AS imageResourceSecurity,
|
dept_id AS deptId,
|
ROW_NUMBER() OVER(PARTITION BY dept_id ORDER BY create_time DESC, image_resource_security DESC) AS num
|
FROM
|
t_check_index_video
|
)
|
SELECT deptId, imageResourceSecurity FROM temp WHERE num = 1;
|
</select>
|
</mapper>
|