@@ -76,32 +76,6 @@ public EventFullDto getUserEvent(Long userId, Long eventId) {
7676 return EventMapper .toEventFullDto (event , 0L , 0L );
7777 }
7878
79- // @Override
80- // @Transactional
81- // public EventFullDto updateUserEvent(Long userId, Long eventId, UpdateEventUserRequest request) {
82- // Event event = eventRepository.findById(eventId)
83- // .orElseThrow(() -> new NotFoundException("Событие с id=" + eventId + " не найдено"));
84- // if (!event.getInitiator().getId().equals(userId)) {
85- // throw new NotFoundException("Событие не принадлежит пользователю");
86- // }
87- // if (event.getState() != EventState.PENDING && event.getState() != EventState.CANCELED) {
88- // throw new ConflictException("Можно изменять только события в статусе PENDING или CANCELED");
89- // }
90- // if (request.getEventDate() != null && request.getEventDate().isBefore(LocalDateTime.now().plusHours(2))) {
91- // throw new ConflictException("Дата события должна быть не ранее чем через 2 часа от текущего момента");
92- // }
93- // EventMapper.updateEventFromUserRequest(request, event);
94- // if (request.getStateAction() != null) {
95- // if (request.getStateAction().equals("SEND_TO_REVIEW")) {
96- // event.setState(EventState.PENDING);
97- // } else if (request.getStateAction().equals("CANCEL_REVIEW")) {
98- // event.setState(EventState.CANCELED);
99- // }
100- // }
101- // event = eventRepository.save(event);
102- // return EventMapper.toEventFullDto(event, 0L, 0L);
103- // }
104-
10579 @ Override
10680 @ Transactional
10781 public EventFullDto updateUserEvent (Long userId , Long eventId , UpdateEventUserRequest request ) {
@@ -141,47 +115,12 @@ public EventFullDto updateUserEvent(Long userId, Long eventId, UpdateEventUserRe
141115 return EventMapper .toEventFullDto (event , 0L , 0L );
142116 }
143117
144- // @Override
145- // @Transactional(readOnly = true)
146- // public List<EventFullDto> getEventsForAdmin(AdminEventSearchParams params) {
147- // int from = params.getFrom();
148- // int size = params.getSize();
149- // if (size <= 0 || from < 0) {
150- // throw new IllegalArgumentException("Параметры from и size должны быть > 0");
151- // }
152- // List<EventState> stateEnums = null;
153- // if (params.getStates() != null && !params.getStates().isEmpty()) {
154- // stateEnums = params.getStates().stream()
155- // .map(EventState::valueOf)
156- // .collect(Collectors.toList());
157- // }
158- //
159- // Pageable pageable = PageRequest.of(from / size, size, Sort.by("id"));
160- // Page<Event> page = eventRepository.searchEventsAdmin(
161- // params.getUsers(),
162- // stateEnums,
163- // params.getCategories(),
164- // params.getRangeStart(),
165- // params.getRangeEnd(),
166- // pageable);
167- //
168- // List<Event> events = page.getContent();
169- // List<Long> eventIds = events.stream().map(Event::getId).collect(Collectors.toList());
170- // Map<Long, Long> confirmedRequestsMap = eventRepository.countConfirmedRequestsBatch(eventIds);
171- //
172- // return events.stream()
173- // .map(event -> EventMapper.toEventFullDto(event, 0L, confirmedRequestsMap.getOrDefault(event.getId(), 0L)))
174- // .collect(Collectors.toList());
175- // }
176-
177118 @ Override
178119 @ Transactional (readOnly = true )
179120 public List <EventFullDto > getEventsForAdmin (AdminEventSearchParams params ) {
180121 int from = params .getFrom ();
181122 int size = params .getSize ();
182- if (size <= 0 || from < 0 ) {
183- throw new IllegalArgumentException ("Параметры from и size должны быть > 0" );
184- }
123+
185124 List <EventState > stateEnums = null ;
186125 if (params .getStates () != null && !params .getStates ().isEmpty ()) {
187126 stateEnums = params .getStates ().stream ()
@@ -225,13 +164,11 @@ public EventFullDto updateEventByAdmin(Long eventId, UpdateEventAdminRequest req
225164 Event event = eventRepository .findById (eventId )
226165 .orElseThrow (() -> new NotFoundException ("Событие с id=" + eventId + " не найдено" ));
227166
228- // 1. Обработка изменения статуса (публикация/отклонение)
229167 if (request .getStateAction () != null ) {
230168 if (request .getStateAction ().equals ("PUBLISH_EVENT" )) {
231169 if (event .getState () != EventState .PENDING ) {
232170 throw new ConflictException ("Событие можно публиковать только в статусе PENDING" );
233171 }
234- // Проверка: дата события должна быть не ранее чем за 1 час от текущего момента
235172 if (event .getEventDate ().isBefore (LocalDateTime .now ().plusHours (1 ))) {
236173 throw new ConflictException ("Дата начала события должна быть не ранее чем за час от даты публикации" );
237174 }
@@ -245,31 +182,26 @@ public EventFullDto updateEventByAdmin(Long eventId, UpdateEventAdminRequest req
245182 }
246183 }
247184
248- // 2. Обновление остальных полей (если переданы)
249185 if (request .getAnnotation () != null ) event .setAnnotation (request .getAnnotation ());
250186 if (request .getDescription () != null ) event .setDescription (request .getDescription ());
251187 if (request .getTitle () != null ) event .setTitle (request .getTitle ());
252188 if (request .getParticipantLimit () != null ) event .setParticipantLimit (request .getParticipantLimit ());
253189 if (request .getPaid () != null ) event .setPaid (request .getPaid ());
254190 if (request .getRequestModeration () != null ) event .setRequestModeration (request .getRequestModeration ());
255191
256- // 3. Обновление даты события (с проверкой, специфичной для администратора)
257192 if (request .getEventDate () != null ) {
258- // Для администратора ограничение на изменение даты – не ранее чем за 1 час от текущего момента
259193 if (request .getEventDate ().isBefore (LocalDateTime .now ().plusHours (1 ))) {
260194 throw new ConflictException ("Дата события не может быть раньше чем за 1 час от текущего момента" );
261195 }
262196 event .setEventDate (request .getEventDate ());
263197 }
264198
265- // 4. Обновление категории
266199 if (request .getCategory () != null ) {
267200 Category newCategory = categoryRepository .findById (request .getCategory ())
268201 .orElseThrow (() -> new NotFoundException ("Категория с id=" + request .getCategory () + " не найдена" ));
269202 event .setCategory (newCategory );
270203 }
271204
272- // 5. Обновление локации
273205 if (request .getLocation () != null ) event .setLocation (request .getLocation ());
274206
275207 event = eventRepository .save (event );
@@ -283,9 +215,6 @@ public EventFullDto updateEventByAdmin(Long eventId, UpdateEventAdminRequest req
283215 public List <EventShortDto > getEventsForPublic (PublicEventSearchParams params , HttpServletRequest request ) {
284216 int from = params .getFrom ();
285217 int size = params .getSize ();
286- if (size <= 0 || from < 0 ) {
287- throw new IllegalArgumentException ("Параметры from и size должны быть > 0" );
288- }
289218
290219 try {
291220 statsClient .sendHit (request );
0 commit comments