package com.sundot.airport.ledger.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sundot.airport.ledger.domain.LedgerUnsafeEvent;
import com.sundot.airport.ledger.domain.vo.CountQueryReqVO;
import com.sundot.airport.ledger.domain.vo.UnsafeItemVO;
import com.sundot.airport.ledger.domain.vo.UnsafePositionVO;
import com.sundot.airport.ledger.domain.vo.UnsafeTypeVO;

/**
 * 不安全事件记录Mapper接口
 */
public interface LedgerUnsafeEventMapper extends BaseMapper<LedgerUnsafeEvent> {
    List<LedgerUnsafeEvent> selectList(LedgerUnsafeEvent query);

    int updateSyncFlag();

    /**
     * 功能描述：不安全事件物品分布
     *
     * @param query 查询参数
     * @return List<UnsafeItemVO>
     * @method countSeizureStatsItem
     * @author PanHu Sun
     * @date 2026/5/20 16:38
     */
    List<UnsafeItemVO> countSeizureStatsItem(CountQueryReqVO query);

    /**
     * 功能描述：不安全事件物品分布
     *
     * @param query 统计查询参数
     * @return List<UnsafeTypeVO>
     * @method countSeizureStatsType
     * @author PanHu Sun
     * @date 2026/5/20 17:10
     */
    List<UnsafeTypeVO> countSeizureStatsType(CountQueryReqVO query);

    /**
     * 功能描述：不安全事件岗位分布
     *
     * @param query 统计查询参数
     * @return List<UnsafePositionVO>
     * @method countSeizureStatsPost
     * @author PanHu Sun
     * @date 2026/5/20 17:21
     */
    List<UnsafePositionVO> countSeizureStatsPost(CountQueryReqVO query);
}
