package ru.nbch.credit_tracker.mapper.signal;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import ru.nbch.credit_tracker.entities.dto.PhoneFidMap;
import ru.nbch.credit_tracker.entities.user_request.monitoring_request.Subject;

import java.util.List;

@Mapper
public interface PhoneFidMapMapper {

    void registerSubjects(@Param("subjects") List<Subject> subjects, @Param("packageId") Integer packageId);

    List<PhoneFidMap> findFullPhoneFidMap(@Param("packageId") Integer packageId, @Param("offset") int offset, @Param("limit") int limit);

    void updatePhoneFidMaps(@Param("subjects") List<PhoneFidMap> subjects);

    void updatePhoneFidMapsErrors(@Param("subjects") List<PhoneFidMap> subjects);

    PhoneFidMap findPhoneFidMapById(@Param("id") Integer packageId);

    boolean hasNonNullFids(@Param("packageId") Integer packageId);
}
