package com.iformall.service;

import com.github.pagehelper.PageInfo;
import com.iformall.common.ResultData;
import com.iformall.domain.po.MallUserInfo;
import com.iformall.domain.po.WxBillSettle;
import com.iformall.domain.po.WxBillSettleBill;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * @author luozukai
 */
public interface WxBillSettleService {
	/**
     * 根据实体查询分页列表
     *
     * @param record
     * @return
     */
    PageInfo<WxBillSettle> listAsPage(WxBillSettle record, Integer pageIndex, Integer pageSize);

    /**
     * 根据Id获得实体
     *
     * @param id
     * @return
     */
    WxBillSettle getById(Long id,Integer filterSettleRecord);
    
    /**
     * 保存或更新实体
     *
     * @param record
     */
    ResultData saveOrUpdate(WxBillSettle record, MallUserInfo userInfo);

    void exportBill(HttpServletRequest request, HttpServletResponse response, WxBillSettle wxBillSettle);

    void downloadBill(HttpServletRequest request, HttpServletResponse response, WxBillSettle wxBillSettle);

    void updateFreezeOrStatus(List<WxBillSettleBill> billList, Integer freezeStatus, Integer status);
}
