SEBSERV-343 fixed also page number out of date/range
This commit is contained in:
		
							parent
							
								
									b6a3e7ab64
								
							
						
					
					
						commit
						333d08cfe7
					
				
					 2 changed files with 15 additions and 7 deletions
				
			
		|  | @ -119,9 +119,14 @@ public interface PaginationService { | ||||||
| 
 | 
 | ||||||
|         final List<T> sorted = pageFunction.apply(all); |         final List<T> sorted = pageFunction.apply(all); | ||||||
| 
 | 
 | ||||||
|         final int _pageNumber = getPageNumber(pageNumber); |         int _pageNumber = getPageNumber(pageNumber); | ||||||
|         final int _pageSize = getPageSize(pageSize); |         final int _pageSize = getPageSize(pageSize); | ||||||
|         final int start = (_pageNumber - 1) * _pageSize; | 
 | ||||||
|  |         int start = (_pageNumber - 1) * _pageSize; | ||||||
|  |         if (start >= sorted.size()) { | ||||||
|  |             start = 0; | ||||||
|  |             _pageNumber = 1; | ||||||
|  |         } | ||||||
|         int end = start + _pageSize; |         int end = start + _pageSize; | ||||||
|         if (sorted.size() < end) { |         if (sorted.size() < end) { | ||||||
|             end = sorted.size(); |             end = sorted.size(); | ||||||
|  |  | ||||||
|  | @ -202,15 +202,18 @@ public class ExamRecordDAO { | ||||||
|                                 isNotEqualTo(ExamStatus.ARCHIVED.name())); |                                 isNotEqualTo(ExamStatus.ARCHIVED.name())); | ||||||
|             } |             } | ||||||
| 
 | 
 | ||||||
|             final List<ExamRecord> records = whereClause |             if (filterMap.getExamFromTime() != null) { | ||||||
| 
 |                 whereClause = whereClause | ||||||
|                     .and( |  | ||||||
|                             ExamRecordDynamicSqlSupport.quizName, |  | ||||||
|                             isLikeWhenPresent(filterMap.getSQLWildcard(EXAM.ATTR_QUIZ_NAME))) |  | ||||||
|                         .and( |                         .and( | ||||||
|                                 ExamRecordDynamicSqlSupport.quizEndTime, |                                 ExamRecordDynamicSqlSupport.quizEndTime, | ||||||
|                                 isGreaterThanOrEqualToWhenPresent(filterMap.getExamFromTime()), |                                 isGreaterThanOrEqualToWhenPresent(filterMap.getExamFromTime()), | ||||||
|                             or(ExamRecordDynamicSqlSupport.quizEndTime, isNull())) |                                 or(ExamRecordDynamicSqlSupport.quizEndTime, isNull())); | ||||||
|  |             } | ||||||
|  | 
 | ||||||
|  |             final List<ExamRecord> records = whereClause | ||||||
|  |                     .and( | ||||||
|  |                             ExamRecordDynamicSqlSupport.quizName, | ||||||
|  |                             isLikeWhenPresent(filterMap.getSQLWildcard(EXAM.ATTR_QUIZ_NAME))) | ||||||
|                     .build() |                     .build() | ||||||
|                     .execute(); |                     .execute(); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 anhefti
						anhefti