Skip to content

Commit e213a4f

Browse files
working on #157
1 parent 12bae5e commit e213a4f

File tree

11 files changed

+151
-42
lines changed

11 files changed

+151
-42
lines changed

src/main/java/org/woehlke/twitterwall/frontend/controller/UserController.java

Lines changed: 36 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -184,26 +184,46 @@ public String getFollower(
184184
return "user/list/follower";
185185
}
186186

187-
@RequestMapping("/list/notyetonlist")
188-
public String getNotYetOnList(
189-
@RequestParam(name= "page", defaultValue=""+ControllerHelper.FIRST_PAGE_NUMBER) int page,
190-
Model model
187+
@RequestMapping("/list/notyetfollower")
188+
public String getNotYetFollower(
189+
@RequestParam(name= "page", defaultValue=""+ControllerHelper.FIRST_PAGE_NUMBER) int page,
190+
Model model
191191
) {
192192
Pageable pageRequest = new PageRequest(
193-
page,
194-
frontendProperties.getPageSize(),
195-
Sort.Direction.ASC,
196-
"screenName"
193+
page,
194+
frontendProperties.getPageSize(),
195+
Sort.Direction.ASC,
196+
"screenName"
197197
);
198-
model.addAttribute("users", userService.getNotYetOnList(pageRequest));
199-
String symbol = Symbols.USER_NOT_YET_ON_LIST.toString();
200-
String title = "Not Yet On List";
198+
Page<User> users = userService.getNotYetFollower(pageRequest);
199+
model.addAttribute("users", users);
200+
String symbol = Symbols.USER_FOLLOWER.toString();
201+
String title = "Follower";
201202
model = controllerHelper.setupPage(model, title, subtitle, symbol);
202-
return "user/list/onlistNotYet";
203+
return "user/list/followerNotYet";
203204
}
204205

205206
@RequestMapping("/list/onlist")
206207
public String getOnList(
208+
@RequestParam(name= "page", defaultValue=""+ControllerHelper.FIRST_PAGE_NUMBER) int page,
209+
Model model
210+
) {
211+
Pageable pageRequest = new PageRequest(
212+
page,
213+
frontendProperties.getPageSize(),
214+
Sort.Direction.ASC,
215+
"screenName"
216+
);
217+
Page<User> usersOnList = userService.getOnList(pageRequest);
218+
model.addAttribute("users", usersOnList);
219+
String symbol = Symbols.LEAF.toString();
220+
String title = "On List";
221+
model = controllerHelper.setupPage(model, title, subtitle, symbol);
222+
return "user/list/onlist";
223+
}
224+
225+
@RequestMapping("/list/notyetonlist")
226+
public String getNotYetOnList(
207227
@RequestParam(name= "page", defaultValue=""+ControllerHelper.FIRST_PAGE_NUMBER) int page,
208228
Model model
209229
) {
@@ -213,12 +233,11 @@ public String getOnList(
213233
Sort.Direction.ASC,
214234
"screenName"
215235
);
216-
Page<User> usersOnList = userService.getOnList(pageRequest);
217-
model.addAttribute("users", usersOnList);
218-
String symbol = Symbols.LEAF.toString();
219-
String title = "On List";
236+
model.addAttribute("users", userService.getNotYetOnList(pageRequest));
237+
String symbol = Symbols.USER_NOT_YET_ON_LIST.toString();
238+
String title = "Not Yet On List";
220239
model = controllerHelper.setupPage(model, title, subtitle, symbol);
221-
return "user/list/onlist";
240+
return "user/list/onlistNotYet";
222241
}
223242

224243
private static final Logger log = LoggerFactory.getLogger(UserController.class);

src/main/java/org/woehlke/twitterwall/frontend/controller/common/GlobalExceptionHandler.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@
1818
@ControllerAdvice
1919
public class GlobalExceptionHandler {
2020

21-
private static final Logger log = LoggerFactory.getLogger(GlobalExceptionHandler.class);
22-
2321

2422
@ExceptionHandler(Throwable.class)
2523
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
@@ -63,4 +61,7 @@ public GlobalExceptionHandler(ControllerHelper controllerHelper) {
6361
}
6462

6563
private final ControllerHelper controllerHelper;
64+
65+
private static final Logger log = LoggerFactory.getLogger(GlobalExceptionHandler.class);
66+
6667
}

src/main/java/org/woehlke/twitterwall/oodm/entities/User.java

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,17 +36,29 @@
3636
name = "User.findTweetingUsers",
3737
query = "select t from User as t where t.taskInfo.updatedByFetchTweetsFromTwitterSearch=true"
3838
),
39+
@NamedQuery(
40+
name = "User.findFollower",
41+
query = "select t from User as t where t.follower=true"
42+
),
43+
@NamedQuery(
44+
name = "User.findNotYetFollower",
45+
query = "select t from User as t where t.follower=false"
46+
),
47+
@NamedQuery(
48+
name = "User.findFriendUsers",
49+
query = "select t from User as t where t.friend=true"
50+
),
3951
@NamedQuery(
4052
name = "User.findNotYetFriendUsers",
41-
query = "select t from User as t where t.following=false"
53+
query = "select t from User as t where t.friend=false"
4254
),
4355
@NamedQuery(
44-
name = "User.findNotYetOnList",
45-
query = "select t from User as t where t.taskInfo.updatedByFetchUsersFromDefinedUserList=false and t.taskInfo.updatedByFetchTweetsFromTwitterSearch=true"
56+
name = "User.findOnList",
57+
query = "select t from User as t where t.taskInfo.updatedByFetchUsersFromDefinedUserList=true"
4658
),
4759
@NamedQuery(
48-
name = "User.findOnList",
49-
query = "select t from User as t where t.taskInfo.updatedByFetchUsersFromDefinedUserList=true"
60+
name = "User.findNotYetOnList",
61+
query = "select t from User as t where t.taskInfo.updatedByFetchUsersFromDefinedUserList=false and t.taskInfo.updatedByFetchTweetsFromTwitterSearch=true"
5062
),
5163
@NamedQuery(
5264
name="User.getUsersForHashTag",

src/main/java/org/woehlke/twitterwall/oodm/repositories/UserRepository.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,15 @@ public interface UserRepository extends DomainRepository<User>,UserRepositoryCus
2222
@Query(name="User.findTweetingUsers")
2323
Page<User> findTweetingUsers(Pageable pageRequest);
2424

25+
@Query(name="User.findFollower")
26+
Page<User> findFollower(Pageable pageRequest);
27+
28+
@Query(name="User.findNotYetFollower")
29+
Page<User> findNotYetFollower(Pageable pageRequest);
30+
31+
@Query(name="User.findFriendUsers")
32+
Page<User> findFriendUsers(Pageable pageRequest);
33+
2534
@Query(name="User.findNotYetFriendUsers")
2635
Page<User> findNotYetFriendUsers(Pageable pageRequest);
2736

@@ -57,8 +66,4 @@ public interface UserRepository extends DomainRepository<User>,UserRepositoryCus
5766

5867
@Query(name="User.countAllUser2Url",nativeQuery=true)
5968
long countAllUser2Url();
60-
61-
Page<User> findByFriendIsTrue(Pageable pageRequest);
62-
63-
Page<User> findByFollowerIsTrue(Pageable pageRequest);
6469
}

src/main/java/org/woehlke/twitterwall/oodm/repositories/custom/impl/UserRepositoryImpl.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,11 @@ public User findByUniqueId(User domainObject) {
4343
}
4444
}
4545

46+
@Override
47+
public Page<User> findNotYetFollower(Pageable pageRequest) {
48+
return null;
49+
}
50+
4651
@Override
4752
public Page<Object2Entity> findAllUser2HashTag(Pageable pageRequest) {
4853
String pagerSQL = " OFFSET "+pageRequest.getOffset()+" LIMIT "+pageRequest.getPageSize();

src/main/java/org/woehlke/twitterwall/oodm/service/UserService.java

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,6 @@ public interface UserService extends DomainObjectWithEntitiesService<User>,Domai
1818

1919
Page<User> getTweetingUsers(Pageable pageRequest);
2020

21-
Page<User> getNotYetFriendUsers(Pageable pageRequest);
22-
23-
Page<User> getNotYetOnList(Pageable pageRequest);
24-
25-
Page<User> getOnList(Pageable pageRequest);
26-
2721
Page<String> getAllDescriptions(Pageable pageRequest);
2822

2923
Page<Long> getAllTwitterIds(Pageable pageRequest);
@@ -32,8 +26,16 @@ public interface UserService extends DomainObjectWithEntitiesService<User>,Domai
3226

3327
Page<User> getFriends(Pageable pageRequest);
3428

29+
Page<User> getNotYetFriendUsers(Pageable pageRequest);
30+
3531
Page<User> getFollower(Pageable pageRequest);
3632

33+
Page<User> getNotYetFollower(Pageable pageRequest);
34+
35+
Page<User> getOnList(Pageable pageRequest);
36+
37+
Page<User> getNotYetOnList(Pageable pageRequest);
38+
3739
Page<Object2Entity> findAllUser2HashTag(Pageable pageRequest);
3840

3941
Page<Object2Entity> findAllUser2Media(Pageable pageRequest);
@@ -43,4 +45,7 @@ public interface UserService extends DomainObjectWithEntitiesService<User>,Domai
4345
Page<Object2Entity> findAllUser2Url(Pageable pageRequest);
4446

4547
Page<Object2Entity> findAllUser2TickerSymbol(Pageable pageRequest);
48+
49+
50+
4651
}

src/main/java/org/woehlke/twitterwall/oodm/service/impl/UserServiceImpl.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,17 @@ public Page<User> getUsersForHashTag(HashTag hashTag, Pageable pageRequest) {
8383

8484
@Override
8585
public Page<User> getFriends(Pageable pageRequest) {
86-
return userRepository.findByFriendIsTrue(pageRequest);
86+
return userRepository.findFriendUsers(pageRequest);
8787
}
8888

8989
@Override
9090
public Page<User> getFollower(Pageable pageRequest) {
91-
return userRepository.findByFollowerIsTrue(pageRequest);
91+
return userRepository.findFollower(pageRequest);
92+
}
93+
94+
@Override
95+
public Page<User> getNotYetFollower(Pageable pageRequest) {
96+
return userRepository.findNotYetFollower(pageRequest);
9297
}
9398

9499
@Override

src/main/resources/templates/application/management.html

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ <h3>Your Options:</h3>
2727
<i class="fa fa-plus-square" aria-hidden="true"></i>
2828
<span>List Users, who are Follower</span>
2929
</a>
30+
<a class="list-group-item" href="/user/list/notyetfollower" th:href="@{/user/list/notyetfollower}">
31+
<i class="fa fa-plus-square" aria-hidden="true"></i>
32+
<span>List Users, who are Not Yet Follower</span>
33+
</a>
3034
<a class="list-group-item" href="/user/list/friends" th:href="@{/user/list/friends}">
3135
<i class="fa fa-plus-square" aria-hidden="true"></i>
3236
<span>List Users, who are Friends</span>

src/main/resources/templates/layoutMain.html

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,12 @@
151151
Users, Follower
152152
</a>
153153
</li>
154+
<li>
155+
<a href="/user/list/notyetfollower" th:href="@{/user/list/notyetfollower}">
156+
<i class="fa fa-users" aria-hidden="true"></i>
157+
Users, Not Yet Follower
158+
</a>
159+
</li>
154160
<li>
155161
<a href="/user/list/friends" th:href="@{/user/list/friends}">
156162
<i class="fa fa-users" aria-hidden="true"></i>
@@ -164,15 +170,15 @@
164170
</a>
165171
</li>
166172
<li>
167-
<a href="/user/list/notyetonlist" th:href="@{/user/list/notyetonlist}">
173+
<a href="/user/list/onlist" th:href="@{/user/list/onlist}">
168174
<i class="fa fa-users" aria-hidden="true"></i>
169-
Users, Not Yet on Defined User List
175+
Users, on Defined User List
170176
</a>
171177
</li>
172178
<li>
173-
<a href="/user/list/onlist" th:href="@{/user/list/onlist}">
179+
<a href="/user/list/notyetonlist" th:href="@{/user/list/notyetonlist}">
174180
<i class="fa fa-users" aria-hidden="true"></i>
175-
Users, on Defined User List
181+
Users, Not Yet on Defined User List
176182
</a>
177183
</li>
178184
</ul>
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<!DOCTYPE html>
2+
<html xmlns="http://www.w3.org/1999/xhtml"
3+
xmlns:th="http://www.thymeleaf.org"
4+
xmlns:sec="http://www.thymeleaf.org/extras/spring-security">
5+
<head th:include="layoutMain :: tw-head">
6+
</head>
7+
<body id="page-top" class="page-2" style="padding-top:50px; padding-bottom:200px;">
8+
<header th:include="layoutMain :: tw-header" ></header>
9+
<main class="page-content">
10+
<div class="container">
11+
<div class="tw-pager-above">
12+
<div class="row">
13+
<div class="col-md-12">
14+
<span class="tw-pager-arrow tw-pager-up" th:if="${users.hasPrevious()}">
15+
<a href="" th:href="@{|/user/list/notyetfollower?page=${users.previousPageable().pageNumber}|}">
16+
<span>
17+
<i class="fa fa-chevron-circle-up" aria-hidden="true"></i>
18+
</span>
19+
</a>
20+
</span>
21+
</div>
22+
</div>
23+
</div>
24+
<div th:include="layoutUserList :: tw-user-list" ></div>
25+
<div class="tw-pager-below">
26+
<div class="row">
27+
<div class="col-md-12">
28+
<span class="tw-pager-arrow tw-pager-down" th:if="${users.hasNext()}">
29+
<a href="" th:href="@{|/user/list/notyetfollower?page=${users.nextPageable().pageNumber}|}" >
30+
<span>
31+
<i class="fa fa-chevron-circle-down" aria-hidden="true"></i>
32+
</span>
33+
</a>
34+
</span>
35+
</div>
36+
</div>
37+
</div>
38+
</div>
39+
</main>
40+
41+
<section th:include="layoutMain :: tw-history-back-section" >
42+
</section>
43+
44+
<footer th:include="layoutMain :: footer" >
45+
</footer>
46+
</body>
47+
</html>

0 commit comments

Comments
 (0)