智慧保安后台管理-外网项目备份
钟日健
2026-06-01 62eb499b0c969f246d3245d1429a97da4de1ce28
src/main/java/org/springblade/modules/dispatcher/mapper/DispatcherMapper.xml
@@ -137,4 +137,53 @@
        update sys_dispatcher set end_time =#{endTime} where dispatcher_unit_id =#{disId}
    </update>
    <select id="getDispatcherStatisticsList"
            resultType="org.springblade.modules.dispatcher.vo.DispatcherStatistics">
<!--        SELECT-->
<!--            sd.dept_id,-->
<!--            bd.dept_name,-->
<!--            COUNT(*) total,-->
<!--            SUM( CASE WHEN bu.hold = '1' THEN 1 ELSE 0 END ) AS holdNum,-->
<!--            SUM( CASE WHEN bu.hold = '2' THEN 1 ELSE 0 END ) AS unholdNum-->
<!--        FROM-->
<!--            sys_dispatcher sd-->
<!--                LEFT JOIN blade_user bu ON bu.id = sd.user_ids-->
<!--                LEFT JOIN blade_dept bd ON bd.id = sd.dept_id-->
<!--        WHERE sd.`status` = 0-->
<!--        <if test="statistics.deptId != null and statistics.deptId !='' ">-->
<!--            AND sd.dept_id = #{statistics.deptId}-->
<!--        </if>-->
<!--        GROUP BY-->
<!--            sd.dept_id,-->
<!--            bd.dept_name-->
        SELECT
        sdu.id unitId,
        sdu.name unitName,
        COUNT(*) total,
        SUM( CASE WHEN bu.hold = '1' THEN 1 ELSE 0 END ) AS holdNum,
        SUM( CASE WHEN bu.hold = '2' THEN 1 ELSE 0 END ) AS unholdNum
        FROM
        sys_dispatcher sd
        LEFT JOIN blade_user bu ON bu.id = sd.user_ids
        LEFT JOIN sys_dispatcher_unit sdu ON sdu.id = sd.dispatcher_unit_id
        LEFT JOIN blade_dept bd ON bd.id = sd.dept_id
        WHERE
        sd.`status` = 0
        <if test="statistics.deptId != null and statistics.deptId !='' ">
            AND sd.dept_id = #{statistics.deptId}
        </if>
        GROUP BY
        sdu.id,
        sdu.name
    </select>
    <select id="selectDispatcherUnitExist"
            resultType="org.springblade.modules.dispatcher.entity.DispatcherUnit">
    SELECT * FROM sys_dispatcher_unit WHERE  name = #{dispatchUnitName} limit 1
    </select>
</mapper>