fuliqi
2024-08-19 e3daa347df3ce7f65444f2b357b229e42c0e912d
ycl-server/src/main/resources/mapper/zgyw/CheckIndexCarMapper.xml
@@ -3,7 +3,7 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ycl.platform.mapper.CheckIndexCarMapper">
    <resultMap type="com.ycl.platform.domain.entity.CheckIndexCar" id="CheckIndexCarResult">
        <result property="id"    column="id"    />
        <result property="deptId"    column="dept_id"    />
@@ -28,10 +28,11 @@
    <select id="selectCheckIndexCarList"  resultMap="CheckIndexCarResult">
        select tcic.*,sd.dept_name
        from t_check_index_car tcic left join sys_dept sd on tcic.dept_id = sd.dept_id
        <where>
            <if test="deptId != null "> and dept_id = #{deptId}</if>
        <where>
            <if test="deptId != null "> and tcic.dept_id = #{deptId}</if>
            <if test="examineTag != null "> and examine_tag = #{examineTag}</if>
            <if test="date != null "> and  date_format(tcic.create_time,'%Y-%m') = #{date}</if>
            <if test="day != null "> and  date(tcic.create_time) = #{day}</if>
            <if test="viewConnectStability != null "> and view_connect_stability = #{viewConnectStability}</if>
            <if test="siteOnline != null "> and site_online = #{siteOnline}</if>
            <if test="deviceDirectoryConsistent != null "> and device_directory_consistent = #{deviceDirectoryConsistent}</if>
@@ -42,14 +43,19 @@
            <if test="vehicleUploadTimeliness != null "> and vehicle_upload_timeliness = #{vehicleUploadTimeliness}</if>
            <if test="vehicleUrlAvailability != null "> and vehicle_url_availability = #{vehicleUrlAvailability}</if>
            <if test="vehiclePictureAvailability != null "> and vehicle_picture_availability = #{vehiclePictureAvailability}</if>
            <if test="deptIds != null ">and tcic.dept_id in
                <foreach collection="deptIds" separator="," open="(" close=")" item="deptId">
                    #{deptId}
                </foreach>
            </if>
        </where>
    </select>
    <select id="selectCheckIndexCarById" resultMap="CheckIndexCarResult">
        <include refid="selectCheckIndexCarVo"/>
        where id = #{id}
    </select>
    <insert id="insertCheckIndexCar"  useGeneratedKeys="true" keyProperty="id">
        insert into t_check_index_car
        <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -109,9 +115,45 @@
    </delete>
    <delete id="deleteCheckIndexCarByIds">
        delete from t_check_index_car where id in
        delete from t_check_index_car where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
</mapper>
    <select id="selectToday" resultType="com.ycl.platform.domain.entity.CheckIndexCar">
        select * from t_check_index_car where DATE(create_time) = #{today}
    </select>
    <select id="dashboard" resultType="com.ycl.platform.domain.entity.CheckIndexCar">
        SELECT
            IFNULL(ROUND(AVG(view_connect_stability * 100), 2), 0) AS view_connect_stability,
            IFNULL(ROUND(AVG(site_online * 100), 2), 0) AS site_online,
            IFNULL(ROUND(AVG(device_directory_consistent * 100), 2), 0) AS device_directory_consistent,
            IFNULL(ROUND(AVG(vehicle_information_collection_accuracy * 100), 2), 0) AS vehicle_information_collection_accuracy,
            IFNULL(ROUND(AVG(vehicle_capture_integrity * 100), 2), 0) AS vehicle_capture_integrity,
            IFNULL(ROUND(AVG(vehicle_capture_accuracy * 100), 2), 0) AS vehicle_capture_accuracy,
            IFNULL(ROUND(AVG(vehicle_timing_accuracy * 100), 2), 0) AS vehicle_timing_accuracy,
            IFNULL(ROUND(AVG(vehicle_upload_timeliness * 100), 2), 0) AS vehicle_upload_timeliness,
            IFNULL(ROUND(AVG(vehicle_url_availability * 100), 2), 0) AS vehicle_url_availability,
            IFNULL(ROUND(AVG(vehicle_picture_availability * 100), 2), 0) AS vehicle_picture_availability
        FROM
            t_check_index_car
        <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>
</mapper>