@@ -70,19 +70,19 @@ public List<Project> getSharedProjectsWithoutRun(User user) {
7070 CriteriaQuery <ProjectImpl > cq = cb .createQuery (ProjectImpl .class );
7171 Root <ProjectImpl > projectRoot = cq .from (ProjectImpl .class );
7272 Root <UserImpl > userRoot = cq .from (UserImpl .class );
73- Subquery <RunImpl > runProjectIds = getRunProjectIds (cq );
73+ Subquery <Long > runProjectIds = getRunProjectIds (cq );
7474 List <Predicate > predicates = new ArrayList <>();
75- predicates .add (cb .equal (userRoot . get ( "id" ) , user . getId () ));
76- predicates .add (cb .isMember (userRoot . get ( "id" ) , projectRoot .<Set <User >> get ("sharedowners" )));
75+ predicates .add (cb .equal (userRoot , user ));
76+ predicates .add (cb .isMember (user , projectRoot .<Set <User >> get ("sharedowners" )));
7777 predicates .add (cb .not (projectRoot .get ("id" ).in (runProjectIds )));
7878 cq .select (projectRoot ).where (predicates .toArray (new Predicate [predicates .size ()]));
7979 TypedQuery <ProjectImpl > query = entityManager .createQuery (cq );
8080 List <ProjectImpl > projectResultList = query .getResultList ();
8181 return (List <Project >) (Object ) projectResultList ;
8282 }
8383
84- private Subquery <RunImpl > getRunProjectIds (CriteriaQuery cq ) {
85- Subquery <RunImpl > runsSubquery = cq .subquery (RunImpl .class );
84+ private Subquery <Long > getRunProjectIds (CriteriaQuery cq ) {
85+ Subquery <Long > runsSubquery = cq .subquery (Long .class );
8686 Root <RunImpl > runRoot = runsSubquery .from (RunImpl .class );
8787 runsSubquery .select (runRoot .get ("project" ).get ("id" ));
8888 return runsSubquery ;
@@ -185,10 +185,10 @@ public List<Project> getProjectsWithoutRuns(User user) {
185185 CriteriaQuery <ProjectImpl > cq = cb .createQuery (ProjectImpl .class );
186186 Root <ProjectImpl > projectRoot = cq .from (ProjectImpl .class );
187187 Root <UserImpl > userRoot = cq .from (UserImpl .class );
188- Subquery <RunImpl > runProjectIds = getRunProjectIds (cq );
188+ Subquery <Long > runProjectIds = getRunProjectIds (cq );
189189 List <Predicate > predicates = new ArrayList <>();
190- predicates .add (cb .equal (userRoot . get ( "id" ) , user . getId () ));
191- predicates .add (cb .equal (userRoot . get ( "id" ) , projectRoot .get ("owner" )));
190+ predicates .add (cb .equal (userRoot , user ));
191+ predicates .add (cb .equal (userRoot , projectRoot .get ("owner" )));
192192 predicates .add (cb .not (projectRoot .get ("id" ).in (runProjectIds )));
193193 cq .select (projectRoot ).where (predicates .toArray (new Predicate [predicates .size ()]));
194194 TypedQuery <ProjectImpl > query = entityManager .createQuery (cq );
0 commit comments