コード例 #1
0
        public virtual void testQueryByInvalidSubCaseInstanceId()
        {
            HistoricCaseInstanceQuery query = historyService.createHistoricCaseInstanceQuery();

            query.subCaseInstanceId("invalid");

            assertEquals(0, query.count());
            assertEquals(0, query.list().size());

            query.caseInstanceId(null);

            assertEquals(0, query.count());
            assertEquals(0, query.list().size());
        }
コード例 #2
0
        public virtual void testDistinctQueryByCaseActivityIds()
        {
            // given
            createCaseInstanceByKey("twoTaskCase");

            // when
            HistoricCaseInstanceQuery query = historyService.createHistoricCaseInstanceQuery().caseActivityIdIn("PI_HumanTask_1", "PI_HumanTask_2");

            // then
            assertEquals(1, query.list().size());
            assertEquals(1, query.count());
        }
コード例 #3
0
        public virtual void testQueryBySuperCaseInstanceId()
        {
            string superCaseInstanceId = caseService.createCaseInstanceByKey("oneCaseTaskCase").Id;

            HistoricCaseInstanceQuery query = historyService.createHistoricCaseInstanceQuery().superCaseInstanceId(superCaseInstanceId);

            assertEquals(1, query.list().size());
            assertEquals(1, query.count());

            HistoricCaseInstance caseInstance = query.singleResult();

            assertEquals(superCaseInstanceId, caseInstance.SuperCaseInstanceId);
            assertNull(caseInstance.SuperProcessInstanceId);
        }
コード例 #4
0
        public virtual void testQueryBySuperProcessInstanceId()
        {
            string superProcessInstanceId = runtimeService.startProcessInstanceByKey("subProcessQueryTest").Id;

            HistoricCaseInstanceQuery query = historyService.createHistoricCaseInstanceQuery().superProcessInstanceId(superProcessInstanceId);

            assertEquals(1, query.list().size());
            assertEquals(1, query.count());

            HistoricCaseInstance subCaseInstance = query.singleResult();

            assertNotNull(subCaseInstance);
            assertEquals(superProcessInstanceId, subCaseInstance.SuperProcessInstanceId);
            assertNull(subCaseInstance.SuperCaseInstanceId);
        }
コード例 #5
0
        public virtual IList <HistoricCaseInstanceDto> queryHistoricCaseInstances(HistoricCaseInstanceQueryDto queryDto, int?firstResult, int?maxResults)
        {
            HistoricCaseInstanceQuery query = queryDto.toQuery(processEngine);

            IList <HistoricCaseInstance> matchingHistoricCaseInstances;

            if (firstResult != null || maxResults != null)
            {
                matchingHistoricCaseInstances = executePaginatedQuery(query, firstResult, maxResults);
            }
            else
            {
                matchingHistoricCaseInstances = query.list();
            }

            IList <HistoricCaseInstanceDto> historicCaseInstanceDtoResults = new List <HistoricCaseInstanceDto>();

            foreach (HistoricCaseInstance historicCaseInstance in matchingHistoricCaseInstances)
            {
                HistoricCaseInstanceDto resultHistoricCaseInstanceDto = HistoricCaseInstanceDto.fromHistoricCaseInstance(historicCaseInstance);
                historicCaseInstanceDtoResults.Add(resultHistoricCaseInstanceDto);
            }
            return(historicCaseInstanceDtoResults);
        }