package cn.com.poc.data_analyze.service;

import cn.com.poc.data_analyze.query.*;
import cn.com.yict.framemax.core.service.BaseService;
import cn.com.poc.data_analyze.entity.BizDataAnalyzePointRecordEntity;
import cn.com.yict.framemax.data.model.PagingInfo;

import java.util.List;

public interface BizDataAnalyzePointRecordService extends BaseService {

    BizDataAnalyzePointRecordEntity get(java.lang.Long id) throws Exception;

    List<BizDataAnalyzePointRecordEntity> findByExample(BizDataAnalyzePointRecordEntity example, PagingInfo pagingInfo) throws Exception;

    BizDataAnalyzePointRecordEntity save(BizDataAnalyzePointRecordEntity entity) throws Exception;

    BizDataAnalyzePointRecordEntity update(BizDataAnalyzePointRecordEntity entity) throws Exception;

    void deletedById(java.lang.Long id) throws Exception;

    List<PointsUsageQueryItem> pointsUsageQuery(PointsUsageQueryCondition condition, PagingInfo pagingInfo);

    List<ChannelPointsCountQueryItem> channelPointsCountQuery(ChannelPointsCountQueryCondition condition, PagingInfo pagingInfo);

    List<DataAnalyzePointRecordQueryItem> dataAnalyzePointRecordQuery(DataAnalyzePointRecordQueryCondition condition, PagingInfo pagingInfo);

    List<MemberPointUsageTrendQueryItem> memberPointUsageTrendQuery(MemberPointUsageTrendQueryCondition condition, PagingInfo pagingInfo);

    List<MemberPointUsageOverallQueryItem> memberPointUsageOverallQuery(MemberPointUsageOverallQueryCondition condition, PagingInfo pagingInfo);
}