| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212 | 
							- <?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.xunmei.iot.mapper.IotDvrChannelMapper">
 
-     <resultMap id="diagnosisDetailMap" type="com.xunmei.iot.vo.videoDiagnosis.VideoDiagnosisWebVo">
 
-         <result column="hostName" property="hostName"></result>
 
-         <result column="channelName" property="channelName"></result>
 
-         <result column="channelIp" property="channelIp"></result>
 
-         <association property="quality" javaType="com.xunmei.iot.vo.videoDiagnosis.VideoDiagnosisQualityVo">
 
-             <result column="quality_update_time" property="updateTime"></result>
 
-             <result column="quality_signal_lost" property="signalLost"></result>
 
-             <result column="quality_occlude" property="occlude"></result>
 
-             <result column="quality_brightness" property="brightness"></result>
 
-             <result column="quality_colorCast" property="colorCast"></result>
 
-             <result column="quality_snowflake" property="snowflake"></result>
 
-             <result column="quality_stripe" property="stripe"></result>
 
-             <result column="quality_contrast" property="contrast"></result>
 
-             <result column="quality_blurry" property="blurry"></result>
 
-             <result column="quality_image" property="image"></result>
 
-         </association>
 
-         <association property="integrity" javaType="com.xunmei.iot.vo.videoDiagnosis.VideoDiagnosisIntegrityVo">
 
-             <result column="integrity_record_date" property="recordDate"></result>
 
-             <result column="integrity_lose_duration" property="loseDuration"></result>
 
-             <result column="integrity_lose_span" property="loseSpan"></result>
 
-             <result column="integrity_check_span" property="checkSpan"></result>
 
-             <result column="integrity_update_time" property="updateTime"></result>
 
-         </association>
 
-         <association property="storage" javaType="com.xunmei.iot.vo.videoDiagnosis.VideoDiagnosisStorageVo">
 
-             <result column="storage_plan_days" property="planDays"></result>
 
-             <result column="storage_real_days" property="realDays"></result>
 
-             <result column="storage_earliest_video_time" property="earliestTime"></result>
 
-         </association>
 
-     </resultMap>
 
-     <resultMap id="appPageMap" type="com.xunmei.iot.vo.videoDiagnosis.VideoDiagnosisAppPageVo">
 
-         <result column="equipment_code" property="hostCode"></result>
 
-         <result column="equipment_name" property="hostName"></result>
 
-         <result column="org_name" property="orgName"></result>
 
-         <result column="state" property="state"></result>
 
-         <collection property="channels" ofType="com.xunmei.iot.vo.videoDiagnosis.VideoDiagnosisAppPageChannelVo"
 
-                     column="equipmentCode=equipment_code,state=state"
 
-                     select="selectAppChannels">
 
-             <result column="channel_code" property="channelCode"></result>
 
-             <result column="channel_name" property="channelName"></result>
 
-             <result column="state" property="state"></result>
 
-         </collection>
 
-     </resultMap>
 
-     <select id="selectPage" resultType="com.xunmei.iot.vo.videoDiagnosis.VideoDiagnosisWebPageVo">
 
-         SELECT DISTINCT
 
-         c.id,
 
-         c.host_code,
 
-         c.channel_code,
 
-         c.org_name,
 
-         o.affiliated_area,
 
-         o.affiliated_bank,
 
-         c.channel_name,
 
-         c.channel_addr as channelIP,
 
-         vic.lose_duration,
 
-         vdc.plan_days,
 
-         vdc.real_days,
 
-         if(vdr.id is
 
-         null,null,if(vdr.signal_lost+vdr.occlude+vdr.brightness+vdr.color_cast+vdr.snowflake+vdr.stripe+vdr.contrast+vdr.blurry>=1,1,0))
 
-         as quality
 
-         from iot_dvr_channel c
 
-         INNER JOIN iot_device d on c.host_code=d.equipment_code
 
-         inner  join sys_org o on c.org_id =o.id and o.deleted=0 and o.is_lock='0'
 
-         left JOIN mediator_video_days_check vdc on c.host_code=vdc.equipment_code and c.channel_code=vdc.channel_code
 
-         left JOIN mediator_video_integrity_check vic on c.host_code=vic.equipment_code and
 
-         c.channel_code=vic.channel_code
 
-         left JOIN mediator_video_diagnosis_record vdr on c.host_code=vdr.equipment_code and
 
-         c.channel_code=vdr.channel_code
 
-         where c.deleted=0 and d.deleted=0
 
-         <if test="pageDto.checkSub==true">
 
-             and c.org_path like concat(#{orgPath},"%")
 
-         </if>
 
-         <if test="pageDto.checkSub==false">
 
-             and c.org_id = #{pageDto.orgId}
 
-         </if>
 
-         <if test="pageDto.hostName!=null and pageDto.hostName!=''">
 
-             and d.equipment_name like concat('%', #{pageDto.hostName},'%')
 
-         </if>
 
-         <if test="pageDto.channelName!=null and pageDto.channelName!=''">
 
-             and c.channel_name like concat('%', #{pageDto.channelName},'%')
 
-         </if>
 
-         <if test="pageDto.integrityState!=null">
 
-             and vic.status=#{pageDto.integrityState}
 
-         </if>
 
-         <if test="pageDto.daysState!=null">
 
-             and vdc.status=#{pageDto.daysState}
 
-         </if>
 
-         <if test="pageDto.diagnosisState!=null">
 
-             and vdr.is_alarm=#{pageDto.diagnosisState}
 
-         </if>
 
-         <!--        <if test="pageDto.status !=null">-->
 
-         <!--            and dhd.`status` = #{pageDto.status}-->
 
-         <!--        </if>-->
 
-     </select>
 
-     <select id="diagnosisDetail" resultMap="diagnosisDetailMap">
 
-         SELECT d.equipment_name        as hostName,
 
-                c.channel_name          as channelName,
 
-                c.channel_addr          as channelIp,
 
-                vdr.update_time         as quality_update_time,
 
-                vdr.signal_lost         as quality_signal_lost,
 
-                vdr.occlude             as quality_occlude,
 
-                vdr.brightness          as quality_brightness,
 
-                vdr.color_cast          as quality_colorCast,
 
-                vdr.snowflake           as quality_snowflake,
 
-                vdr.stripe              as quality_stripe,
 
-                vdr.contrast            as quality_contrast,
 
-                vdr.blurry              as quality_blurry,
 
-                vdr.img_url             as quality_image,
 
-                vic.record_date         as integrity_record_date,
 
-                vic.lose_duration       as integrity_lose_duration,
 
-                vic.lose_span           as integrity_lose_span,
 
-                vic.check_span          as integrity_check_span,
 
-                vic.update_time         as integrity_update_time,
 
-                vdc.plan_days           as storage_plan_days,
 
-                vdc.real_days           as storage_real_days,
 
-                vdc.earliest_video_time as storage_earliest_video_time
 
-         FROM iot_dvr_channel c
 
-                  INNER JOIN iot_device d ON c.host_code = d.equipment_code
 
-                  LEFT JOIN mediator_video_days_check vdc
 
-                            ON c.host_code = vdc.equipment_code AND c.channel_code = vdc.channel_code
 
-                  LEFT JOIN mediator_video_integrity_check vic
 
-                            ON c.host_code = vic.equipment_code AND c.channel_code = vic.channel_code
 
-                  LEFT JOIN mediator_video_diagnosis_record vdr
 
-                            ON c.host_code = vdr.equipment_code AND c.channel_code = vdr.channel_code
 
-         WHERE c.host_code = #{hostCode}
 
-           and c.channel_code = #{channelCode}
 
-     </select>
 
-     <select id="selectAppChannels" resultType="com.xunmei.iot.vo.videoDiagnosis.VideoDiagnosisAppPageChannelVo">
 
-         select dc.channel_code,
 
-         dc.channel_name,
 
-         if(vdc.status=0 and vic.status=0 and vdr.is_alarm=0,0,if(vdc.status =1 or vic.status>0 or vdr.is_alarm=1,1,2))
 
-         as state
 
-         FROM iot_dvr_channel dc
 
-         LEFT JOIN mediator_video_days_check vdc on dc.host_code=vdc.equipment_code and dc.channel_code
 
-         =vdc.channel_code
 
-         LEFT JOIN mediator_video_integrity_check vic on dc.host_code=vic.equipment_code and dc.channel_code
 
-         =vic.channel_code
 
-         LEFT JOIN mediator_video_diagnosis_record vdr on dc.host_code=vdr.equipment_code and dc.channel_code
 
-         =vdr.channel_code
 
-         where dc.host_code=#{equipmentCode} and dc.deleted=0
 
-         <if test="state==0">
 
-             and (vdc.`status`=0 or vic.`status`=0 or vdr.is_alarm=0)
 
-         </if>
 
-         <if test="state==1">
 
-             and (vdc.`status`=1 or vic.`status`>0 or vdr.is_alarm=1)
 
-         </if>
 
-         <if test="state==2">
 
-             and (vdc.`status` is null or vic.`status` is null or vdr.is_alarm is null)
 
-         </if>
 
-         order by dc.channel_code asc
 
-     </select>
 
-     <select id="selectAppPage" resultMap="appPageMap">
 
-         SELECT equipment_code,
 
-         equipment_name,
 
-         org_name,
 
-         #{pageDto.state} as state
 
-         from iot_device
 
-         WHERE category_id = #{pageDto.categoryId}
 
-         <if test="pageDto.checkSub==true">
 
-             and org_path like concat(#{orgPath}, '%')
 
-         </if>
 
-         <if test="pageDto.checkSub==false">
 
-             and org_id=#{pageDto.orgId}
 
-         </if>
 
-         and deleted=0
 
-         <if test="pageDto.state!=null">
 
-             and equipment_code in (
 
-             SELECT dc.host_code
 
-             FROM iot_dvr_channel dc
 
-             LEFT JOIN mediator_video_days_check vdc on dc.host_code=vdc.equipment_code and dc.channel_code
 
-             =vdc.channel_code
 
-             LEFT JOIN mediator_video_integrity_check vic on dc.host_code=vic.equipment_code and dc.channel_code
 
-             =vic.channel_code
 
-             LEFT JOIN mediator_video_diagnosis_record vdr on dc.host_code=vdr.equipment_code and dc.channel_code
 
-             =vdr.channel_code
 
-             WHERE dc.deleted=0
 
-             <if test="pageDto.state==0">
 
-                 and (vdc.`status`=0 and vic.`status`=0 and vdr.is_alarm=0)
 
-             </if>
 
-             <if test="pageDto.state==1">
 
-                 and (vdc.`status`=1 or vic.`status`>0 or vdr.is_alarm=1)
 
-             </if>
 
-             <if test="pageDto.state==2">
 
-                 and (vdc.`status` is null or vic.`status` is null or vdr.is_alarm is null)
 
-             </if>
 
-             <if test="pageDto.checkSub==true">
 
-                 and dc.org_path like concat(#{orgPath}, '%')
 
-             </if>
 
-             <if test="pageDto.checkSub==false">
 
-                 and dc.org_id=#{pageDto.orgId}
 
-             </if>
 
-             GROUP BY dc.host_code
 
-             )
 
-         </if>
 
-     </select>
 
-     <select id="selectBadge" resultType="java.lang.Integer">
 
-         SELECT sum(vdc.`status` > 0 or vic.`status` > 0 or vdc.`status` > 0) as count
 
-         FROM iot_dvr_channel dc
 
-                  LEFT JOIN mediator_video_days_check vdc
 
-                            on vdc.equipment_code = dc.host_code and vdc.channel_code = dc.channel_code
 
-                  LEFT JOIN mediator_video_integrity_check vic
 
-                            on vic.equipment_code = dc.host_code and vic.channel_code = dc.channel_code
 
-                  LEFT JOIN mediator_video_diagnosis_record vdr
 
-                            on vdr.equipment_code = dc.host_code and vdr.channel_code = dc.channel_code
 
-         WHERE dc.org_id = #{orgId}
 
-           AND dc.deleted = 0
 
-     </select>
 
- </mapper>
 
 
  |