package com.kingdee.eas.custom.dormitorysystem.application;

import com.kingdee.bos.framework.ejb.EJBRemoteException;
import com.kingdee.bos.util.BOSObjectType;
import java.rmi.RemoteException;
import com.kingdee.bos.framework.AbstractBizCtrl;
import com.kingdee.bos.orm.template.ORMObject;

import com.kingdee.bos.util.*;
import com.kingdee.eas.framework.CoreBaseInfo;
import com.kingdee.bos.Context;
import com.kingdee.bos.util.BOSUuid;
import com.kingdee.eas.hr.base.IHRBillBase;
import com.kingdee.eas.custom.dormitorysystem.application.app.*;
import com.kingdee.bos.dao.IObjectPK;
import com.kingdee.bos.BOSException;
import com.kingdee.eas.hr.base.HRBillBase;
import com.kingdee.bos.metadata.entity.SelectorItemCollection;
import com.kingdee.eas.common.EASBizException;
import com.kingdee.eas.framework.CoreBaseCollection;
import com.kingdee.bos.metadata.entity.EntityViewInfo;
import java.lang.String;
import com.kingdee.bos.framework.*;

public class CheckInApplication extends HRBillBase implements ICheckInApplication
{
    public CheckInApplication()
    {
        super();
        registerInterface(ICheckInApplication.class, this);
    }
    public CheckInApplication(Context ctx)
    {
        super(ctx);
        registerInterface(ICheckInApplication.class, this);
    }
    public BOSObjectType getType()
    {
        return new BOSObjectType("412D7440");
    }
    private CheckInApplicationController getController() throws BOSException
    {
        return (CheckInApplicationController)getBizController();
    }
    /**
     *取集合-System defined method
     *@return
     */
    public CheckInApplicationCollection getCheckInApplicationCollection() throws BOSException
    {
        try {
            return getController().getCheckInApplicationCollection(getContext());
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取集合-System defined method
     *@param view 取集合
     *@return
     */
    public CheckInApplicationCollection getCheckInApplicationCollection(EntityViewInfo view) throws BOSException
    {
        try {
            return getController().getCheckInApplicationCollection(getContext(), view);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取集合-System defined method
     *@param oql 取集合
     *@return
     */
    public CheckInApplicationCollection getCheckInApplicationCollection(String oql) throws BOSException
    {
        try {
            return getController().getCheckInApplicationCollection(getContext(), oql);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取值-System defined method
     *@param pk 取值
     *@return
     */
    public CheckInApplicationInfo getCheckInApplicationInfo(IObjectPK pk) throws BOSException, EASBizException
    {
        try {
            return getController().getCheckInApplicationInfo(getContext(), pk);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取值-System defined method
     *@param pk 取值
     *@param selector 取值
     *@return
     */
    public CheckInApplicationInfo getCheckInApplicationInfo(IObjectPK pk, SelectorItemCollection selector) throws BOSException, EASBizException
    {
        try {
            return getController().getCheckInApplicationInfo(getContext(), pk, selector);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取值-System defined method
     *@param oql 取值
     *@return
     */
    public CheckInApplicationInfo getCheckInApplicationInfo(String oql) throws BOSException, EASBizException
    {
        try {
            return getController().getCheckInApplicationInfo(getContext(), oql);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *提交生效-User defined method
     *@param billId 单据id
     *@return
     */
    public IObjectPK submitEffect(String billId) throws BOSException, EASBizException
    {
        try {
            return getController().submitEffect(getContext(), billId);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *在审批节点之后，再校验下单据，如果符合要求就返回true，否则返回false，并且写入校验是否原因-User defined method
     *@param billID 单据id
     *@return
     */
    public boolean validateBillInProcess(BOSUuid billID) throws BOSException, EASBizException
    {
        try {
            return getController().validateBillInProcess(getContext(), billID);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
}