wl
2022-11-09 eb41baf336689cce9344e95c1bf1b0c702fc77d5
ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml
@@ -148,4 +148,85 @@
            </if>
        </where>
    </select>
    <select id="selectViolationPage" resultType="com.ycl.vo.casePool.QueryForViolationVO"
            parameterType="com.ycl.dto.caseHandler.QueryForViolationParam">
        SELECT
        t1.`code`,
        t1.alarm_time,
        t1.handling_opinion,
        CASE
        t1.event_source
        WHEN 1 THEN
        "视频巡查"
        WHEN 2 THEN
        "人工上报"
        END AS event_source,
        t1.site,
        CASE
        t1.state
        WHEN 7 THEN
        "待审核"
        WHEN 8 THEN
        "已审核"
        END AS state,
        t3.`name` as categoryName,
        t4.`name` AS typeName,
        t5.`name` as gradeName,
        t2.car_number,
        t6.region_name as communityName,
        t7.region_name as streetName,
        t8.url,
        t9.address
        FROM
        ums_base_case t1
        LEFT JOIN ums_violations t2 on t1.id=t2.id
        LEFT JOIN ums_data_dictionary t3 on t3.id=t2.category_id
        LEFT JOIN ums_data_dictionary t4 on t4.id=t2.type_id
        LEFT JOIN ums_data_dictionary t5 on t5.id=t2.grade_id
        LEFT JOIN ums_sccg_region t6 on t6.id=t1.community_id
        LEFT JOIN ums_sccg_region t7 on t7.id=t1.street_id
        LEFT JOIN ums_image_resources t8 on t8.belong_to_id=t1.id
        LEFT JOIN ums_video_point t9 on t9.id=t2.video_point_id
        <where>
            t1.state IN (7,8)
            <if test="queryForViolationParam.eventSource != null">
                and t1.event_source=#{queryForViolationParam.eventSource}
            </if>
            <if test="queryForViolationParam.categoryId != null">
                and t2.category_id=#{queryForViolationParam.categoryId}
            </if>
            <if test="queryForViolationParam.startTime != null and queryForViolationParam.startTime !='' and queryForViolationParam.endTime !=null and queryForViolationParam.endTime !=''">
                and t1.alarm_time between #{queryForViolationParam.startTime} and #{queryForViolationParam.endTime}
            </if>
            <if test="queryForViolationParam.code != null and queryForViolationParam.code != '' ">
                and t1.code like concat('%',#{queryForViolationParam.code},'%')
            </if>
            <if test=" queryForViolationParam.typeId!= null">
                and t2.type_id=#{v.typeId}
            </if>
            <if test="queryForViolationParam.gradeId != null">
                and t2.grade_id=#{queryForViolationParam.gradeId}
            </if>
            <if test="queryForViolationParam.streetId != null">
                and t1.street_id=#{queryForViolationParam.streetId}
            </if>
            <if test="queryForViolationParam.communityId != null">
                and t1.community_id=#{queryForViolationParam.communityId}
            </if>
            <if test="queryForViolationParam.state != null">
                and t1.state=#{queryForViolationParam.state}
            </if>
            <if test="queryForViolationParam.carNumber != null and  queryForViolationParam.carNumber!=''">
                and t1.car_umber like concat('%',#{queryForViolationParam.carNumber},'%')
            </if>
            <if test="queryForViolationParam.videoPointId != null">
                and t1.video_point_id=#{queryForViolationParam.videoPointId}
            </if>
            <if test="queryForViolationParam.handlingOpinion != null and queryForViolationParam.handlingOpinion !=''">
                and t1.handling_opinion like concat('%',#{queryForViolationParam.handlingOpinion},'%')
            </if>
        </where>
    </select>
</mapper>