package com.iformall.service;

import com.iformall.common.ResultData;
import com.iformall.domain.vo.WxBillAll;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

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

    Map<String,Object> listAsPage(WxBillAll wxBillAll, Integer pageNum, Integer pageSize);

    List<Map<String,Object>> listBillOweAndWaitPay(WxBillAll wxBillAll);

    ResultData listBill(WxBillAll wxBillAll);

    void updateBill(Map<String,Object> bill);

    void exportBill(HttpServletRequest request, HttpServletResponse response, WxBillAll wxBillAll);

    Object getBillInfo(WxBillAll wxBillAll);

    Long hasOweBill(Long contractId,Integer type);

    /**
     * 发送待缴通知邮件
     */
    void sendWaitPayBillEmail();

    /**
     * 发送欠缴通知邮件
     */
    void sendOweBillForEmail();
}
