|
| 1 | +package ru.practicum.explore.api.admin.controller; |
| 2 | + |
| 3 | +import jakarta.servlet.http.HttpServletRequest; |
| 4 | +import jakarta.transaction.Transactional; |
| 5 | +import lombok.RequiredArgsConstructor; |
| 6 | +import org.springframework.format.annotation.DateTimeFormat; |
| 7 | +import org.springframework.web.bind.annotation.*; |
| 8 | +import ru.practicum.dto.event.EventFullDto; |
| 9 | +import ru.practicum.dto.event.UpdateEventAdminRequest; |
| 10 | +import ru.practicum.explore.api.admin.service.AdminEventService; |
| 11 | + |
| 12 | +import java.time.LocalDateTime; |
| 13 | +import java.util.List; |
| 14 | + |
| 15 | +@RestController |
| 16 | +@RequiredArgsConstructor |
| 17 | +@RequestMapping("/admin/events") |
| 18 | +public class AdminEventController { |
| 19 | + private final AdminEventService service; |
| 20 | + |
| 21 | + @Transactional |
| 22 | + @GetMapping |
| 23 | + public List<EventFullDto> findAll(HttpServletRequest request, |
| 24 | + @RequestParam(required = false) List<Long> users, |
| 25 | + @RequestParam(required = false) List<String> states, |
| 26 | + @RequestParam(required = false) List<Long> categories, |
| 27 | + @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| 28 | + LocalDateTime rangeStart, |
| 29 | + @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| 30 | + LocalDateTime rangeEnd, |
| 31 | + @RequestParam(defaultValue = "0") Integer from, |
| 32 | + @RequestParam(defaultValue = "10") Integer size) { |
| 33 | + return service.findAll(request, users, states, categories, rangeStart, rangeEnd, from, size); |
| 34 | + } |
| 35 | + |
| 36 | + @PatchMapping("/{eventId}") |
| 37 | + public EventFullDto patch(@PathVariable long eventId, |
| 38 | + @RequestBody final UpdateEventAdminRequest data) { |
| 39 | + return service.updateEvent(eventId, data); |
| 40 | + } |
| 41 | +} |
0 commit comments