package com.hfkj.service.group;

import com.hfkj.entity.*;

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

/**
 * @serviceName .java
 * @author Sum1Dream
 * @version 1.0.0
 * @Description // 团购套餐业务
 * @createTime 15:07 2023/10/24
 **/
public interface BsStoreGroupProductService {

    /**
     * @Author Sum1Dream
     * @Name insertStoreGroupContent
     * @Description // 新增团购内容
     * @Date 16:31 2023/10/23
     * @Param bsStoreImg
     * @return void
     */
    void insertStoreGroupContent(BsStoreGroupContent bsStoreGroupContent);

    /**
     * @Author Sum1Dream
     * @Name editStoreGroupContent
     * @Description // 编辑团购内容
     * @Date 16:31 2023/10/23
     * @Param bsStoreImg
     * @return void
     */
    void editStoreGroupContent(BsStoreGroupContent bsStoreGroupContent);

    /**
     * @Author Sum1Dream
     * @Name findStoreGroupContent
     * @Description // 根据id查询团购内容
     * @Date 16:31 2023/10/23
     * @Param id
     * @return com.hfkj.entity.BsStoreImg
     */
    BsStoreGroupContent findStoreGroupContent(Long id);

    /**
     * @Author Sum1Dream
     * @Name getStoreGroupContentByList
     * @Description // 查询团购列表
     * @Date 16:32 2023/10/23
     * @Param map
     * @return java.util.List<com.hfkj.entity.BsStoreImg>
     */
    List<BsStoreGroupContent> getStoreGroupContentByList(Map<String , Object> map);

    /**
     * @Author Sum1Dream
     * @Name insertGroupDetail
     * @Description // 新增团购详情
     * @Date 16:31 2023/10/23
     * @Param bsStoreImg
     * @return void
     */
    void insertGroupDetail(BsStoreGroupDetail storeGroupDetail);

    /**
     * @Author Sum1Dream
     * @Name editGroupDetail
     * @Description // 编辑团购详情
     * @Date 16:31 2023/10/23
     * @Param bsStoreImg
     * @return void
     */
    void editGroupDetail(BsStoreGroupDetail storeGroupDetail);

    /**
     * @Author Sum1Dream
     * @Name findGroupDetail
     * @Description // 根据id查询团购详情
     * @Date 16:31 2023/10/23
     * @Param id
     * @return com.hfkj.entity.BsStoreImg
     */
    BsStoreGroupDetail findGroupDetail(Long id);

    BsStoreGroupDetail findGroupDetail(String productId , Long groupId);

    void deleteGroupDetail(Long id);

    /**
     * @Author Sum1Dream
     * @Name getGroupDetailByList
     * @Description // 查询团购详情列表
     * @Date 16:32 2023/10/23
     * @Param map
     * @return java.util.List<com.hfkj.entity.BsStoreImg>
     */
    List<BsStoreGroupDetail> getGroupDetailByList(Map<String , Object> map);

    /**
     * @Author Sum1Dream
     * @Name insertGroupServeRule
     * @Description // 新增团购规则详情
     * @Date 16:31 2023/10/23
     * @Param bsStoreImg
     * @return void
     */
    void insertGroupServeRule(BsStoreGroupServeRule storeGroupServeRule);

    /**
     * @Author Sum1Dream
     * @Name editGroupServeRule
     * @Description // 编辑团购规则
     * @Date 16:31 2023/10/23
     * @Param bsStoreImg
     * @return void
     */
    void editGroupServeRule(BsStoreGroupServeRule storeGroupServeRule);

    /**
     * @Author Sum1Dream
     * @Name findGroupServeRule
     * @Description // 根据id查询团购规则
     * @Date 16:31 2023/10/23
     * @Param id
     * @return com.hfkj.entity.BsStoreImg
     */
    BsStoreGroupServeRule findGroupServeRule(Long id);

    BsStoreGroupServeRule findGroupServeRuleByGroup(Long groupId);

    /**
     * @Author Sum1Dream
     * @Name getGroupServeRuleByList
     * @Description // 查询团购规则详情列表
     * @Date 16:32 2023/10/23
     * @Param map
     * @return java.util.List<com.hfkj.entity.BsStoreImg>
     */
    List<BsStoreGroupServeRule> getGroupServeRuleByList(Map<String , Object> map);


}
