package com.dxhy.erp.service;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.dxhy.common.service.MpBaseService;
import com.dxhy.common.util.pojo.Authorize;
import com.dxhy.common.util.pojo.GlobalInfo;
import com.dxhy.erp.entity.TdxRecordInvoice;

/**
 * @author dxhy
 */
public interface GatherService extends MpBaseService<TdxRecordInvoice> {

    /**
     * 待填
     * 
     * @param globalInfo
     * @param map
     * @param request
     * @param response
     * @param authorize
     * @return
     */
    String get(GlobalInfo globalInfo, Map<String, String> map, HttpServletRequest request, HttpServletResponse response,
        Authorize authorize);

    /**
     * 待填
     * 
     * @param globalInfo
     * @param map
     * @param request
     * @param response
     * @param authorize
     * @return
     */
    String getState(GlobalInfo globalInfo, Map<String, String> map, HttpServletRequest request,
        HttpServletResponse response, Authorize authorize);

    /**
     * 待填
     * 
     * @param globalInfo
     * @param map
     * @param request
     * @param response
     * @param authorize
     * @return
     */
    String getSingle(GlobalInfo globalInfo, Map<String, String> map, HttpServletRequest request,
        HttpServletResponse response, Authorize authorize);

    /**
     * 待填
     * 
     * @param globalInfo
     * @param map
     * @param request
     * @param response
     * @param authorize
     * @return
     */
    String getAuthResult(GlobalInfo globalInfo, Map<String, String> map, HttpServletRequest request,
        HttpServletResponse response, Authorize authorize);


    /**
     * 待填
     *
     * @param globalInfo
     * @param map
     * @param request
     * @param response
     * @param authorize
     * @return
     */
    String singleInvoiceChenck(GlobalInfo globalInfo, Map<String, String> map, HttpServletRequest request,
                     HttpServletResponse response, Authorize authorize);


    /**
     * 待填
     *
     * @param globalInfo
     * @param map
     * @param request
     * @param response
     * @param authorize
     * @return
     */
    String syncInvoiceInfo(GlobalInfo globalInfo, Map<String, String> map, HttpServletRequest request,
                               HttpServletResponse response, Authorize authorize);
}
