package com.hai.service;


import com.hai.entity.HighActivityPartakeRule;

import java.util.List;
import java.util.Map;

/**
 * 活动参与规则
 * @author hurui
 */
public interface HighActivityPartakeRuleService {

    /**
     *  编辑活动规则
     * @param partakeRule 参与规则
     */
    void editRule(HighActivityPartakeRule partakeRule);

    /**
     * 查询详情
     * @param activityId 活动id
     * @param partakeMode 参与方式
     * @param productType  产品类型
     * @param productId    产品id
     * @return
     */
    HighActivityPartakeRule getDetail(Long activityId,Integer partakeMode,Integer productType,Long productId);

    /**
     * 根据活动id 查询规则列表
     * @param activityId 活动信息
     * @return
     */
    List<HighActivityPartakeRule> getListByActivityId(Long activityId);

    /**
     * 查询商品列表
     * @param activityId 活动id
     * @param partakeMode 参与方式
     * @param productType 商品类型
     * @return
     */
    List<HighActivityPartakeRule> getProductList(Long activityId, Integer partakeMode,Integer productType);

    /**
     * 根据活动id 统计出 参与方式 和 商品类型
     * @param activityId
     * @return
     */
    List<Map<String, Object>> countRule(Long activityId);
}
