Package com.founder.fix.fixflow.core

Examples of com.founder.fix.fixflow.core.ProcessEngine


    * @see com.founder.fix.fixflow.service.FlowCenterService#queryMyTaskNotEnd(java.util.Map)
    */
  public Map<String,Object> queryMyTaskNotEnd(Map<String, Object> filter)
      throws SQLException {
    Map<String,Object> result = new HashMap<String,Object>();
    ProcessEngine engine = getProcessEngine(filter
        .get("userId"));
   
    String whereSql = " 1=1 ";
    String leftJoinStr = "";

    QueryExpandTo queryExpandTo = new QueryExpandTo();
   
    try {
      TaskQuery tq = engine.getTaskService().createTaskQuery();
     
      tq.taskAssignee(StringUtil.getString(filter.get("userId")));
      tq.taskCandidateUser(StringUtil.getString(filter.get("userId")));
//      tq.processDefinitionKey(StringUtil.getString(filter.get("pdkey")));
     
      String descritpion = StringUtil.getString(filter.get("title"));
      if(StringUtil.isNotEmpty(descritpion))
        tq.taskDescriptionLike(descritpion);
     
      String initor     = StringUtil.getString(filter.get("initor"));
      if(StringUtil.isNotEmpty(initor))
        tq.initiator(initor);
     
      //发起人模糊匹配
      String initorName = StringUtil.getString(filter.get("initorName"));
      if (StringUtil.isNotEmpty(initorName)) {
        initorName = initorName.replace("'", "");
        ProcessEngine processEngine = ProcessEngineManagement
            .getDefaultProcessEngine();
        AllUserInfo userInfoConfig = processEngine
            .getProcessEngineConfiguration().getUserDefinition()
            .getUserInfoConfig();
        leftJoinStr += " LEFT JOIN (" + userInfoConfig.getSqlText()
            + ") UT on UT." + userInfoConfig.getUserIdField()
            + " = P.INITIATOR ";
View Full Code Here


  }

  public List<Map<String, String>> queryStartProcess(String userId)
      throws SQLException {
    List<Map<String, String>> result = null;
    ProcessEngine engine = getProcessEngine(userId);
    try {
      result = engine.getModelService().getStartProcessByUserId(userId);
      for(Map<String,String> tmp:result){
        String formUrl = tmp.get("startFormKey");
        //String formUrl = engine.getFormService().getStartFormByKey(pdkey);
       
        tmp.put("formUrl", formUrl);
View Full Code Here

   * @see
   * com.founder.fix.fixflow.service.FlowIdentityService#getUserTo(java.lang
   * .String)
   */
  public UserTo getUserTo(String userId) {
    ProcessEngine engine = null;
    UserTo userTo = null;
   
    try {
      engine = getProcessEngine(userId);
      userTo = engine.getIdentityService()
          .getUserTo(userId);
    } catch (SQLException e) {
      e.printStackTrace();
    }finally{
      closeProcessEngine();
View Full Code Here

    Map<String, Object> resultData = new HashMap<String, Object>();
    Map<String, Object> agentInfo = new HashMap<String, Object>();
    List<Map<String, Object>> detailInfoList = new ArrayList<Map<String, Object>>();
    Map<String, Object> eachResultData = new HashMap<String, Object>();
    Connection connection = null;
    ProcessEngine engine = null;
    try {
      connection = FixFlowShellProxy
          .getConnection(ConnectionManagement.defaultDataBaseId);
      this.connection = connection;
      engine = this.getProcessEngine(agentId);
      SqlCommand sqlCommand = new SqlCommand(connection);
      String sqlStr = "select * from fixflow_agent_agentinfo where agent_id = ?";
      List<Object> data = new ArrayList<Object>();
      data.add(agentId);
      List<Map<String, Object>> listData = sqlCommand.queryForList(
          sqlStr, data);
      if (listData.size() > 0) {
        Map<String, Object> eachAgentInfo = listData.get(0);
        agentInfo.put("agentId", agentId);
        agentInfo.put("agentName", this.getUserName(agentId));
        agentInfo.put("sDate", eachAgentInfo.get("SDATE"));
        agentInfo.put("eDate", eachAgentInfo.get("EDATE"));
        agentInfo.put("oDate", eachAgentInfo.get("ODATE"));
        agentInfo.put("status", eachAgentInfo.get("STATUS"));
        // eachAgentInfo.put("agentName", this.getUserName(agentId));

        sqlStr = "select * from fixflow_agent_agentdetails where agent_id = ?";
       
     
        data.clear();
        data.add(agentId);
        listData = sqlCommand.queryForList(sqlStr, data);
        for (Map<String, Object> rowDataMap : listData) {
          // if (resultData.size() > 0) {
          eachResultData.put("agentId", rowDataMap.get("AGENT_ID"));
          String auser = StringUtil
              .getString(rowDataMap.get("AUSER"));
          eachResultData.put("auser", auser);
          if(StringUtil.isNotEmpty(auser))
            eachResultData.put("auserName", this.getUserName(auser));
          else
            eachResultData.put("auserName","查无此人");

          String processId = StringUtil.getString(rowDataMap
              .get("PROCESS_ID"));
          eachResultData.put("processId", processId);
          eachResultData.put("guid", rowDataMap.get("GUID"));
          String processName = "";
          if (processId.equals(FIX_FLOW_ALL_FLOW)) {
            processName = "所有流程";
          } else {
            ProcessDefinitionBehavior processDefinition = engine.getModelService()
                .createProcessDefinitionQuery()
                .processDefinitionKey(processId)
                .latestVersion().singleResult();
            processName = processDefinition.getName();
          }
View Full Code Here

    return result;
  }
 
  public List<Map<String, String>> queryLastestProcess(String userid) throws SQLException {
    List<Map<String, String>> result = null;
    ProcessEngine engine = getProcessEngine(userid);
    try {
      result = engine.getModelService().getUserSubmitProcess(userid,5);
      for(Map<String,String> tmp:result){
        String formUrl = tmp.get("startFormKey");
        tmp.put("formUrl", formUrl);
      }
    } finally {
View Full Code Here

  public Map<String,Object> queryTaskInitiator(Map<String,Object> filter) throws SQLException {
   
   
    Map<String,Object> resultMap = new HashMap<String,Object>();
    String userId = StringUtil.getString(filter.get("userId"));
    ProcessEngine engine = getProcessEngine(userId);
    RuntimeService runtimeService = engine.getRuntimeService();
    IdentityService identityService = engine.getIdentityService();
    FlowUtilServiceImpl flowUtil = new FlowUtilServiceImpl();
    String processDefinitionKey = StringUtil.getString(filter.get("processDefinitionKey"));
    String processInstanceId    = StringUtil.getString(filter.get("processInstanceId"));
    String title        = StringUtil.getString(filter.get("title"));
//    String subject        = StringUtil.getString(filter.get("subject"));
    String bizKey        = StringUtil.getString(filter.get("bizKey"));
    String initor        = StringUtil.getString(filter.get("initor"));
    String status        = StringUtil.getString(filter.get("status"));
    String processType       = StringUtil.getString(filter.get("processType"));
    ProcessInstanceType processInstanceStatus = FlowUtilServiceImpl.getInstanceStaus(status);
    try{
     
      String pageI = StringUtil.getString(filter.get("pageIndex"));
      String rowI = StringUtil.getString(filter.get("pageSize"));
      int pageIndex=1;
      int rowNum   =15;
      if(StringUtil.isNotEmpty(pageI)){
        pageIndex = Integer.valueOf(pageI);
      }
      if(StringUtil.isNotEmpty(rowI)){
        rowNum = Integer.valueOf(rowI);
      }
      ProcessInstanceQuery processInstanceQuery = runtimeService.createProcessInstanceQuery();
      if(StringUtil.isNotEmpty(processDefinitionKey))
        processInstanceQuery.processDefinitionKey(processDefinitionKey);
      if(StringUtil.isNotEmpty(processInstanceId))
        processInstanceQuery.processInstanceId(processInstanceId);
      if(StringUtil.isNotEmpty(title))
        processInstanceQuery.subjectLike(title);
      if(StringUtil.isNotEmpty(bizKey))
        processInstanceQuery.processInstanceBusinessKeyLike(bizKey);
      if(processInstanceStatus !=null){
        processInstanceQuery.processInstanceStatus(processInstanceStatus);
      }
      if(StringUtil.isNotEmpty(initor))
        processInstanceQuery.initiator(initor);
     
     
      if(StringUtil.isNotEmpty(processType)){
        if(processType.equals("initor"))
          processInstanceQuery.initiator(userId);
        else
          processInstanceQuery.taskParticipants(userId);
      }
     
      String processDefinitionName     = StringUtil.getString(filter.get("processDefinitionName"));
      if(StringUtil.isNotEmpty(processDefinitionName))
        processInstanceQuery.processDefinitionNameLike(processDefinitionName);
     
      processInstanceQuery.orderByUpdateTime().desc();
      Date dates = null;
      Date datee = null;
      String dss = StringUtil.getString(filter.get("startTimeS"));
      String dse = StringUtil.getString(filter.get("startTimeE"));
      if(StringUtil.isNotEmpty(dss)){
        dates = DateUtil.stringToDate(dss,"yyyy-MM-dd");
      }
      if(StringUtil.isNotEmpty(dse)){
        String endTime = "235959999";
        dse += endTime;
        datee = DateUtil.stringToDate(dse,"yyyy-MM-ddHHmmssSSS");
      }
      if(dates!=null)
        processInstanceQuery.startTimeBefore(dates);
     
      if(datee!=null)
        processInstanceQuery.startTimeAfter(datee);
     
     
      List<ProcessInstance> processInstances = processInstanceQuery.listPagination(pageIndex, rowNum);
     
      List<Map<String,Object>> instanceMaps = new ArrayList<Map<String,Object>>();
      for(ProcessInstance tmp: processInstances){
        Map<String, Object> persistentState = tmp.getPersistentState();
        String processDefinitionId = tmp.getProcessDefinitionId();
        ProcessDefinitionBehavior processDefinitionBehavior = engine.getModelService().getProcessDefinition(processDefinitionId);
        String processDefinitionName1 = processDefinitionBehavior.getName();
        persistentState.put("processDefinitionName", processDefinitionName1);
        String nowNodeInfo = flowUtil.getShareTaskNowNodeInfo(tmp.getId());
        persistentState.put("nowNodeInfo", nowNodeInfo);
        UserTo user = identityService.getUserTo(tmp.getStartAuthor());
View Full Code Here

  public Map<String,Object> queryPlaceOnFile(Map<String,Object> filter) throws SQLException {
    Map<String,Object> result = new HashMap<String,Object>();
    String userId = (String) filter.get("userId");
    String processType = StringUtil.getString(filter.get("processType"));
   
    ProcessEngine engine = getProcessEngine(userId);
    try{
      ProcessInstanceQuery tq = engine.getRuntimeService()
          .createProcessInstanceQuery();
     
      String bizKey = StringUtil.getString(filter.get("BIZ_KEY"))//业务数据
      if(StringUtil.isNotEmpty(bizKey))
        tq.processInstanceBusinessKey(bizKey);
     
      String initor = StringUtil.getString(filter.get("initor"))//发起人
      if(StringUtil.isNotEmpty(initor))
        tq.initiator(initor);
     
      Date dates = null;
      Date datee = null;
      String dss = StringUtil.getString(filter.get("arrivalTimeS"));
      String dse = StringUtil.getString(filter.get("arrivalTimeE"));
      if(StringUtil.isNotEmpty(dss)){
        dates = DateUtil.stringToDate(dss,"yyyy-MM-dd");
      }
      if(StringUtil.isNotEmpty(dse)){
        String endTime = "235959999";
        dse += endTime;
        datee = DateUtil.stringToDate(dse,"yyyy-MM-ddHHmmssSSS");
      }
      if(dates!=null)
        tq.archiveTimeBefore(dates);
       
     
      if(datee!=null)
        tq.archiveTimeAfter(datee);
     
      String processDefinitionKey = StringUtil.getString(filter.get("processDefinitionKey"))//流程定义
      if(StringUtil.isNotEmpty(processDefinitionKey))
        tq.processDefinitionKey(processDefinitionKey);
     
      String processInstanceId = StringUtil.getString(filter.get("processInstanceId"))//流程实例号
      if(StringUtil.isNotEmpty(processInstanceId))
        tq.processInstanceId(processInstanceId);
     
      String subject = StringUtil.getString(filter.get("subject"))//主题
      if(StringUtil.isNotEmpty(subject))
        tq.subjectLike(subject);
     
      String pageI = StringUtil.getString(filter.get("pageIndex"));
      String rowI = StringUtil.getString(filter.get("pageSize"));
     
      int pageIndex=1;
      int rowNum   =15;
      if(StringUtil.isNotEmpty(pageI)){
        pageIndex = Integer.valueOf(pageI);
      }
      if(StringUtil.isNotEmpty(rowI)){
        rowNum = Integer.valueOf(rowI);
      }
     
      if(filter.get("ended")!=null)
        tq.isEnd();
     
      List<ProcessInstance> instances = null;
      if(StringUtil.isNotEmpty(processType)){
        if(processType.equals("initor"))
          tq.initiator(userId);
        else
          tq.taskParticipants(userId);
      }
      tq.his();
      instances = tq.listPagination(pageIndex, rowNum);

      Long count = tq.count();
      List<Map<String,Object>> instanceMaps = new ArrayList<Map<String,Object>>();
      Pagination page = new Pagination(pageIndex,rowNum);
      page.setTotal(count.intValue());
      IdentityService identityService = engine.getIdentityService();
      for(ProcessInstance tmp:instances){
        Map<String, Object> persistentState = tmp.getPersistentState();
        ProcessEngine processEngine = ProcessEngineManagement.getDefaultProcessEngine();
        String processDefinitionId = tmp.getProcessDefinitionId();
        ProcessDefinitionBehavior processDefinitionBehavior = processEngine.getModelService().getProcessDefinition(processDefinitionId);
        String processDefinitionName = processDefinitionBehavior.getName();
        persistentState.put("processDefinitionName", processDefinitionName);
       
       
       
View Full Code Here

   
    String processInstanceId = StringUtil.getString(filter.get("processDefinitionId"));
    String processDefinitionKey = StringUtil.getString(filter.get("processDefinitionKey"));
   
    String userId = (String) filter.get("userId");
    ProcessEngine engine = getProcessEngine(userId);
    String svgFlow = null;
   
    try{
      if(StringUtil.isNotEmpty(processInstanceId))
        svgFlow = engine.getModelService().getFlowGraphicsSvg(processInstanceId);
      else
        svgFlow = engine.getModelService().getFlowGraphicsSvgByDefKey(processDefinitionKey);
     
      result.put("flowGraph", svgFlow);
    }finally{
      closeProcessEngine();
    }
View Full Code Here

    String processInstanceId = StringUtil.getString(filter.get("processInstanceId"));
   
    Map<String,Object> result = new HashMap<String,Object>();
    if(StringUtil.isNotEmpty(processInstanceId)){
      String userId = (String) filter.get("userId");
      ProcessEngine engine = getProcessEngine(userId);
      ProcessInstance processInstance = engine.getRuntimeService().getProcessInstance(processInstanceId);
      String processName = processInstance.getProcessDefinition().getName();
      try{
        TaskQuery tq = engine.getTaskService().createTaskQuery();
        IdentityService identityService = engine.getIdentityService();
        tq.processInstanceId(processInstanceId);
        tq.taskIsEnd().orderByEndTime().asc();
        List<TaskInstance> instances = tq.list();
        List<Map<String,Object>> instanceMaps = new ArrayList<Map<String,Object>>();
        for(TaskInstance tmp:instances){
          Map<String,Object> instanceMap = tmp.getPersistentState();
          String assigneeUserId = tmp.getAssignee();
          if(StringUtil.isNotEmpty(assigneeUserId)){
            UserTo tmpUser = identityService.getUserTo(assigneeUserId);
            if(tmpUser!=null){
              instanceMap.put("assgneeUserName", tmpUser.getUserName());
            }
          }else{
            instanceMap.put("assgneeUserName", "(空用户名)");
          }
          instanceMaps.add(instanceMap);
        }
        tq.taskNotEnd().orderByTaskCreateTime().asc();
        List<TaskInstance> instancesNotEnd = tq.list();
       
        List<Map<String,Object>> notEndInstanceMaps = new ArrayList<Map<String,Object>>();
        for(TaskInstance tmp:instancesNotEnd){
          Map<String,Object> instanceMap = tmp.getPersistentState();
          String assigneeUserId = tmp.getAssignee();
          if(StringUtil.isNotEmpty(assigneeUserId)){
            UserTo tmpUser = identityService.getUserTo(assigneeUserId);
            if(tmpUser!=null){
              instanceMap.put("assgneeUserName", tmpUser.getUserName());
            }
          }else{
            instanceMap.put("assgneeUserName", "(空用户名)");
          }
          notEndInstanceMaps.add(instanceMap);
        }
        Map<String,Map<String,Object>> postionMap = engine.getModelService().GetFlowGraphicsElementPosition(processInstance.getProcessDefinitionId());
        result.put("notEnddataList", notEndInstanceMaps);
        result.put("dataList", instanceMaps);
        result.put("positionInfo", JSONUtil.parseObject2JSON(postionMap));
        result.put("taskEndedJson", JSONUtil.parseObject2JSON(instanceMaps));
        result.put("taskNotEndJson", JSONUtil.parseObject2JSON(instancesNotEnd));
View Full Code Here

    String processInstanceId = StringUtil.getString(filter.get("processDefinitionId"));
    String processDefinitionKey = StringUtil.getString(filter.get("processDefinitionKey"));
    InputStream result = null;
   
    String userId = (String) filter.get("userId");
    ProcessEngine engine = getProcessEngine(userId);
   
    try{
      if(StringUtil.isNotEmpty(processInstanceId))
        result = engine.getModelService().GetFlowGraphicsImgStreamByDefId(processInstanceId);
      else
        result = engine.getModelService().GetFlowGraphicsImgStreamByDefKey(processDefinitionKey);
    }finally{
      closeProcessEngine();
    }
   
    return result;
View Full Code Here

TOP

Related Classes of com.founder.fix.fixflow.core.ProcessEngine

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.