// PatrolRecordMapper.java
package com.pm.patrol.mapper;

import java.util.List;
import com.pm.common.config.PageData;

/**
 * 巡更记录Mapper接口
 *
 * @author pm
 * @date 2025-06-03
 */
public interface PatrolRecordMapper {
    /**
     * 查询巡更记录
     */
    public PageData selectPatrolRecordById(Long id);

    /**
     * 查询巡更记录列表
     */
    public List<PageData> selectPatrolRecordList(PageData pd);

    /**
     * 新增巡更记录
     */
    public int insertPatrolRecord(PageData pd);

    /**
     * 修改巡更记录
     */
    public int updatePatrolRecord(PageData pd);

    /**
     * 删除巡更记录
     */
    public int deletePatrolRecordById(Long id);

    /**
     * 查询最近的巡更记录
     */
    public List<PageData> selectRecentPatrolRecords(PageData pd);

    /**
     * 获取今日巡更总数
     */
    public int getTodayPatrolCount(PageData pd);

    /**
     * 获取今日正常巡更数
     */
    public int getTodayNormalCount(PageData pd);

    /**
     * 获取今日异常巡更数
     */
    public int getTodayAbnormalCount(PageData pd);

    /**
     * 获取今日超时巡更数
     */
    public int getTodayTimeoutCount(PageData pd);

    /**
     * 获取活跃巡更人员
     */
    public List<PageData> getActivePersonnel(PageData pd);

    /**
     * 获取今日已巡更的点位数
     */
    public int getTodayPatrolledPoints(PageData pd);
}