package wenrgise.workflow.ejb.facade;

import java.rmi.RemoteException;
import java.sql.Timestamp;
import java.util.ArrayList;
import javax.ejb.CreateException;
import javax.ejb.EJBObject;
import wenrgise.common.bean.BaseHeaderBean;
import wenrgise.common.exception.EnrgiseApplicationException;
import wenrgise.common.exception.EnrgiseSystemException;
import wenrgise.common.utility.RecordMetaInfo;
import wenrgise.common.utility.UserInfo;
import wenrgise.common.vo.LovQueryVO;
import wenrgise.common.vo.LovVO;
import wenrgise.workflow.bean.WflAuthorizationBean;
import wenrgise.workflow.bean.WflDtlsHdrBean;
import wenrgise.workflow.core.WflDocumentInfo;
import wenrgise.workflow.core.WflStatus;
import wenrgise.workflow.vo.WflDOPGrpQVO;
import wenrgise.workflow.vo.WflDelegationQVO;
import wenrgise.workflow.vo.WflDocMstQVO;
import wenrgise.workflow.vo.WflDtlDocActivityMapQVO;
import wenrgise.workflow.vo.WflRouteDtlQVO;

public interface WorkFlowFacade2 extends EJBObject {
  WflStatus process(WflDocumentInfo paramWflDocumentInfo) throws RemoteException;
  
  WflAuthorizationBean canDo(WflDocumentInfo paramWflDocumentInfo) throws RemoteException;
  
  ArrayList getWorkListInfo(String paramString) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String getDocumentTypeId(String paramString) throws RemoteException;
  
  String getActivityId(String paramString) throws RemoteException;
  
  UserInfo getLoginUserInfo(String paramString1, String paramString2) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWflDocTypeHdrMetaInfo(WflDocMstQVO paramWflDocMstQVO, UserInfo paramUserInfo) throws RemoteException, CreateException, RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWflDocTypeHdrInfo(WflDocMstQVO paramWflDocMstQVO, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWflDocTypeAttrDtlMetaInfo(String paramString, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWflDocTypeAttrDtlInfo(String paramString, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWflDocTypeConditionsDtlMetaInfo(String paramString, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWflDocTypeConditionsDtl(String paramString, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String saveWflDocTypeMst(BaseHeaderBean paramBaseHeaderBean, Timestamp paramTimestamp1, String paramString1, String paramString2, boolean paramBoolean1, ArrayList paramArrayList, boolean paramBoolean2, Timestamp paramTimestamp2, UserInfo paramUserInfo) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflDocCodeLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getDtlDocTypeMetaInfo(String paramString, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getDtlDocTypeInfo(String paramString, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflDtlDocCodeLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWFLDtlDocActivityHdrMetaInfo(WflDtlDocActivityMapQVO paramWflDtlDocActivityMapQVO, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWFLDtlDocActivityHdrInfo(WflDtlDocActivityMapQVO paramWflDtlDocActivityMapQVO, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWFLDtlDocActivityDtlMetaInfo(String paramString, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWFLDtlDocActivityDtlInfo(String paramString, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String saveWflDtlDocActivityMst(BaseHeaderBean paramBaseHeaderBean, Timestamp paramTimestamp1, String paramString1, String paramString2, boolean paramBoolean1, ArrayList paramArrayList, boolean paramBoolean2, Timestamp paramTimestamp2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflMapCodeLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflDocCodeDtlLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflActCodeLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String saveWflActivityDtls(BaseHeaderBean paramBaseHeaderBean, Timestamp paramTimestamp1, String paramString1, String paramString2, boolean paramBoolean1, ArrayList paramArrayList, boolean paramBoolean2, Timestamp paramTimestamp2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWflActivityDtlMetaInfo(UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWflActivityDtlInfo(long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWFLRouteDtlMetaInfo(WflRouteDtlQVO paramWflRouteDtlQVO, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWFLRouteDtlInfo(WflRouteDtlQVO paramWflRouteDtlQVO, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWFLTransDtlMetaInfo(WflRouteDtlQVO paramWflRouteDtlQVO, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWFLTransDtlInfo(WflRouteDtlQVO paramWflRouteDtlQVO, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String saveWFLRouteDtl(BaseHeaderBean paramBaseHeaderBean, Timestamp paramTimestamp1, String paramString1, String paramString2, boolean paramBoolean1, ArrayList paramArrayList, boolean paramBoolean2, Timestamp paramTimestamp2, UserInfo paramUserInfo) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflDocDtlQLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflDocDtlIdNLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflActIdNLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflRouteDtlLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseSystemException, EnrgiseApplicationException;
  
  LovVO getWflConditionLOVData(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseSystemException, EnrgiseApplicationException;
  
  ArrayList getWflDOPGrpHdrInfo(WflDOPGrpQVO paramWflDOPGrpQVO, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWflDOPGrpHdrMetaInfo(WflDOPGrpQVO paramWflDOPGrpQVO, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String saveWflDOPGrp(BaseHeaderBean paramBaseHeaderBean, Timestamp paramTimestamp1, String paramString1, String paramString2, boolean paramBoolean1, ArrayList paramArrayList, boolean paramBoolean2, Timestamp paramTimestamp2, UserInfo paramUserInfo) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflDOPGrpCodeQLOV(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseSystemException, EnrgiseApplicationException;
  
  RecordMetaInfo getWflDOPGrpDtlMetaInfo(String paramString, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWflDOPGrpDtlInfo(String paramString, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getEmpNameLOVData(LovQueryVO paramLovQueryVO) throws RemoteException, EnrgiseSystemException, EnrgiseApplicationException;
  
  LovVO getWrkGroupLOVData(LovQueryVO paramLovQueryVO) throws RemoteException, EnrgiseSystemException, EnrgiseApplicationException;
  
  LovVO getClassCodeLOVData(LovQueryVO paramLovQueryVO) throws RemoteException, EnrgiseSystemException, EnrgiseApplicationException;
  
  String getRouteDtlId(WflDocumentInfo paramWflDocumentInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String getActivityCode(String paramString) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWflDelegationHdrMetaInfo(WflDelegationQVO paramWflDelegationQVO, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWflDelegationHdrInfo(WflDelegationQVO paramWflDelegationQVO, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  RecordMetaInfo getWflDelegationDtlMetaInfo(String paramString, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getWflDelegationDtlInfo(String paramString, long paramLong1, long paramLong2, UserInfo paramUserInfo) throws RemoteException, CreateException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String saveWflDelegation(BaseHeaderBean paramBaseHeaderBean, Timestamp paramTimestamp1, String paramString1, String paramString2, boolean paramBoolean1, ArrayList paramArrayList, boolean paramBoolean2, Timestamp paramTimestamp2, UserInfo paramUserInfo) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  LovVO getWflDtlDocTypeLOVdata(LovQueryVO paramLovQueryVO) throws RemoteException, CreateException, EnrgiseSystemException, EnrgiseApplicationException;
  
  WflDtlsHdrBean getWorkFlowDtlsInfo(String paramString) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  String closeWorkList(WflDtlsHdrBean paramWflDtlsHdrBean, Timestamp paramTimestamp1, ArrayList paramArrayList, Timestamp paramTimestamp2, UserInfo paramUserInfo) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
  
  ArrayList getDocHistDtl(String paramString1, String paramString2, String paramString3) throws RemoteException, EnrgiseApplicationException, EnrgiseSystemException;
}
