@Statement public List<CaseDefinitionEntity> selectCaseDefinitionByKeyVersionAndTenantId(OPersistenceSession session, final ListQueryParameterObject parameter) { Map<String, Object> map = (Map<String, Object>) parameter.getParameter(); String key = map.get("caseDefinitionKey").toString(); Integer version = Integer.getInteger(map.get("caseDefinitionVersion").toString()); String tenantId = map.get("tenantId").toString(); String query = "select from " + getSchemaClass() + " where key=" + key + " and version=" + version; if (tenantId == null) query += " and tenantId is null"; else query += " and tenantid=" + tenantId; return queryList(session, query); }
public CaseDefinitionEntity selectPreviousCaseDefinitionId(OPersistenceSession session, final ListQueryParameterObject parameter) { Map<String, Object> map = (Map<String, Object>) parameter.getParameter(); String key = map.get("key").toString(); Integer version = Integer.getInteger(map.get("version").toString()); String tenantId = map.get("tenantId").toString(); String query = "select distinct res.* from " + getSchemaClass() + " res where res.key = " + key; query += (tenantId != null ? " and tenantId=" + tenantId : " and tenantId is null" ); query += " and res.version = (select max(version) from " + getSchemaClass() + " where key=" + key; query += (tenantId != null ? " and tenantId=" + tenantId : " and tenantId is null" ); query += " and version < " + version + ")"; return querySingle(session, query); }
@Statement public List<DecisionDefinitionEntity> selectDecisionDefinitionByKeyVersionAndTenantId(OPersistenceSession session, ListQueryParameterObject parameter) { Map<String, String> params = (Map<String, String>) parameter.getParameter(); return queryList(session, "select from " + getSchemaClass() + " where key = ? and version = ? and tenantId = ?", params.get("key"), params.get("version"), params.get("tenantId")); }
@Statement public List<DecisionDefinitionEntity> selectDecisionDefinitionByKeyAndVersion(OPersistenceSession session, ListQueryParameterObject parameter) { Map<String, String> params = (Map<String, String>) parameter.getParameter(); return queryList(session, "select from " + getSchemaClass() + " where key = ? and version = ?", params.get("key"), params.get("version")); }
@Statement public List<CommentEntity> selectCommentByTaskIdAndCommentId(OPersistenceSession session, ListQueryParameterObject parameter) { Map<String, String> params = (Map<String, String>) parameter.getParameter(); return queryList(session, "select from " + getSchemaClass() + " where taskId=? and id=?", params.get("taskId"), params.get("id")); } }
@Statement public List<IdentityLinkEntity> selectIdentityLinkByProcessDefinitionUserAndGroup(OPersistenceSession session, ListQueryParameterObject param) { Map<String, Object> map = (Map<String, Object>) param.getParameter(); return query(session, map); }
@Statement public List<CaseDefinitionEntity> selectLatestCaseDefinitionByKeyWithoutTenantId(OPersistenceSession session, final ListQueryParameterObject parameter) { return queryList(session, "select from " + getSchemaClass() + " where key = ? and tenantId is null " + "and version(select max(version) from" + getSchemaClass() + " where key = ? and tenantId is null)", parameter.getParameter(), parameter.getParameter()); }
@Statement public List<CaseDefinitionEntity> selectLatestCaseDefinitionByKeyAndTenantId(OPersistenceSession session, final ListQueryParameterObject parameter) { Map<String, String> map = (Map<String, String>) parameter.getParameter(); String key = map.get("caseDefinitionKey").toString(); String tenantId = map.get("tenantId").toString(); String query = "select from " + getSchemaClass() + " where key = ? and tenantId = ? and version = (select max(version) " + "from " + getSchemaClass() + " where key = ? and tenantId = ?)"; return queryList(session, query, key, tenantId, key, tenantId); }
@Statement public List<DecisionDefinitionEntity> selectLatestDecisionDefinitionByKeyWithoutTenantId(OPersistenceSession session, ListQueryParameterObject parameter) { return queryList(session, "select from " + getSchemaClass() + " where key = ? and tenantId is null and version = (" + "select max(version) from " + getSchemaClass() + " where key = ? and tenantId is null)", parameter.getParameter(), parameter.getParameter()); }
@Statement public List<DecisionDefinitionEntity> selectDecisionDefinitionByKeyVersionWithoutTenantId(OPersistenceSession session, ListQueryParameterObject parameter) { Map<String, String> params = (Map<String, String>) parameter.getParameter(); return queryList(session, "select from " + getSchemaClass() + " where key = ? and version = ? and tenantId is null", params.get("key"), params.get("version")); }
@Statement public List<CaseDefinitionEntity> selectCaseDefinitionByDeploymentAndKey(OPersistenceSession session, final ListQueryParameterObject parameter) { Map<String, String> map = (Map<String, String>) parameter.getParameter(); return queryList(session, "select from " + getSchemaClass() + " where deployment.id=? and key=?", map.get("deploymentId"), map.get("key")); }
@Statement public List<DecisionDefinitionEntity> selectLatestDecisionDefinitionByKeyAndTenantId(OPersistenceSession session, ListQueryParameterObject parameter) { Map<String, String> params = (Map<String, String>) parameter.getParameter(); String key = params.get("key"); String tenantId = params.get("tenantId"); return queryList(session, "select from " + getSchemaClass() + " where key = ? and tenantId = ? and version = (" + "select max(version) from " + getSchemaClass() + " where key = ? and tenantId = ?)", key, tenantId, key, tenantId); }
@Statement public List<ExternalTaskEntity> selectExternalTasksForTopics(OPersistenceSession session, ListQueryParameterObject query) { Map<String, Object> map = (Map<String, Object>)query.getParameter(); String sql = "select from "+getSchemaClass()+" where " +"(lockExpirationTime is null or lockExpirationTime <= ?) and " +"(suspensionState is null or suspensionState = 1) and " +"topicName in ? limit ?"; return queryList(session, sql, map.get("now"), map.get("topics"), query.getMaxResults()); }
@Statement public List<ProcessDefinitionEntity> selectProcessDefinitionByKeyIn(OPersistenceSession session, ListQueryParameterObject params) { String[] keys = (String[]) params.getParameter(); return queryList(session, "select from "+getSchemaClass()+" where key in ?", (Object)keys); }
@Statement public List<EventSubscriptionEntity> selectMessageStartEventSubscriptionByName(OPersistenceSession session, ListQueryParameterObject params) { return queryList(session, "select from "+getSchemaClass()+" where eventType = ? and execution.id is null and eventName = ?", MessageEventSubscriptionEntity.EVENT_TYPE, params.getParameter()); }
@Statement public List<String> selectHistoricCaseInstanceIdsByCaseDefinitionId(OPersistenceSession session, ListQueryParameterObject parameter) { ODatabaseDocument db = session.getDatabase(); List<ODocument> resultSet = db.query(new OSQLSynchQuery<>("select id from "+getSchemaClass()+" where caseDefinitionId = ?"), parameter.getParameter()); return Lists.transform(resultSet, GET_ID_FUNCTION); } }
@Statement public List<String> selectProcessInstanceIdsByProcessDefinitionId(OPersistenceSession session, ListQueryParameterObject parameter) { ODatabaseDocument db = session.getDatabase(); List<ODocument> resultSet = db.query(new OSQLSynchQuery<>("select id from "+getSchemaClass()+" where processDefinition.id = ?"), parameter.getParameter()); return Lists.transform(resultSet, GET_ID_FUNCTION); }
@Statement public List<DecisionDefinitionEntity> selectLatestDecisionDefinitionByKey(OPersistenceSession session, ListQueryParameterObject parameter) { return queryList(session, "select from " + getSchemaClass() + " d1 inner join (select key, tenantId, max(version) as MAX_VERSION from " + getSchemaClass() + " where key = ? group by tenantId, key) d2 on d1.key = d2.key where d1.version = d2.MAX_VERSION " + "and (d1.tenantId = d2.tenantId or (d1.tenantId is null and d2.tenantId is null))", parameter.getParameter()); }
@Statement public List<CaseDefinitionEntity> selectLatestCaseDefinitionByKey(OPersistenceSession session, final ListQueryParameterObject parameter) { return queryList(session, "select from " + getSchemaClass() + " c1 inner join (select key, tenantId, max(version) as max_version " + "from " + getSchemaClass() + " res where key=? group by tenantId, key) c2 on c1.key = c2.key " + "where c1.version = c2.max_version and (c1.tenantId = c2.tenantId or (c1.tenantId is null and c2.tenantId is null))", parameter.getParameter()); }
@Statement public List<String> selectHistoricTaskInstanceIdsByParameters(OPersistenceSession session, ListQueryParameterObject parameters) { Map<String, String> params = (Map<String, String>) parameters.getParameter(); Query q = new Query().from(getSchemaClass()); List<Object> args = new ArrayList<>(); enrichWhereByMap(session, q, session.getClass(getSchemaClass()), params, args, null); List<ODocument> docs = session.getDatabase().query(new OSQLSynchQuery<>(q.toString()), args); return docs==null?new ArrayList<String>():(List<String>)Lists.transform(docs, GET_ID_FUNCTION); } }