package nccloud.itf.sscivm.ivsale.service;

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

import nc.ui.querytemplate.querytree.IQueryScheme;
import nc.vo.bd.material.measdoc.MeasdocVO;
import nc.vo.pub.BusinessException;
import nc.vo.pub.lang.UFDouble;
import nc.vo.sscivm.ivsale.IVApplicationAggVO;
import nc.vo.sscivm.ivsale.IVApplicationHeadVO;
import nc.vo.sscivm.ivsale.IVApplogVO;

public interface IVApplicationQueryService {
    IVApplicationAggVO queryByPK(String var1) throws BusinessException;

    IVApplicationAggVO queryByPK(String var1, boolean var2) throws BusinessException;

    IVApplicationAggVO[] queryAggVOsByPks(String[] var1) throws BusinessException;

    IVApplicationAggVO[] queryAggVOsByPks(String[] var1, boolean var2) throws BusinessException;

    List<IVApplicationHeadVO> queryHeadVOsByPks(String[] var1, Boolean var2) throws BusinessException;

    List<IVApplicationHeadVO> queryHeadVOsByPks(String[] var1) throws BusinessException;

    IVApplicationAggVO[] queryAggVOsByCondition(String var1) throws BusinessException;

    Map<String, List<String>> queryApplicationPksBySchema(IQueryScheme var1, String var2, Boolean var3) throws BusinessException;

    List<IVApplicationHeadVO> queryApplicationsBySchema(IQueryScheme var1, String var2, String var3, Boolean var4) throws BusinessException;

    List<IVApplicationHeadVO> queryApplicationsBySchema(IQueryScheme var1, String var2, String var3, Boolean var4, Boolean var5) throws BusinessException;

    String getDefaultOrgUnit() throws Exception;

    MeasdocVO[] queryMeasdocByPk(String var1) throws BusinessException;

    UFDouble queryTaxRateByMaterialPK(String var1) throws BusinessException;

    IVApplicationHeadVO[] queryHeadVOsByFpdmFphm(String var1, String var2) throws BusinessException;

    List<IVApplogVO> queryByInvoiceNumberAndAggPK(String[] pks, String[] invoiceDate, String[] invoiceNums) throws BusinessException;
}
