package com.inspect.patrol.mapper;

import com.inspect.patrol.domain.PatrolPresetPos;
import com.inspect.patrol.domain.PatrolPresetPosSlim;
import com.inspect.patrol.vo.CameraVo;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface PatrolPresetPosMapper {
    List<PatrolPresetPos> selectListByDeviceId(String deviceId);

    List<PatrolPresetPos> selectListByDeviceIds(List<String> deviceIds);

    PatrolPresetPos selectPatrolPresetPosByPresetPosId(String presetPosId);

    List<PatrolPresetPos> selectPatrolPresetPosByPatrolPointId(String patrolId);

    void deleteBasePresetByPresetPosId(Long presetPosId);

    List<PatrolPresetPos> selectPatrolPresetPosList(PatrolPresetPos patrolPresetPos);

    List<CameraVo> selectCameraByChannelType(String channelType);

    List<PatrolPresetPos> selectPresetCodeByChannelCode(PatrolPresetPos patrolPresetPos);

    PatrolPresetPosSlim selectPresetCodeSlimByPatrolPointId(PatrolPresetPosSlim patrolPresetPosSlim);

    int insertPatrolPresetPos(PatrolPresetPos patrolPresetPos);

    int updatePatrolPresetPos(PatrolPresetPos patrolPresetPos);

    int deletePatrolPresetPosByPresetPosId(String presetPosId);

    int deletePatrolPresetPosByPresetPosIds(Long[] presetPosIds);

    int deleteBasedataPresetByPresetPosIds(Long[] presetPosIds);

    List<PatrolPresetPos> selectPatrolPresetPosListByIds(Long[] ids);
}
