package com.iformall.service;

import com.github.pagehelper.PageInfo;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxCoupon;
import com.iformall.domain.po.WxOrder;
import com.iformall.domain.po.WxOrderGroup;
import com.iformall.domain.vo.WxOrderGroupMarketing;

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

/**
 * @author gongbiao
 */
public interface WxOrderGroupService {

    void createOrderGroup(WxOrder order, WxCoupon wxCoupon);

    ResultData queryRemainOne(WxOrderGroup wxOrderGroup, Long userId);

    PageInfo<Map<String, Object>> queryOrderGroup(WxOrder wxOrder, Integer pageNum, Integer pageSize);

    ResultData toOrderGroup(WxOrderGroup wxOrderGroup);

    ResultData queryOrderGroupStatus(WxOrderGroup wxOrderGroup);

    ResultData queryAttendStatus(WxOrderGroup wxOrderGroup);

    void updateGroupStatus(WxOrderGroup wxOrderGroup);

    List<WxOrderGroup> findList(WxOrderGroup group);

    PageInfo<WxOrderGroupMarketing> queryOrderGroupMarketingList(WxOrderGroupMarketing marketing, Integer pageNum, Integer pageSize);

}
