diff --git a/src/main/java/careerfestival/career/mainPage/controller/MainPageController.java b/src/main/java/careerfestival/career/mainPage/controller/MainPageController.java index 5212803..92d59dd 100644 --- a/src/main/java/careerfestival/career/mainPage/controller/MainPageController.java +++ b/src/main/java/careerfestival/career/mainPage/controller/MainPageController.java @@ -201,7 +201,11 @@ public ResponseEntity> getEventsFilter( } else { // 로그인 하지 않은 사용자일 경우 (필터링 여부) if(city !=null || category != null || keywordName != null){ // 필터링이 된 경우 try { - Long regionId = mainPageService.getRegionIdFilter(city, addressLine); + Long regionId = null; + if (city != null) { + regionId = mainPageService.getRegionIdFilter(city, addressLine); + } + // 1. 조회순으로 보여지는 행사 9개 Page mainPageFestivalListResponseDtos = mainPageService.getEventsFiltered(category, keywordName, regionId, pageable); @@ -209,7 +213,6 @@ public ResponseEntity> getEventsFilter( List mainPageResponseDtoNames = mainPageService.getEventNames(); // 3. (219명의 주최자) 정보 입력 공간 int countOrganizer = mainPageService.getOrganizerCount(); - // 4. 주최자 정보 페이지 형태 반환 Pageable organizerPageable = PageRequest.of(0, 10, Sort.by("countEvent").descending()); Page mainPageOrganizerListDtos = mainPageService.getOrganizers(organizerPageable); @@ -234,10 +237,17 @@ public ResponseEntity> getEventsFilter( List mainPageResponseDtoNames = mainPageService.getEventNames(); // 2. 조회수에 의한 정렬 리스트 List mainPageResponseDtoViews = mainPageService.getEventsHitsDesc(); + // 3. (219명의 주최자) 정보 입력 공간 + int countOrganizer = mainPageService.getOrganizerCount(); + // 4. 주최자 정보 페이지 형태 반환 + Pageable organizerPageable = PageRequest.of(0, 10, Sort.by("countEvent").descending()); + Page mainPageOrganizerListDtos = mainPageService.getOrganizers(organizerPageable); Map mainPageResponseDtoObjectMap = new HashMap<>(); mainPageResponseDtoObjectMap.put("eventViews", mainPageResponseDtoViews); mainPageResponseDtoObjectMap.put("eventNames", mainPageResponseDtoNames); + mainPageResponseDtoObjectMap.put("countOrganizer", countOrganizer); + mainPageResponseDtoObjectMap.put("organizers", mainPageOrganizerListDtos); return ResponseEntity.ok().body(mainPageResponseDtoObjectMap); } catch (IllegalArgumentException e) { diff --git a/src/main/java/careerfestival/career/register/service/RegisterService.java b/src/main/java/careerfestival/career/register/service/RegisterService.java index 1a85e89..7a3ccfa 100644 --- a/src/main/java/careerfestival/career/register/service/RegisterService.java +++ b/src/main/java/careerfestival/career/register/service/RegisterService.java @@ -127,29 +127,11 @@ public void registerEvent(String email, MultipartFile eventMainImage, MultipartF try { if(!eventInformImage.isEmpty()){ - // 이미지 리사이징 - BufferedImage resizedImage = ImageUtils.resizeImage(eventInformImage, 600, 400); - - // BufferedImage를 byte[]로 변환 - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - ImageIO.write(resizedImage, getFileExtension(eventInformImage.getOriginalFilename()), baos); - byte[] resizedImageBytes = baos.toByteArray(); - - // byte[]를 MultipartFile로 변환 - MultipartFile multipartFile = new MockMultipartFile( - "resized_" + eventInformImage.getOriginalFilename(), - eventInformImage.getOriginalFilename(), - eventInformImage.getContentType(), - resizedImageBytes - ); - // S3에 업로드하고 URL 받기 - String storedFileName = s3Uploader.upload(multipartFile, "event_inform"); - + String storedFileName = s3Uploader.upload(eventInformImage, "event_inform"); // 이벤트에 이미지 URL 설정하고 저장 event.setEventInformFileUrl(storedFileName); organizer.updateCountEvent(); - eventRepository.save(event); } else { throw new Exception(); } @@ -160,9 +142,6 @@ public void registerEvent(String email, MultipartFile eventMainImage, MultipartF } - - - // 주최자가 등록한 행사 목록 반환 public Page getEventList(Long organizerId, Pageable pageable) { Page events = eventRepository.findPageByOrganizerId(organizerId, pageable);