package com.crm.manager.service;

import com.crm.manager.dto.export.SalesRewardStatisticsExportDto;
import com.crm.rely.backend.core.dto.base.ResultWithPagerDto;
import com.crm.rely.backend.core.dto.sales.SalesRewardActivityDto;
import com.crm.rely.backend.core.dto.sales.SalesRewardStatisticsDto;
import com.crm.rely.backend.core.entity.base.SingleLongEntity;
import com.crm.rely.backend.core.entity.custom.info.InfoEntity;
import com.crm.rely.backend.core.entity.sales.SelesRewardActivityEntity;
import com.crm.rely.backend.core.entity.sales.SelesRewardStatisticsEntity;

import java.util.Date;
import java.util.List;

public interface SelesRewardService {

    ResultWithPagerDto<List<SalesRewardStatisticsDto>> salesRewardStatistics(SelesRewardStatisticsEntity entity,
                                                                             InfoEntity infoEntity) throws Exception;

    List<SalesRewardStatisticsExportDto> searcherListExport(SelesRewardStatisticsEntity entity) throws Exception;

    ResultWithPagerDto<List<SalesRewardActivityDto>> searchPageList(SelesRewardActivityEntity entity) throws Exception;

    void deductionAmount(SingleLongEntity entity) throws Exception;

    void salesRewardTask() throws Exception;

    void salesRewardTask(Date newTime) throws Exception;

    void salesRewardStatisticsTask() throws Exception;


}
