package com.kamco.cd.kamcoback.postgres.repository.log;

import com.kamco.cd.kamcoback.log.dto.AuditLogDto;
import java.time.LocalDate;
import org.springframework.data.domain.Page;

public interface AuditLogRepositoryCustom {

  Page<AuditLogDto.DailyAuditList> findLogByDaily(
      AuditLogDto.searchReq searchReq, LocalDate startDate, LocalDate endDate);

  Page<AuditLogDto.MenuAuditList> findLogByMenu(
      AuditLogDto.searchReq searchReq, String searchValue);

  Page<AuditLogDto.UserAuditList> findLogByAccount(
      AuditLogDto.searchReq searchReq, String searchValue);

  Page<AuditLogDto.DailyDetail> findLogByDailyResult(
      AuditLogDto.searchReq searchReq, LocalDate logDate);

  Page<AuditLogDto.MenuDetail> findLogByMenuResult(AuditLogDto.searchReq searchReq, String menuId);

  Page<AuditLogDto.UserDetail> findLogByAccountResult(
      AuditLogDto.searchReq searchReq, Long accountId);
}
