package com.eksad.masterdata.repository;

import com.eksad.ddms.common.util.status.DataStatus;
import com.eksad.masterdata.domain.CustomerAttendee;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

public interface CustomerAttendeeRepository extends GenericRepository<CustomerAttendee> {
    List<CustomerAttendee> findAllByCustomerAttendeeStatusOrderByIdAsc(DataStatus customerAttendeeStatus);

    CustomerAttendee findOneByCustomerAttendeeID(String customerAttendeeID);

    Page<CustomerAttendee> findAllByCustomerAttendeeStatus(DataStatus dataStatus, Pageable pageable);

    Page<CustomerAttendee> findAllByDealerIDAndCustomerAttendeeStatus(String dealerid, DataStatus dataStatus, Pageable pageable);

    Page<CustomerAttendee> findAllByCustomerAttendeeStatusAndCustomerNameContainingIgnoreCase(DataStatus dataStatus, String customerName, Pageable pageable);

    Page<CustomerAttendee> findAllByCustomerAttendeeStatusAndSexIDContainingIgnoreCase(DataStatus dataStatus, String sexID, Pageable pageable);

    Page<CustomerAttendee> findAllByCustomerAttendeeStatusAndNoKtpContainingIgnoreCase(DataStatus dataStatus, String noKtp, Pageable pageable);

    Page<CustomerAttendee> findAllByCustomerAttendeeStatusAndPhoneContainingIgnoreCase(DataStatus dataStatus, String phone, Pageable pageable);
}