package cn.superdesk.uniorder.dubbo.facade.order._leaveover;

import cn.superdesk.uniorder.common.rest.response.R;
import cn.superdesk.uniorder.dao.entity.sys.SysInvoice;
import cn.superdesk.uniorder.dto.vo.inv.ViewBackAccountManage;
import cn.superdesk.uniorder.dto.vo.inv.ViewInvoiceDetailsHead;
import cn.superdesk.uniorder.dto.vo.inv.ViewInvoiceDetailsList;
import cn.superdesk.uniorder.dto.vo.inv.ViewInvoiceManage;

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

public interface DubboSysInvoiceService {


	public List<SysInvoice> findAll(Map<String, Object> queryMap);

	public void addObj(SysInvoice t);

	public SysInvoice findById(Long id);

	public void updateObj(SysInvoice t);

	public void deleteObj(Long id);

	public R<List<ViewInvoiceManage>> findInvoiceManageViewPage(Map<String, Object> params, int pageNo, int pageSize);

	public R<List<ViewBackAccountManage>> getBackAccountManageData(Map<String, Object> params, int pageNo, int pageSize);

	public List<ViewBackAccountManage> getBackAccountManageList(Map<String, Object> params);

	public List<ViewBackAccountManage> getBackAccountDataRegisterData(Map<String, Object> params);

	public List<ViewInvoiceManage> findInvoiceManageList(Map<String, Object> params);

	public List<ViewInvoiceDetailsList> findInvoiceDetailsList(Map<String, Object> params);

	public List<ViewInvoiceDetailsHead> getInvoiceDetailByInvoiceId(Map<String, Object> params);

	public Integer mailTickRegister(Map mailTickRegisterMap, String operationStr);

	//确认回款
	//public Integer confirmBackAccount(Map mailTickRegisterMap,String token);	
	public Integer confirmBackAccount(List<Map> mailTickRegisterList, String token);

	//重新开票
	public Map<String, Object> reInvoiceRegister(String mdzId, String orderId);

	//导入发票
	public Map<String, Object> importDZExcel(List<Map<String, String>> list);
}
