package com.viettel.campaign.repository.ccms_full;

import com.viettel.campaign.web.dto.ApParamDTO;
import com.viettel.campaign.web.dto.ResultDTO;
import com.viettel.campaign.web.dto.request_dto.CampaignRequestDTO;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface CampaignRepositoryCustom {

    ResultDTO search(CampaignRequestDTO requestDto);

    ResultDTO findByCampaignCode(CampaignRequestDTO requestDTO);

    String getMaxCampaignIndex();

    ResultDTO checkAllowStatusToPrepare(Long campaignId);

    //<editor-fold: hungtt>
    ResultDTO findCustomerListReallocation(CampaignRequestDTO dto);

    ResultDTO reallocationCustomer(CampaignRequestDTO dto);

    ResultDTO getListFieldsNotShow(CampaignRequestDTO dto);

    ResultDTO getListFieldsToShow(CampaignRequestDTO dto);

    ResultDTO getCampaignCustomerList(CampaignRequestDTO dto);

    ResultDTO getCustomerList(CampaignRequestDTO dto);

    ResultDTO getCustomerChoosenList(CampaignRequestDTO dto);

    ResultDTO getCampaignCustomerInformation(CampaignRequestDTO dto);

    ResultDTO getCustomerListInformation(CampaignRequestDTO dto);

    List<ApParamDTO> getConnectStatus(Long companySiteId);
    //</editor-fold>
}
