package com.ssm.manage.service;

import com.github.pagehelper.PageInfo;
import com.ssm.core.service.BaseService;
import com.ssm.manage.entity.BaseGrouponCard;
import com.ssm.manage.entity.SmsException;
import com.ssm.manage.query.BaseGrouponCardRequest;
import com.ssm.manage.response.BaseGrouponCardResponse;
import com.ssm.manage.response.RechargeTurnCoursesResponse;

import java.io.IOException;
import java.util.Date;
import java.util.List;

public interface SsmBaseGrouponCardService  extends BaseService<BaseGrouponCard> {
    PageInfo<BaseGrouponCardResponse> selectPage(BaseGrouponCardRequest baseGrouponCardRequest)throws SmsException;
    int add(BaseGrouponCardRequest baseGrouponCardRequest,String key) throws SmsException;
    int update(BaseGrouponCardRequest baseGrouponCardRequest,String key) throws SmsException, IOException;
    int updateState(BaseGrouponCardRequest baseGrouponCardRequest,String key) throws SmsException;
    int delete(BaseGrouponCardRequest baseGrouponCardRequest) throws SmsException;

    //算业绩提成
    List<BaseGrouponCardResponse> selectDates(Long storeId, String date);
    List<BaseGrouponCard> selectFKJ(BaseGrouponCard baseGrouponCard);
    List<BaseGrouponCard> selectFKJByDate(BaseGrouponCard baseGrouponCard);
    //重算业绩
    List<BaseGrouponCard> selectDateschia(Long StoreId, Date startDate, Date endDate);

    List<BaseGrouponCard> selectNew(List<Long> baseGrouponCard);

    String sendSms(BaseGrouponCardRequest baseGrouponCardRequest, String key) throws SmsException;

    String sendSmsMemberPhone(BaseGrouponCardRequest baseGrouponCardRequest, String key)throws SmsException;
}
