Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
Max Mecklin
/
Moya
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit dc66d756
authored
Oct 18, 2012
by
Tuomas Riihimäki
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Searching may return eventuser instead of user...
1 parent
9c46e49d
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
136 additions
and
71 deletions
code/LanBortalBeans/ejbModule/fi/insomnia/bortal/beans/UserBean.java
code/LanBortalBeans/ejbModule/fi/insomnia/bortal/facade/EventUserFacade.java
code/LanBortalBeans/ejbModule/fi/insomnia/bortal/facade/UserFacade.java
code/LanBortalBeansClient/ejbModule/fi/insomnia/bortal/beans/UserBeanLocal.java
code/LanBortalWeb/WebContent/resources/cditools/user/edit.xhtml
code/LanBortalWeb/WebContent/resources/style/insomnia2/css/general.css
code/LanBortalWeb/WebContent/useradmin/list.xhtml
code/LanBortalWeb/src/fi/insomnia/bortal/web/cdiview/PaginationView.java
code/LanBortalWeb/src/fi/insomnia/bortal/web/cdiview/user/UserSearchView.java
code/LanBortalBeans/ejbModule/fi/insomnia/bortal/beans/UserBean.java
View file @
dc66d75
...
@@ -48,6 +48,7 @@ import fi.insomnia.bortal.utilities.I18n;
...
@@ -48,6 +48,7 @@ import fi.insomnia.bortal.utilities.I18n;
import
fi.insomnia.bortal.utilities.PasswordFunctions
;
import
fi.insomnia.bortal.utilities.PasswordFunctions
;
import
fi.insomnia.bortal.utilities.SearchQuery
;
import
fi.insomnia.bortal.utilities.SearchQuery
;
import
fi.insomnia.bortal.utilities.SearchResult
;
import
fi.insomnia.bortal.utilities.SearchResult
;
import
fi.insomnia.bortal.utilities.UserSearchQuery
;
/**
/**
* Session Bean implementation class UserBean
* Session Bean implementation class UserBean
...
@@ -502,11 +503,17 @@ public class UserBean implements UserBeanLocal {
...
@@ -502,11 +503,17 @@ public class UserBean implements UserBeanLocal {
public
SearchResult
<
User
>
getEventUsers
(
SearchQuery
search
)
{
public
SearchResult
<
User
>
getEventUsers
(
SearchQuery
search
)
{
if
(
search
.
getSearch
()
==
null
||
search
.
getSearch
().
isEmpty
())
if
(
search
.
getSearch
()
==
null
||
search
.
getSearch
().
isEmpty
())
{
{
return
userFacade
.
searchEventUsers
(
search
);
throw
new
RuntimeException
(
"You should be using getThisEventsUsers if not searching globally..."
);
// return userFacade.searchEventUsers(search);
}
else
{
}
else
{
return
userFacade
.
searchAllUsers
(
search
);
return
userFacade
.
searchAllUsers
(
search
);
}
}
}
}
@Override
public
SearchResult
<
EventUser
>
getThisEventsUsers
(
UserSearchQuery
searchQuery
)
{
return
eventUserFacade
.
searchEventUsers
(
searchQuery
);
}
}
}
\ No newline at end of file
code/LanBortalBeans/ejbModule/fi/insomnia/bortal/facade/EventUserFacade.java
View file @
dc66d75
package
fi
.
insomnia
.
bortal
.
facade
;
package
fi
.
insomnia
.
bortal
.
facade
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
javax.ejb.EJB
;
import
javax.ejb.EJB
;
import
javax.ejb.LocalBean
;
import
javax.ejb.LocalBean
;
import
javax.ejb.Stateless
;
import
javax.ejb.Stateless
;
import
javax.persistence.TypedQuery
;
import
javax.persistence.criteria.CriteriaBuilder
;
import
javax.persistence.criteria.CriteriaBuilder
;
import
javax.persistence.criteria.CriteriaQuery
;
import
javax.persistence.criteria.CriteriaQuery
;
import
javax.persistence.criteria.Root
;
import
javax.persistence.criteria.Root
;
import
fi.insomnia.bortal.beans.EventBeanLocal
;
import
fi.insomnia.bortal.beans.EventBeanLocal
;
import
fi.insomnia.bortal.facade.callbacks.FacadeCallback
;
import
fi.insomnia.bortal.facade.callbacks.OrderCallback
;
import
fi.insomnia.bortal.facade.tools.EventLimiter
;
import
fi.insomnia.bortal.facade.tools.EventUserSearchPredicate
;
import
fi.insomnia.bortal.model.EventUser
;
import
fi.insomnia.bortal.model.EventUser
;
import
fi.insomnia.bortal.model.EventUser_
;
import
fi.insomnia.bortal.model.EventUser_
;
import
fi.insomnia.bortal.model.PrintedCard
;
import
fi.insomnia.bortal.model.PrintedCard
;
import
fi.insomnia.bortal.model.PrintedCard_
;
import
fi.insomnia.bortal.model.PrintedCard_
;
import
fi.insomnia.bortal.model.User
;
import
fi.insomnia.bortal.model.User
;
import
fi.insomnia.bortal.model.User_
;
import
fi.insomnia.bortal.model.User_
;
import
fi.insomnia.bortal.utilities.SearchResult
;
import
fi.insomnia.bortal.utilities.UserSearchQuery
;
/**
/**
* Session Bean implementation class EventUserFacade
* Session Bean implementation class EventUserFacade
...
@@ -78,6 +86,36 @@ public class EventUserFacade extends IntegerPkGenericFacade<EventUser> {
...
@@ -78,6 +86,36 @@ public class EventUserFacade extends IntegerPkGenericFacade<EventUser> {
}
}
public
SearchResult
<
EventUser
>
searchEventUsers
(
UserSearchQuery
query
)
{
ArrayList
<
FacadeCallback
<
EventUser
>>
callbacks
=
new
ArrayList
<
FacadeCallback
<
EventUser
>>();
callbacks
.
add
(
new
OrderCallback
<
EventUser
>(
false
,
EventUser_
.
id
));
callbacks
.
add
(
new
EventLimiter
(
eventBean
.
getCurrentEvent
()));
if
(
query
.
getSearch
()
!=
null
&&
!
query
.
getSearch
().
isEmpty
())
{
callbacks
.
add
(
new
EventUserSearchPredicate
(
query
.
getSearch
(),
UserFacade
.
getAttrlist
()));
}
CriteriaBuilder
cb
=
getEm
().
getCriteriaBuilder
();
CriteriaQuery
<
EventUser
>
listCQuery
=
cb
.
createQuery
(
EventUser
.
class
);
CriteriaQuery
<
Long
>
countCQuery
=
cb
.
createQuery
(
Long
.
class
);
Root
<
EventUser
>
listRoot
=
searchCallbacks
(
listCQuery
,
callbacks
,
EventUser
.
class
);
Root
<
EventUser
>
countRoot
=
searchCallbacks
(
countCQuery
,
callbacks
,
EventUser
.
class
);
listCQuery
.
select
(
listRoot
);
countCQuery
.
select
(
cb
.
count
(
countRoot
));
TypedQuery
<
Long
>
countQ
=
getEm
().
createQuery
(
countCQuery
);
TypedQuery
<
EventUser
>
listQ
=
getEm
().
createQuery
(
listCQuery
);
if
(
query
.
getPagesize
()
>
0
)
{
listQ
.
setFirstResult
(
query
.
getPage
()
*
query
.
getPagesize
());
listQ
.
setMaxResults
(
query
.
getPagesize
());
}
return
new
SearchResult
<
EventUser
>(
listQ
.
getResultList
(),
countQ
.
getSingleResult
());
}
// public SearchResult<EventUser> searchUser(int page, int pagesize, String
// public SearchResult<EventUser> searchUser(int page, int pagesize, String
// sort, String search) {
// sort, String search) {
//
//
...
...
code/LanBortalBeans/ejbModule/fi/insomnia/bortal/facade/UserFacade.java
View file @
dc66d75
...
@@ -7,11 +7,8 @@ import java.util.List;
...
@@ -7,11 +7,8 @@ import java.util.List;
import
javax.ejb.EJB
;
import
javax.ejb.EJB
;
import
javax.ejb.LocalBean
;
import
javax.ejb.LocalBean
;
import
javax.ejb.Stateless
;
import
javax.ejb.Stateless
;
import
javax.persistence.TypedQuery
;
import
javax.persistence.criteria.CriteriaBuilder
;
import
javax.persistence.criteria.CriteriaBuilder
;
import
javax.persistence.criteria.CriteriaQuery
;
import
javax.persistence.criteria.CriteriaQuery
;
import
javax.persistence.criteria.Path
;
import
javax.persistence.criteria.Predicate
;
import
javax.persistence.criteria.Root
;
import
javax.persistence.criteria.Root
;
import
javax.persistence.metamodel.SingularAttribute
;
import
javax.persistence.metamodel.SingularAttribute
;
...
@@ -22,9 +19,6 @@ import fi.insomnia.bortal.beans.EventBeanLocal;
...
@@ -22,9 +19,6 @@ import fi.insomnia.bortal.beans.EventBeanLocal;
import
fi.insomnia.bortal.facade.callbacks.FacadeCallback
;
import
fi.insomnia.bortal.facade.callbacks.FacadeCallback
;
import
fi.insomnia.bortal.facade.callbacks.OrderCallback
;
import
fi.insomnia.bortal.facade.callbacks.OrderCallback
;
import
fi.insomnia.bortal.facade.callbacks.StringSearchPredicateCreator
;
import
fi.insomnia.bortal.facade.callbacks.StringSearchPredicateCreator
;
import
fi.insomnia.bortal.model.EventUser
;
import
fi.insomnia.bortal.model.EventUser_
;
import
fi.insomnia.bortal.model.LanEvent
;
import
fi.insomnia.bortal.model.User
;
import
fi.insomnia.bortal.model.User
;
import
fi.insomnia.bortal.model.User_
;
import
fi.insomnia.bortal.model.User_
;
import
fi.insomnia.bortal.utilities.SearchQuery
;
import
fi.insomnia.bortal.utilities.SearchQuery
;
...
@@ -148,45 +142,35 @@ public class UserFacade extends IntegerPkGenericFacade<User> {
...
@@ -148,45 +142,35 @@ public class UserFacade extends IntegerPkGenericFacade<User> {
return
getEm
().
createQuery
(
cq
).
getResultList
();
return
getEm
().
createQuery
(
cq
).
getResultList
();
}
}
public
SearchResult
<
User
>
searchEventUsers
(
SearchQuery
query
)
// public SearchResult<User> searchEventUsers(SearchQuery query)
{
// {
ArrayList
<
FacadeCallback
<
EventUser
>>
callbacks
=
new
ArrayList
<
FacadeCallback
<
EventUser
>>();
// ArrayList<FacadeCallback<EventUser>> callbacks = new
callbacks
.
add
(
new
OrderCallback
<
EventUser
>(
false
,
EventUser_
.
id
));
// ArrayList<FacadeCallback<EventUser>>();
callbacks
.
add
(
new
Eventlimiter
(
eventBean
.
getCurrentEvent
()));
// callbacks.add(new OrderCallback<EventUser>(false, EventUser_.id));
// callbacks.add(new EventLimiter(eventBean.getCurrentEvent()));
CriteriaBuilder
cb
=
getEm
().
getCriteriaBuilder
();
//
// CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery
<
User
>
listCQuery
=
cb
.
createQuery
(
User
.
class
);
//
CriteriaQuery
<
Long
>
countCQuery
=
cb
.
createQuery
(
Long
.
class
);
// CriteriaQuery<User> listCQuery = cb.createQuery(User.class);
// CriteriaQuery<Long> countCQuery = cb.createQuery(Long.class);
Root
<
EventUser
>
listRoot
=
searchCallbacks
(
listCQuery
,
callbacks
,
EventUser
.
class
);
//
Root
<
EventUser
>
countRoot
=
searchCallbacks
(
countCQuery
,
callbacks
,
EventUser
.
class
);
// Root<EventUser> listRoot = searchCallbacks(listCQuery, callbacks,
// EventUser.class);
listCQuery
.
select
(
listRoot
.
join
(
EventUser_
.
user
));
// Root<EventUser> countRoot = searchCallbacks(countCQuery, callbacks,
countCQuery
.
select
(
cb
.
count
(
countRoot
.
get
(
EventUser_
.
user
)));
// EventUser.class);
//
TypedQuery
<
Long
>
countQ
=
getEm
().
createQuery
(
countCQuery
);
// listCQuery.select(listRoot.join(EventUser_.user));
TypedQuery
<
User
>
listQ
=
getEm
().
createQuery
(
listCQuery
);
// countCQuery.select(cb.count(countRoot.get(EventUser_.user)));
//
if
(
query
.
getPagesize
()
>
0
)
{
// TypedQuery<Long> countQ = getEm().createQuery(countCQuery);
listQ
.
setFirstResult
(
query
.
getPage
()
*
query
.
getPagesize
());
// TypedQuery<User> listQ = getEm().createQuery(listCQuery);
listQ
.
setMaxResults
(
query
.
getPagesize
());
//
}
// if (query.getPagesize() > 0) {
return
new
SearchResult
<
User
>(
listQ
.
getResultList
(),
countQ
.
getSingleResult
());
// listQ.setFirstResult(query.getPage() * query.getPagesize());
}
// listQ.setMaxResults(query.getPagesize());
// }
public
class
Eventlimiter
implements
FacadeCallback
<
EventUser
>
{
// return new SearchResult<User>(listQ.getResultList(),
// countQ.getSingleResult());
private
LanEvent
ev
;
// }
public
Eventlimiter
(
LanEvent
currentEvent
)
{
ev
=
currentEvent
;
}
@Override
public
void
exec
(
CriteriaBuilder
cb
,
CriteriaQuery
<?>
cq
,
Path
<
EventUser
>
root
,
List
<
Predicate
>
predicates
)
{
predicates
.
add
(
cb
.
equal
(
root
.
get
(
EventUser_
.
event
),
ev
));
}
}
}
}
code/LanBortalBeansClient/ejbModule/fi/insomnia/bortal/beans/UserBeanLocal.java
View file @
dc66d75
...
@@ -12,6 +12,7 @@ import fi.insomnia.bortal.model.User;
...
@@ -12,6 +12,7 @@ import fi.insomnia.bortal.model.User;
import
fi.insomnia.bortal.model.UserImage
;
import
fi.insomnia.bortal.model.UserImage
;
import
fi.insomnia.bortal.utilities.SearchQuery
;
import
fi.insomnia.bortal.utilities.SearchQuery
;
import
fi.insomnia.bortal.utilities.SearchResult
;
import
fi.insomnia.bortal.utilities.SearchResult
;
import
fi.insomnia.bortal.utilities.UserSearchQuery
;
@Local
@Local
public
interface
UserBeanLocal
{
public
interface
UserBeanLocal
{
...
@@ -71,4 +72,6 @@ public interface UserBeanLocal {
...
@@ -71,4 +72,6 @@ public interface UserBeanLocal {
EventUser
getUserByBarcode
(
String
barcode
);
EventUser
getUserByBarcode
(
String
barcode
);
SearchResult
<
EventUser
>
getThisEventsUsers
(
UserSearchQuery
searchQuery
);
}
}
code/LanBortalWeb/WebContent/resources/cditools/user/edit.xhtml
View file @
dc66d75
This diff is collapsed.
Click to expand it.
code/LanBortalWeb/WebContent/resources/style/insomnia2/css/general.css
View file @
dc66d75
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
.userdata_popup
{
.userdata_popup
{
position
:
absolute
;
position
:
absolute
;
border
:
1px
solid
black
;
border
:
1px
solid
black
;
backgrond
:
white
;
backgro
u
nd
:
white
;
border-radius
:
3px
;
border-radius
:
3px
;
display
:
none
;
display
:
none
;
...
...
code/LanBortalWeb/WebContent/useradmin/list.xhtml
View file @
dc66d75
<!DOCTYPE html
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html
xmlns=
"http://www.w3.org/1999/xhtml"
xmlns:ui=
"http://java.sun.com/jsf/facelets"
<html
xmlns=
"http://www.w3.org/1999/xhtml"
xmlns:ui=
"http://java.sun.com/jsf/facelets"
xmlns:h=
"http://java.sun.com/jsf/html"
xmlns:users=
"http://java.sun.com/jsf/composite/cditools/user"
xmlns:h=
"http://java.sun.com/jsf/html"
xmlns:users=
"http://java.sun.com/jsf/composite/cditools/user"
xmlns:tools=
"http://java.sun.com/jsf/composite/cditools"
xmlns:f=
"http://java.sun.com/jsf/core"
>
xmlns:tools=
"http://java.sun.com/jsf/composite/cditools"
xmlns:f=
"http://java.sun.com/jsf/core"
>
<h:body>
<h:body>
<ui:composition
template=
"/layout/#{sessionHandler.layout}/template.xhtml"
>
<ui:composition
template=
"/layout/#{sessionHandler.layout}/template.xhtml"
>
<f:metadata>
<f:metadata>
...
@@ -16,18 +14,22 @@
...
@@ -16,18 +14,22 @@
<f:event
type=
"preRenderView"
listener=
"#{userSearchView.initView}"
/>
<f:event
type=
"preRenderView"
listener=
"#{userSearchView.initView}"
/>
</f:metadata>
</f:metadata>
<ui:param
name=
"thispage"
value=
"page.user.create"
/>
<ui:define
name=
"content"
>
<ui:define
name=
"content"
>
<h1>
#{i18n['userlist.header']}
</h1>
<h1>
#{i18n['userlist.header']}
</h1>
<h:form>
<h:form>
<h:outputLabel
for=
"onlythisevent"
value=
"#{i18n['userlist.onlythisevent']}"
/>
<h:selectBooleanCheckbox
id=
"onlythisevent"
value=
"#{userSearchView.searchQuery.onlyThisEvent}"
/>
<br
/>
<h:inputText
value=
"#{userSearchView.search}"
/>
<h:inputText
value=
"#{userSearchView.search}"
/>
<h:commandButton
value=
"#{i18n['userlist.search']}"
action=
"#{userSearchView.newSearch()}"
/>
<h:commandButton
value=
"#{i18n['userlist.search']}"
action=
"#{userSearchView.newSearch()}"
/>
</h:form>
</h:form>
<p>
<p>
<users:list
/>
<users:list
rendered=
"#{!userSearchView.searchQuery.onlyThisEvent}"
/>
<users:eventuserlist
rendered=
"#{userSearchView.searchQuery.onlyThisEvent}"
/>
</p>
</p>
<p>
<p>
<tools:paginationHeader
view=
"#{userSearchView}"
/>
<tools:paginationHeader
view=
"#{userSearchView}"
/>
</p>
</p>
</ui:define>
</ui:define>
</ui:composition>
</ui:composition>
...
...
code/LanBortalWeb/src/fi/insomnia/bortal/web/cdiview/PaginationView.java
View file @
dc66d75
...
@@ -34,10 +34,10 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
...
@@ -34,10 +34,10 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
public
String
addToPage
(
Integer
count
)
{
public
String
addToPage
(
Integer
count
)
{
pagechangeCallback
();
pagechangeCallback
();
searchQuery
.
addPage
(
count
);
getSearchQuery
()
.
addPage
(
count
);
if
(
searchQuery
.
getPage
()
>=
pagecount
)
{
if
(
getSearchQuery
()
.
getPage
()
>=
pagecount
)
{
searchQuery
.
setPage
(
pagecount
.
intValue
()
-
1
);
getSearchQuery
()
.
setPage
(
pagecount
.
intValue
()
-
1
);
}
}
return
null
;
return
null
;
}
}
...
@@ -51,14 +51,14 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
...
@@ -51,14 +51,14 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
public
String
gotoFirstpage
()
{
public
String
gotoFirstpage
()
{
// logger.info("Setting page to first page");
// logger.info("Setting page to first page");
pagechangeCallback
();
pagechangeCallback
();
searchQuery
.
setPage
(
0
);
getSearchQuery
()
.
setPage
(
0
);
return
null
;
return
null
;
}
}
public
String
gotoLastpage
()
{
public
String
gotoLastpage
()
{
// logger.info("Setting page to last page");
// logger.info("Setting page to last page");
pagechangeCallback
();
pagechangeCallback
();
searchQuery
.
setPage
(
pagecount
.
intValue
()
-
1
);
getSearchQuery
()
.
setPage
(
pagecount
.
intValue
()
-
1
);
return
null
;
return
null
;
}
}
...
@@ -72,20 +72,20 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
...
@@ -72,20 +72,20 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
@Override
@Override
public
Integer
getPage
()
{
public
Integer
getPage
()
{
return
searchQuery
.
getPage
();
return
getSearchQuery
()
.
getPage
();
}
}
public
void
setPage
(
Integer
page
)
{
public
void
setPage
(
Integer
page
)
{
searchQuery
.
setPage
(
page
);
getSearchQuery
()
.
setPage
(
page
);
}
}
@Override
@Override
public
Integer
getPagesize
()
{
public
Integer
getPagesize
()
{
return
searchQuery
.
getPagesize
();
return
getSearchQuery
()
.
getPagesize
();
}
}
public
void
setPagesize
(
Integer
pagesize
)
{
public
void
setPagesize
(
Integer
pagesize
)
{
searchQuery
.
setPagesize
(
pagesize
);
getSearchQuery
()
.
setPagesize
(
pagesize
);
}
}
@Override
@Override
...
@@ -95,7 +95,7 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
...
@@ -95,7 +95,7 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
public
void
setResultcount
(
Long
resultcount
)
{
public
void
setResultcount
(
Long
resultcount
)
{
this
.
resultcount
=
resultcount
;
this
.
resultcount
=
resultcount
;
pagecount
=
((
resultcount
+
searchQuery
.
getPagesize
()
-
1
)
/
searchQuery
.
getPagesize
());
pagecount
=
((
resultcount
+
getSearchQuery
().
getPagesize
()
-
1
)
/
getSearchQuery
()
.
getPagesize
());
}
}
@Override
@Override
...
@@ -108,19 +108,19 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
...
@@ -108,19 +108,19 @@ public abstract class PaginationView<T extends ModelInterface> extends GenericCD
}
}
public
String
getSort
()
{
public
String
getSort
()
{
return
searchQuery
.
getSort
();
return
getSearchQuery
()
.
getSort
();
}
}
public
void
setSort
(
String
sort
)
{
public
void
setSort
(
String
sort
)
{
searchQuery
.
setSort
(
sort
);
getSearchQuery
()
.
setSort
(
sort
);
}
}
public
String
getSearch
()
{
public
String
getSearch
()
{
return
searchQuery
.
getSearch
();
return
getSearchQuery
()
.
getSearch
();
}
}
public
void
setSearch
(
String
search
)
{
public
void
setSearch
(
String
search
)
{
searchQuery
.
setSearch
(
search
);
getSearchQuery
()
.
setSearch
(
search
);
}
}
public
String
newSearch
()
{
public
String
newSearch
()
{
...
...
code/LanBortalWeb/src/fi/insomnia/bortal/web/cdiview/user/UserSearchView.java
View file @
dc66d75
package
fi
.
insomnia
.
bortal
.
web
.
cdiview
.
user
;
package
fi
.
insomnia
.
bortal
.
web
.
cdiview
.
user
;
import
java.util.List
;
import
javax.ejb.EJB
;
import
javax.ejb.EJB
;
import
javax.enterprise.context.RequestScoped
;
import
javax.enterprise.context.RequestScoped
;
import
javax.inject.Named
;
import
javax.inject.Named
;
import
fi.insomnia.bortal.beans.UserBeanLocal
;
import
fi.insomnia.bortal.beans.UserBeanLocal
;
import
fi.insomnia.bortal.enums.apps.UserPermission
;
import
fi.insomnia.bortal.enums.apps.UserPermission
;
import
fi.insomnia.bortal.model.EventUser
;
import
fi.insomnia.bortal.model.User
;
import
fi.insomnia.bortal.model.User
;
import
fi.insomnia.bortal.utilities.SearchResult
;
import
fi.insomnia.bortal.utilities.UserSearchQuery
;
import
fi.insomnia.bortal.web.cdiview.PaginationView
;
import
fi.insomnia.bortal.web.cdiview.PaginationView
;
@Named
@Named
...
@@ -20,12 +25,37 @@ public class UserSearchView extends PaginationView<User> {
...
@@ -20,12 +25,37 @@ public class UserSearchView extends PaginationView<User> {
@EJB
@EJB
private
transient
UserBeanLocal
userbean
;
private
transient
UserBeanLocal
userbean
;
private
List
<
EventUser
>
eventUserResults
;
private
UserSearchQuery
usersearch
=
new
UserSearchQuery
();
public
void
initView
()
{
public
void
initView
()
{
if
(
requirePermissions
(
permbean
.
hasPermission
(
UserPermission
.
VIEW_ALL
)))
{
if
(
requirePermissions
(
permbean
.
hasPermission
(
UserPermission
.
VIEW_ALL
)))
{
super
.
setResult
(
userbean
.
getEventUsers
(
getSearchQuery
()));
if
(
usersearch
.
isOnlyThisEvent
()
||
usersearch
.
getSearch
()
==
null
||
usersearch
.
getSearch
().
isEmpty
())
{
usersearch
.
setOnlyThisEvent
(
true
);
SearchResult
<
EventUser
>
eventusers
=
userbean
.
getThisEventsUsers
(
getSearchQuery
());
this
.
setResultcount
(
eventusers
.
getResultcount
());
this
.
setEventUserResults
(
eventusers
.
getResults
());
}
else
{
super
.
setResult
(
userbean
.
getEventUsers
(
getSearchQuery
()));
}
}
}
}
}
@Override
public
UserSearchQuery
getSearchQuery
()
{
return
usersearch
;
}
public
List
<
EventUser
>
getEventUserResults
()
{
return
eventUserResults
;
}
public
void
setEventUserResults
(
List
<
EventUser
>
eventUserResults
)
{
this
.
eventUserResults
=
eventUserResults
;
}
}
}
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment