package com.hotent.bpmModel.manager; import com.hotent.base.model.CommonResult; import com.hotent.base.model.ImportCheckResult; import com.hotent.base.query.PageList; import com.hotent.base.query.QueryFilter; import com.hotent.bpm.api.model.process.nodedef.ext.extmodel.Button; import com.hotent.bpm.persistence.model.DefaultBpmDefinition; import com.hotent.bpmModel.params.DefBoSetVo; import com.hotent.bpmModel.params.DefPropSaveVo; import com.hotent.bpmModel.params.DefaultBpmDefinitionVo; import org.springframework.web.multipart.MultipartHttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; import java.util.Map; import java.util.Optional; /** * 描述:流程定义管理接口 */ public interface BpmDefService { /** * flex流程设计器保存 * @param bpmDefinitionVo * @return */ CommonResult flexDefSave(DefaultBpmDefinitionVo bpmDefinitionVo); /** * 绑定指定表单的流程定义列表(分页条件查询)数据 * @param boCode * @param formKey * @param queryFilter * @return */ PageList formDeflist(String boCode, String formKey, QueryFilter queryFilter); /** * 保存流程定义 * @param bpmVo * @return */ Object save(DefaultBpmDefinitionVo bpmVo); /** * 保存流程设置的BO设置 * @param defBoSetVo * @return */ CommonResult saveSetBos(DefBoSetVo defBoSetVo) throws Exception; /** * 保存代理信息 * @param typeId * @param word */ void getFlowListByTypeId(String typeId, String word,HttpServletResponse response) throws IOException; /** * 流程在线设计,根据defId获取流程对应的详细信息 * @param defId * @param response */ void flexGet(String defId, HttpServletResponse response) throws IOException; /** * 获取流程其他属性的参数 * @param defId * @return */ Map getOtherParam(String defId); /** * 获取流程其他属性的参数 * @param defPropVo * @return */ CommonResult saveProp(DefPropSaveVo defPropVo); /** * 展示流程节点BO设置 * @param defId * @param topDefKey * @return */ Object nodeBos(String defId, String topDefKey) throws Exception; /** * 流程导入前校验,通过校验则直接导入,如有重复流程,则返回流程xml的缓存key,待用户确认覆盖后再次导入 * @param request * @param response * @return */ Object importCheck(MultipartHttpServletRequest request, HttpServletResponse response, Optional typeId) throws Exception ; /** * 得到某个节点自定义按钮 * @param defId * @param nodeId * @param action * @return * @throws Exception */ List