package com.kingdee.eas.custom.integration.feishu;

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.eas.framework.ICoreBillBase;
import com.kingdee.eas.custom.integration.feishu.app.*;
import com.kingdee.bos.Context;
import com.kingdee.bos.dao.IObjectPK;
import com.kingdee.bos.BOSException;
import com.kingdee.bos.metadata.entity.SelectorItemCollection;
import com.kingdee.eas.common.EASBizException;
import com.kingdee.eas.framework.CoreBaseCollection;
import com.kingdee.eas.framework.CoreBillBase;
import com.kingdee.bos.metadata.entity.EntityViewInfo;
import java.lang.String;
import com.kingdee.bos.framework.*;

public class FeishuApprovalInstance extends CoreBillBase implements IFeishuApprovalInstance
{
    public FeishuApprovalInstance()
    {
        super();
        registerInterface(IFeishuApprovalInstance.class, this);
    }
    public FeishuApprovalInstance(Context ctx)
    {
        super(ctx);
        registerInterface(IFeishuApprovalInstance.class, this);
    }
    public BOSObjectType getType()
    {
        return new BOSObjectType("432C4D01");
    }
    private FeishuApprovalInstanceController getController() throws BOSException
    {
        return (FeishuApprovalInstanceController)getBizController();
    }
    /**
     *取集合-System defined method
     *@return
     */
    public FeishuApprovalInstanceCollection getFeishuApprovalInstanceCollection() throws BOSException
    {
        try {
            return getController().getFeishuApprovalInstanceCollection(getContext());
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取集合-System defined method
     *@param view 取集合
     *@return
     */
    public FeishuApprovalInstanceCollection getFeishuApprovalInstanceCollection(EntityViewInfo view) throws BOSException
    {
        try {
            return getController().getFeishuApprovalInstanceCollection(getContext(), view);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取集合-System defined method
     *@param oql 取集合
     *@return
     */
    public FeishuApprovalInstanceCollection getFeishuApprovalInstanceCollection(String oql) throws BOSException
    {
        try {
            return getController().getFeishuApprovalInstanceCollection(getContext(), oql);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取值-System defined method
     *@param pk 取值
     *@return
     */
    public FeishuApprovalInstanceInfo getFeishuApprovalInstanceInfo(IObjectPK pk) throws BOSException, EASBizException
    {
        try {
            return getController().getFeishuApprovalInstanceInfo(getContext(), pk);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取值-System defined method
     *@param pk 取值
     *@param selector 取值
     *@return
     */
    public FeishuApprovalInstanceInfo getFeishuApprovalInstanceInfo(IObjectPK pk, SelectorItemCollection selector) throws BOSException, EASBizException
    {
        try {
            return getController().getFeishuApprovalInstanceInfo(getContext(), pk, selector);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *取值-System defined method
     *@param oql 取值
     *@return
     */
    public FeishuApprovalInstanceInfo getFeishuApprovalInstanceInfo(String oql) throws BOSException, EASBizException
    {
        try {
            return getController().getFeishuApprovalInstanceInfo(getContext(), oql);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
    /**
     *同步审批实例-User defined method
     *@param billId 单据id
     */
    public void syncApprovalInstance(String billId) throws BOSException, EASBizException
    {
        try {
            getController().syncApprovalInstance(getContext(), billId);
        }
        catch(RemoteException err) {
            throw new EJBRemoteException(err);
        }
    }
}