1
22
23 package com.liferay.portlet.tasks.service.persistence;
24
25 import com.liferay.portal.SystemException;
26 import com.liferay.portal.spring.hibernate.CustomSQLUtil;
27 import com.liferay.portal.spring.hibernate.HibernateUtil;
28 import com.liferay.portlet.tasks.model.TasksProposal;
29 import com.liferay.portlet.tasks.model.impl.TasksProposalImpl;
30 import com.liferay.util.dao.hibernate.QueryPos;
31 import com.liferay.util.dao.hibernate.QueryUtil;
32
33 import java.util.Iterator;
34 import java.util.List;
35
36 import org.hibernate.Hibernate;
37 import org.hibernate.SQLQuery;
38 import org.hibernate.Session;
39
40
46 public class TasksProposalFinderImpl implements TasksProposalFinder {
47
48 public static String COUNT_BY_G_U =
49 TasksProposalFinder.class.getName() + ".countByG_U";
50
51 public static String FIND_BY_G_U =
52 TasksProposalFinder.class.getName() + ".findByG_U";
53
54 public int countByG_U(long groupId, long userId)
55 throws SystemException {
56
57 Session session = null;
58
59 try {
60 session = HibernateUtil.openSession();
61
62 String sql = CustomSQLUtil.get(COUNT_BY_G_U);
63
64 SQLQuery q = session.createSQLQuery(sql);
65
66 q.addScalar(HibernateUtil.getCountColumnName(), Hibernate.LONG);
67
68 QueryPos qPos = QueryPos.getInstance(q);
69
70 qPos.add(groupId);
71 qPos.add(userId);
72
73 Iterator<Long> itr = q.list().iterator();
74
75 if (itr.hasNext()) {
76 Long count = itr.next();
77
78 if (count != null) {
79 return count.intValue();
80 }
81 }
82
83 return 0;
84 }
85 catch (Exception e) {
86 throw new SystemException(e);
87 }
88 finally {
89 HibernateUtil.closeSession(session);
90 }
91 }
92
93 public List<TasksProposal> findByG_U(
94 long groupId, long userId, int begin, int end)
95 throws SystemException {
96
97 Session session = null;
98
99 try {
100 session = HibernateUtil.openSession();
101
102 String sql = CustomSQLUtil.get(FIND_BY_G_U);
103
104 SQLQuery q = session.createSQLQuery(sql);
105
106 q.addEntity("TasksProposal", TasksProposalImpl.class);
107
108 QueryPos qPos = QueryPos.getInstance(q);
109
110 qPos.add(groupId);
111 qPos.add(userId);
112
113 return (List<TasksProposal>)QueryUtil.list(
114 q, HibernateUtil.getDialect(), begin, end);
115 }
116 catch (Exception e) {
117 throw new SystemException(e);
118 }
119 finally {
120 HibernateUtil.closeSession(session);
121 }
122 }
123
124 }