From c8d382f9189283e3eac1b010a948a01caa5438f1 Mon Sep 17 00:00:00 2001 From: daolove0323 Date: Sun, 10 Nov 2024 03:57:40 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20restClient,=20objectMapper=20util?= =?UTF-8?q?=EB=A1=9C=20=EC=9D=B4=EB=8F=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wouldyouin/Image/api/ImageController.java | 34 +++---- .../AdvertisementImageService.java | 17 ++-- .../application/CurationImageService.java | 9 +- .../Image/application/EventImageService.java | 14 +-- .../Image/application/ImageService.java | 13 ++- .../application/ImageServiceFactory.java | 11 +-- .../Image/application/ImageStorage.java | 83 ------------------ .../application/ImageStorageService.java | 54 ++++++++++++ .../Image/application/MemberImageService.java | 14 ++- .../_common/config/RestClientConfig.java | 14 +++ .../wouldyouin/_common/error/ErrorCode.java | 2 + .../exception/ExtensionParsingException.java | 10 +++ .../wouldyouin/_common/persist/Area.java | 21 ----- .../wouldyouin/_common/persist/Category.java | 12 --- .../wouldyouin/_common/persist/Location.java | 17 ---- .../wouldyouin/_common/util/FileUtil.java | 69 +++++++++++++++ .../wouldyouin/_common/util/KakaoPayUtil.java | 33 +++++++ .../_common/util/RestClientUtil.java | 32 +++++++ .../application/AdvertisementService.java | 6 +- .../advertisement/persist/Advertisement.java | 1 - .../wouldyouin/auth/api/AuthController.java | 10 +-- .../dto/LocalLoginRequest.java | 2 +- .../auth/api/dto/LocalSignupRequest.java | 6 ++ .../dto/SocialTokenResponse.java | 2 +- .../dto/TokenResponse.java | 2 +- .../auth/application/AuthService.java | 14 +-- .../application/dto/LocalSignupRequest.java | 6 -- .../curation/api/dto/CurationResponse.java | 2 +- .../wouldyouin/event/api/EventController.java | 5 +- .../event/api/dto/EventResponse.java | 2 +- .../event/api/dto/EventSliceResponse.java | 3 - .../api/dto/LocationFilter.java | 2 +- .../vo => event/api/dto}/UserLocation.java | 2 +- .../event/application/EventService.java | 4 +- .../wouldyouin/event/persist/Event.java | 1 - .../wouldyouin/like/api/LikeController.java | 4 +- .../dto/LikeResponse.java | 2 +- .../dto/LikeToggleResponse.java | 3 +- .../like/application/LikeService.java | 4 +- .../member/api/CuratorController.java | 4 +- .../wouldyouin/member/api/HostController.java | 4 +- .../member/api/MemberController.java | 8 +- .../dto/MemberResponse.java | 2 +- .../dto/relation/EventHostResponse.java | 2 +- .../relation/ReservationMemberResponse.java | 2 +- .../CurationCuratorResponse.java | 2 +- .../ReviewMemberResponse.java | 2 +- .../request/MemberAdditionalInfoRequest.java | 2 +- .../dto/request/create/HostCreateRequest.java | 3 +- .../request/create/MemberCreateRequest.java | 2 +- .../create/MemberCreateRequestBase.java | 2 +- .../dto/request/edit/CuratorEditRequest.java | 2 +- .../dto/request/edit/HostEditRequest.java | 2 +- .../dto/request/edit/MemberEditRequest.java | 2 +- .../request/edit/MemberEditRequestBase.java | 2 +- .../member/application/BaseMemberService.java | 2 +- .../member/application/CuratorService.java | 4 +- .../member/application/HostService.java | 8 +- .../member/application/MemberService.java | 8 +- .../MemberServiceCommonBehavior.java | 2 +- .../wouldyouin/member/persist/Member.java | 2 +- .../payment/application/PaymentService.java | 63 ++++--------- .../api/dto/ReservationResponse.java | 2 +- .../application/ReservationService.java | 1 - .../review/api/ReviewController.java | 6 +- .../dto/ReviewCreateRequest.java | 2 +- .../dto/ReviewEditRequest.java | 2 +- .../dto/ReviewResponse.java | 4 +- .../review/application/ReviewService.java | 6 +- .../wouldyouin/review/persist/Review.java | 2 +- src/main/resources/application.yml | 14 +-- .../8c1a58a6aced4ab499a9e51ceb09f41b.png | Bin 0 -> 123450 bytes .../ea043b51fc194661964740fa5b08a77d.png | Bin 0 -> 123450 bytes .../WouldYouInApplicationTests.java | 1 - .../cokaen/wouldyouin/_global/TestData.java | 4 +- .../curation/CurationControllerUnitTest.java | 1 - .../event/EventControllerUnitTest.java | 5 +- .../event/EventServiceUnitTest.java | 6 +- .../BaseMemberServiceUnitTest.java | 2 +- .../application/CuratorServiceUnitTest.java | 2 +- .../application/HostServiceUnitTest.java | 6 +- .../application/MemberServiceUnitTest.java | 6 +- 82 files changed, 385 insertions(+), 361 deletions(-) delete mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageStorage.java create mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageStorageService.java create mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/_common/config/RestClientConfig.java create mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/_common/exception/ExtensionParsingException.java delete mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Area.java delete mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Category.java delete mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Location.java create mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/FileUtil.java create mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/KakaoPayUtil.java create mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/RestClientUtil.java rename src/main/java/org/ktc2/cokaen/wouldyouin/auth/{application => api}/dto/LocalLoginRequest.java (54%) create mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/LocalSignupRequest.java rename src/main/java/org/ktc2/cokaen/wouldyouin/auth/{application => api}/dto/SocialTokenResponse.java (66%) rename src/main/java/org/ktc2/cokaen/wouldyouin/auth/{application => api}/dto/TokenResponse.java (79%) delete mode 100644 src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/LocalSignupRequest.java rename src/main/java/org/ktc2/cokaen/wouldyouin/{curation => event}/api/dto/LocationFilter.java (87%) rename src/main/java/org/ktc2/cokaen/wouldyouin/{_common/vo => event/api/dto}/UserLocation.java (94%) rename src/main/java/org/ktc2/cokaen/wouldyouin/like/{application => api}/dto/LikeResponse.java (93%) rename src/main/java/org/ktc2/cokaen/wouldyouin/like/{application => api}/dto/LikeToggleResponse.java (77%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/MemberResponse.java (97%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/relation/EventHostResponse.java (92%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/relation/ReservationMemberResponse.java (77%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/relationResponse/CurationCuratorResponse.java (92%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/relationResponse/ReviewMemberResponse.java (66%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/request/MemberAdditionalInfoRequest.java (81%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/request/create/HostCreateRequest.java (90%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/request/create/MemberCreateRequest.java (94%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/request/create/MemberCreateRequestBase.java (82%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/request/edit/CuratorEditRequest.java (88%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/request/edit/HostEditRequest.java (88%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/request/edit/MemberEditRequest.java (87%) rename src/main/java/org/ktc2/cokaen/wouldyouin/member/{application => api}/dto/request/edit/MemberEditRequestBase.java (81%) rename src/main/java/org/ktc2/cokaen/wouldyouin/review/{application => api}/dto/ReviewCreateRequest.java (87%) rename src/main/java/org/ktc2/cokaen/wouldyouin/review/{application => api}/dto/ReviewEditRequest.java (74%) rename src/main/java/org/ktc2/cokaen/wouldyouin/review/{application => api}/dto/ReviewResponse.java (88%) create mode 100644 src/main/resources/static/images/member/8c1a58a6aced4ab499a9e51ceb09f41b.png create mode 100644 src/main/resources/static/images/member/ea043b51fc194661964740fa5b08a77d.png diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/api/ImageController.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/api/ImageController.java index 9ca3a74d..951dc481 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/api/ImageController.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/api/ImageController.java @@ -1,17 +1,13 @@ package org.ktc2.cokaen.wouldyouin.Image.api; -import java.io.IOException; -import java.nio.file.Files; import java.nio.file.Paths; import java.util.List; import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin.Image.api.dto.ImageResponse; import org.ktc2.cokaen.wouldyouin.Image.application.ImageServiceFactory; +import org.ktc2.cokaen.wouldyouin.Image.application.ImageStorageService; import org.ktc2.cokaen.wouldyouin._common.api.ApiResponse; import org.ktc2.cokaen.wouldyouin._common.api.ApiResponseBody; -import org.ktc2.cokaen.wouldyouin._common.exception.FailToReadImageException; -import org.springframework.core.io.ClassPathResource; -import org.springframework.core.io.Resource; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; @@ -26,37 +22,31 @@ @RestController @RequiredArgsConstructor -@RequestMapping("/api") +@RequestMapping("/api/images") public class ImageController { private final ImageServiceFactory imageServiceFactory; + private final ImageStorageService imageStorageService; + + @GetMapping(value = "/{directory}/{file}", produces = {MediaType.IMAGE_PNG_VALUE, MediaType.IMAGE_JPEG_VALUE}) + public ResponseEntity getImage(@PathVariable String directory, @PathVariable String file) { + return ResponseEntity.status(HttpStatus.OK).body(imageStorageService.readFromDirectory(Paths.get(directory, file))); + } // Todo: authorize - @PostMapping("/images") + @PostMapping public ResponseEntity>> uploadImages( @RequestParam List images, @RequestParam(value = "type") ImageDomain imageDomain) { - return ApiResponse.ok(imageServiceFactory.getImageServiceByImageType(imageDomain).saveAndCreateImages(images)); - } - - // Todo: path 수정, service로 로직이동 - @GetMapping(value = "images/{domain}/{path}", produces = {MediaType.IMAGE_PNG_VALUE, MediaType.IMAGE_JPEG_VALUE}) - public ResponseEntity getImage(@PathVariable String domain, @PathVariable String path) { - try { - Resource resource = new ClassPathResource("static/images/" + domain + "/" + path); - System.out.println(Paths.get("static/images", domain, path)); - return ResponseEntity.status(HttpStatus.OK).body(Files.readAllBytes(resource.getFile().toPath())); - } catch (IOException e) { - throw new FailToReadImageException("이미지를 읽어오는데 실패했습니다."); - } + return ApiResponse.ok(imageServiceFactory.getImageService(imageDomain).saveImages(images)); } // Todo: authorize - @DeleteMapping("/images/{id}") + @DeleteMapping("/{id}") public ResponseEntity> deleteImage( @PathVariable Long id, @RequestParam(value = "type") ImageDomain imageDomain) { - imageServiceFactory.getImageServiceByImageType(imageDomain).deleteAndDelete(id); + imageServiceFactory.getImageService(imageDomain).deleteAndDelete(id); return ApiResponse.noContent(); } } \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/AdvertisementImageService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/AdvertisementImageService.java index 1c8a87df..413d75e4 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/AdvertisementImageService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/AdvertisementImageService.java @@ -16,10 +16,10 @@ @RequiredArgsConstructor public class AdvertisementImageService extends ImageService { - private final ImageStorage imageStorage; + @Value("${image.upload.ad.child-path}") + private String childPath; + private final ImageStorageService imageStorageService; private final AdvertisementImageRepository adImageRepository; - @Value("${image.upload.ad.sub-path}") - private String subPath; @Override protected ImageRepository getImageRepository() { @@ -32,8 +32,8 @@ protected ImageDomain getImageDomain() { } @Override - protected String getSubPath() { - return subPath; + protected String getChildPath() { + return childPath; } @Override @@ -45,13 +45,12 @@ protected AdvertisementImage toEntity(ImageRequest imageRequest) { } @Transactional - public AdvertisementImage saveAndCreateImage(MultipartFile image) { - String path = imageStorage.save(image, getSubPath()); - return adImageRepository.save(toEntity(ImageRequest.of(path, image.getSize(), ImageStorage.getExtension(image)))); + public AdvertisementImage saveImage(MultipartFile image) { + return adImageRepository.save(toEntity(imageStorageService.saveToDirectory(image, getChildPath()))); } @Transactional - public void setAd(AdvertisementImage image, Advertisement ad) { + public void setAdvertisement(AdvertisementImage image, Advertisement ad) { image.setAdvertisement(ad); } } \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/CurationImageService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/CurationImageService.java index 54d141de..2af86340 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/CurationImageService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/CurationImageService.java @@ -15,11 +15,10 @@ @RequiredArgsConstructor public class CurationImageService extends ImageService { + @Value("${image.upload.curation.child-path}") + private String childPath; private final CurationImageRepository curationImageRepository; - @Value("${image.upload.curation.sub-path}") - private String subPath; - @Override public ImageRepository getImageRepository() { return curationImageRepository; @@ -31,8 +30,8 @@ protected ImageDomain getImageDomain() { } @Override - protected String getSubPath() { - return subPath; + protected String getChildPath() { + return childPath; } @Override diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/EventImageService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/EventImageService.java index c650bafe..821c433e 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/EventImageService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/EventImageService.java @@ -15,11 +15,10 @@ @Service public class EventImageService extends ImageService { + @Value("${image.upload.event.child-path}") + private String childPath; private final EventImageRepository eventImageRepository; - @Value("${image.upload.event.sub-path}") - private String subPath; - @Override public ImageRepository getImageRepository() { return eventImageRepository; @@ -31,13 +30,16 @@ protected ImageDomain getImageDomain() { } @Override - protected String getSubPath() { - return subPath; + protected String getChildPath() { + return childPath; } @Override protected EventImage toEntity(ImageRequest imageRequest) { - return EventImage.builder().url(imageRequest.getUrl()).size(imageRequest.getSize()).build(); + return EventImage.builder() + .url(imageRequest.getUrl()) + .size(imageRequest.getSize()) + .build(); } @Transactional diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageService.java index 5b9f1eea..b4f1506e 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageService.java @@ -19,7 +19,7 @@ public abstract class ImageService { @Autowired - protected ImageStorage imageStorage; + protected ImageStorageService imageStorageService; @Value("${spring.wouldyouin-domain-name}") private String domainName; @@ -28,7 +28,7 @@ public abstract class ImageService { protected abstract ImageDomain getImageDomain(); - protected abstract String getSubPath(); + protected abstract String getChildPath(); protected abstract T toEntity(ImageRequest imageRequest); @@ -47,12 +47,9 @@ protected void delete(Long id) { } @Transactional - public List saveAndCreateImages(List images) { + public List saveImages(List images) { return images.stream() - .map(image -> { - String path = imageStorage.save(image, getSubPath()); - return create(ImageRequest.of(path, image.getSize(), ImageStorage.getExtension(image))); - }) + .map(image -> create(imageStorageService.saveToDirectory(image, getChildPath()))) .toList(); } @@ -60,6 +57,6 @@ public List saveAndCreateImages(List images) { public void deleteAndDelete(Long id) { T image = getById(id); delete(id); - imageStorage.delete(image.getUrl()); + imageStorageService.delete(image.getUrl()); } } \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageServiceFactory.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageServiceFactory.java index 329a411b..6c825456 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageServiceFactory.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageServiceFactory.java @@ -2,6 +2,7 @@ import java.util.List; import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Function; import java.util.stream.Collectors; import org.ktc2.cokaen.wouldyouin.Image.api.ImageDomain; import org.ktc2.cokaen.wouldyouin.Image.persist.Image; @@ -10,14 +11,14 @@ @Component public class ImageServiceFactory { - private final ConcurrentHashMap> imageTypeToImageServiceMap; + private final ConcurrentHashMap> imageServiceMap; public ImageServiceFactory(List> imageServices) { - imageTypeToImageServiceMap = new ConcurrentHashMap<>(imageServices.stream() - .collect(Collectors.toConcurrentMap(ImageService::getImageDomain, imageService -> imageService))); + imageServiceMap = new ConcurrentHashMap<>(imageServices.stream() + .collect(Collectors.toConcurrentMap(ImageService::getImageDomain, Function.identity()))); } - public ImageService getImageServiceByImageType(ImageDomain imageDomain) { - return imageTypeToImageServiceMap.get(imageDomain); + public ImageService getImageService(ImageDomain imageDomain) { + return imageServiceMap.get(imageDomain); } } \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageStorage.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageStorage.java deleted file mode 100644 index dc953d58..00000000 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageStorage.java +++ /dev/null @@ -1,83 +0,0 @@ -package org.ktc2.cokaen.wouldyouin.Image.application; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.Objects; -import java.util.Optional; -import java.util.UUID; -import org.ktc2.cokaen.wouldyouin.Image.api.dto.ImageRequest; -import org.ktc2.cokaen.wouldyouin._common.exception.FailedToDeleteImageException; -import org.ktc2.cokaen.wouldyouin._common.exception.FailedToUploadImageException; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Component; -import org.springframework.web.client.RestClient; -import org.springframework.web.multipart.MultipartFile; - -@Component -public class ImageStorage { - - @Value("${image.upload.common-path}") - private String commonPath; - - public String save(MultipartFile image, String subPath) { - String fileName = ""; - try { - fileName = generateUuidName() + "." + getExtension(image); - Path path = Paths.get(commonPath, subPath, fileName); - Files.createDirectories(path.getParent()); - Files.write(path, image.getBytes()); - } catch (IOException ex) { - throw new FailedToUploadImageException("이미지를 업로드하는데 실패했습니다."); - } - return subPath + "/" + fileName; - } - - // Todo: payment랑 이부분 restclient 유틸로 빼기 - public ImageRequest save(String imageUrl, String subPath) { - RestClient client = RestClient.builder().build(); - String fileName = ""; - Long size = 0L; - try { - ResponseEntity response = client.get() - .uri(imageUrl) - .retrieve() - .toEntity(byte[].class); - - if (Optional.ofNullable(response.getBody()).isPresent() && response.getStatusCode().is2xxSuccessful()) { - fileName = generateUuidName() + "." + getExtension(imageUrl); - size = (long) response.getBody().length; - Path path = Paths.get(commonPath, subPath, fileName); - Files.createDirectories(path.getParent()); - Files.write(path, response.getBody()); - } - } catch (IOException ex) { - throw new FailedToUploadImageException("URL을 통해 이미지를 저장하는데 실패했습니다."); - } - String url = subPath + "/" + fileName; - return ImageRequest.of(url, size, getExtension(imageUrl)); - } - - public void delete(String imagePath) { - try { - Files.deleteIfExists(Paths.get(imagePath)); - } catch (IOException ex) { - throw new FailedToDeleteImageException("이미지를 삭제하는데 실패했습니다."); - } - } - - protected static String getExtension(MultipartFile image) { - return Objects.requireNonNull(image.getContentType()).split("/")[1]; - } - - protected static String getExtension(String imageUrl) { - String[] splitted = imageUrl.split("\\."); - return splitted[splitted.length - 1]; - } - - private static String generateUuidName() { - return UUID.randomUUID().toString().replace("-", ""); - } -} \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageStorageService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageStorageService.java new file mode 100644 index 00000000..5b68d448 --- /dev/null +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/ImageStorageService.java @@ -0,0 +1,54 @@ +package org.ktc2.cokaen.wouldyouin.Image.application; + +import java.nio.file.Path; +import java.nio.file.Paths; +import lombok.RequiredArgsConstructor; +import org.ktc2.cokaen.wouldyouin.Image.api.dto.ImageRequest; +import org.ktc2.cokaen.wouldyouin._common.exception.FailedToUploadImageException; +import org.ktc2.cokaen.wouldyouin._common.util.FileUtil; +import org.ktc2.cokaen.wouldyouin._common.util.RestClientUtil; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Component; +import org.springframework.web.multipart.MultipartFile; + +@Component +@RequiredArgsConstructor +public class ImageStorageService { + + @Value("${image.upload.parent-path}") + private String parentPath; + private final RestClientUtil client; + + public byte[] readFromDirectory(Path path) { + return FileUtil.readFile(Paths.get(parentPath).resolve(path)); + } + + public ImageRequest saveToDirectory(MultipartFile image, String subPath) { + String extension = FileUtil.getExtension(image); + String fileName = FileUtil.generateUuidName() + "." + extension; + Path path = Paths.get(parentPath, subPath, fileName); + FileUtil.saveFile(image, path); + return ImageRequest.of(path.toString(), image.getSize(), FileUtil.getExtension(image)); + } + + public ImageRequest saveToDirectory(String imageUrl, String subPath) { + ResponseEntity response = client.get(imageUrl, byte[].class); + if (response.getBody() == null) { + throw new FailedToUploadImageException("응답 본문이 비어있어 이미지를 가져올 수 없습니다."); + } + if (!response.getStatusCode().is2xxSuccessful()) { + throw new FailedToUploadImageException("이미지 URL에 대한 요청을 실패하였습니다."); + } + String extension = FileUtil.getExtension(imageUrl); + String fileName = FileUtil.generateUuidName() + "." + extension; + Path path = Paths.get(parentPath, subPath, fileName); + FileUtil.saveFile(response.getBody(), path); + long size = response.getBody().length; + return ImageRequest.of(path.toString(), size, extension); + } + + public void delete(String imagePath) { + FileUtil.deleteFile(Paths.get(imagePath)); + } +} \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/MemberImageService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/MemberImageService.java index 01772b1a..c791b08e 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/MemberImageService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/Image/application/MemberImageService.java @@ -7,7 +7,6 @@ import org.ktc2.cokaen.wouldyouin.Image.persist.MemberImage; import org.ktc2.cokaen.wouldyouin.Image.persist.MemberImageRepository; import org.ktc2.cokaen.wouldyouin.member.persist.BaseMember; -import org.ktc2.cokaen.wouldyouin.member.persist.BaseMemberRepository; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -16,11 +15,9 @@ @RequiredArgsConstructor public class MemberImageService extends ImageService { + @Value("${image.upload.member.child-path}") + private String childPath; private final MemberImageRepository memberImageRepository; - private final BaseMemberRepository baseMemberRepository; - - @Value("${image.upload.member.sub-path}") - private String subPath; @Override public ImageRepository getImageRepository() { @@ -33,8 +30,8 @@ protected ImageDomain getImageDomain() { } @Override - protected String getSubPath() { - return subPath; + protected String getChildPath() { + return childPath; } @Override @@ -51,6 +48,7 @@ public void setBaseMember(MemberImage image, BaseMember member) { } public MemberImage convert(String imageUrl) { - return memberImageRepository.save(toEntity(imageStorage.save(imageUrl, subPath))); + ImageRequest imageRequest = imageStorageService.saveToDirectory(imageUrl, childPath); + return memberImageRepository.save(toEntity(imageRequest)); } } \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/config/RestClientConfig.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/config/RestClientConfig.java new file mode 100644 index 00000000..a4655caa --- /dev/null +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/config/RestClientConfig.java @@ -0,0 +1,14 @@ +package org.ktc2.cokaen.wouldyouin._common.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.client.RestClient; + +@Configuration +public class RestClientConfig { + + @Bean + RestClient restClient() { + return RestClient.builder().build(); + } +} \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/error/ErrorCode.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/error/ErrorCode.java index 16824078..9140ed01 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/error/ErrorCode.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/error/ErrorCode.java @@ -24,6 +24,8 @@ public enum ErrorCode { FAIL_TO_DELETE_IMAGE(HttpStatus.CONFLICT.value(), "-20400", "Fail to delete image"), + URL_PARSING_FAILED(HttpStatus.BAD_REQUEST.value(), "-20400", "URL 파싱에 실패했습니다."), + CURRENT_LOCATION_EMPTY(HttpStatus.BAD_REQUEST.value(), "-20400", "현재 위치 정보를 찾을 수 없습니다."); private final Integer status; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/exception/ExtensionParsingException.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/exception/ExtensionParsingException.java new file mode 100644 index 00000000..b07099b7 --- /dev/null +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/exception/ExtensionParsingException.java @@ -0,0 +1,10 @@ +package org.ktc2.cokaen.wouldyouin._common.exception; + +import org.ktc2.cokaen.wouldyouin._common.error.ErrorCode; + +public class ExtensionParsingException extends BusinessException { + + public ExtensionParsingException(String message) { + super(message, ErrorCode.URL_PARSING_FAILED); + } +} diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Area.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Area.java deleted file mode 100644 index 7c9dcf98..00000000 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Area.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.ktc2.cokaen.wouldyouin._common.persist; - -public enum Area { - 전체, - 서울, - 인천, - 경기도, - 강원도, - 충청남도, - 충청북도, - 경상북도, - 대전, - 대구, - 울산, - 전라북도, - 경상남도, - 부산, - 광주, - 전라남도, - 제주도 -} \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Category.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Category.java deleted file mode 100644 index 5d30389b..00000000 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Category.java +++ /dev/null @@ -1,12 +0,0 @@ -package org.ktc2.cokaen.wouldyouin._common.persist; - -public enum Category { - 전체, - 밴드, - 연극, - 뮤지컬, - 원데이클래스, - 전시회, - 공예, - 축제 -} \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Location.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Location.java deleted file mode 100644 index ab3cfe59..00000000 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/persist/Location.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.ktc2.cokaen.wouldyouin._common.persist; - -import jakarta.persistence.Embeddable; -import lombok.AllArgsConstructor; -import lombok.Getter; -import lombok.NoArgsConstructor; -import lombok.Setter; - -@Getter -@Setter -@NoArgsConstructor -@AllArgsConstructor -@Embeddable -public class Location { - Double longitude; - Double latitude; -} \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/FileUtil.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/FileUtil.java new file mode 100644 index 00000000..3c980b46 --- /dev/null +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/FileUtil.java @@ -0,0 +1,69 @@ +package org.ktc2.cokaen.wouldyouin._common.util; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.UUID; +import org.ktc2.cokaen.wouldyouin._common.exception.ExtensionParsingException; +import org.ktc2.cokaen.wouldyouin._common.exception.FailToReadImageException; +import org.ktc2.cokaen.wouldyouin._common.exception.FailedToUploadImageException; +import org.springframework.web.multipart.MultipartFile; + +public class FileUtil { + + public static byte[] readFile(Path path) { + try { + return Files.readAllBytes(path); + } catch (IOException e) { + throw new FailToReadImageException("이미지를 읽어오는데 실패했습니다."); + } + } + + public static void saveFile(MultipartFile file, Path path) { + try { + Files.createDirectories(path.getParent()); + Files.write(path, file.getBytes()); + } catch (IOException e) { + throw new FailedToUploadImageException("디렉토리에 이미지를 저장하는데 실패했습니다."); + } + } + + public static void saveFile(byte[] file, Path path) { + try { + Files.createDirectories(path.getParent()); + Files.write(path, file); + } catch (IOException e) { + throw new FailedToUploadImageException("디렉토리에 이미지를 저장하는데 실패했습니다."); + } + } + + public static void deleteFile(Path path) { + try { + Files.deleteIfExists(path); + } catch (IOException e) { + throw new FailedToUploadImageException("디렉토리의 이미지를 삭제하는데 실패했습니다."); + } + } + + public static String generateUuidName() { + return UUID.randomUUID().toString().replace("-", ""); + } + + public static String getExtension(MultipartFile file) { + if (file == null || file.getContentType() == null) { + throw new ExtensionParsingException("파일이 존재하지 않거나 콘텐츠 타입이 없습니다."); + } + try { + return file.getContentType().split("/")[1]; + } catch (ArrayIndexOutOfBoundsException e) { + throw new ExtensionParsingException("파일의 확장자를 찾을 수 없습니다."); + } + } + + public static String getExtension(String url) { + if (url == null || !url.contains(".")) { + throw new ExtensionParsingException("URL이 존재하지 않거나 확장자가 없습니다."); + } + return url.substring(url.lastIndexOf('.') + 1); + } +} \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/KakaoPayUtil.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/KakaoPayUtil.java new file mode 100644 index 00000000..cd606ee5 --- /dev/null +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/KakaoPayUtil.java @@ -0,0 +1,33 @@ +package org.ktc2.cokaen.wouldyouin._common.util; + +import java.util.HashMap; +import java.util.Map; +import org.ktc2.cokaen.wouldyouin.payment.dto.KakaoPayRequest; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; + +public class KakaoPayUtil { + + public static HttpHeaders createKakaoPayRequestHeaders(String kakaoPayRequestHost, String secretKey) { + HttpHeaders headers = new HttpHeaders(); + headers.add("Host", kakaoPayRequestHost); + headers.add("Authorization", "SECRET_KEY " + secretKey); + headers.setContentType(MediaType.APPLICATION_JSON); + return headers; + } + + public static Map createKakaoPayRequestBody(KakaoPayRequest kakaoPayRequest, String approvalUrl, String cancelUrl, String failUrl) { + Map body = new HashMap<>(); + body.put("cid", "TC0ONETIME"); + body.put("partner_order_id", kakaoPayRequest.getReservationId()); + body.put("partner_user_id", kakaoPayRequest.getHostId()); + body.put("item_name", kakaoPayRequest.getEventName()); + body.put("quantity", kakaoPayRequest.getQuantity()); + body.put("total_amount", kakaoPayRequest.getTotalAmount()); + body.put("tax_free_amount", kakaoPayRequest.getTaxFreeAmount()); + body.put("approval_url", approvalUrl); + body.put("cancel_url", cancelUrl); + body.put("fail_url", failUrl); + return body; + } +} diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/RestClientUtil.java b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/RestClientUtil.java new file mode 100644 index 00000000..79cfed6f --- /dev/null +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/_common/util/RestClientUtil.java @@ -0,0 +1,32 @@ +package org.ktc2.cokaen.wouldyouin._common.util; + +import java.net.URI; +import lombok.RequiredArgsConstructor; +import org.ktc2.cokaen.wouldyouin.payment.dto.KakaoPayResponse; +import org.springframework.http.HttpHeaders; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Component; +import org.springframework.web.client.RestClient; + +@Component +@RequiredArgsConstructor +public class RestClientUtil { + + private final RestClient client; + + public ResponseEntity get(String url, Class classType) { + return client.get() + .uri(url) + .retrieve() + .toEntity(classType); + } + + public ResponseEntity post(String url, HttpHeaders headers, B body, Class classType) { + return client.post() + .uri(url) + .headers(httpHeaders -> httpHeaders.addAll(headers)) + .body(body) + .retrieve() + .toEntity(classType); + } +} \ No newline at end of file diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/advertisement/application/AdvertisementService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/advertisement/application/AdvertisementService.java index 4004da27..2bf7a1f4 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/advertisement/application/AdvertisementService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/advertisement/application/AdvertisementService.java @@ -42,9 +42,9 @@ public List getAllActiveAdvertisements() { // Todo: 롤백될 경우, 저장한 이미지 삭제 @Transactional public AdvertisementResponse create(AdvertisementRequest adRequest, MultipartFile image) { - AdvertisementImage adImage = adImageService.saveAndCreateImage(image); + AdvertisementImage adImage = adImageService.saveImage(image); Advertisement ad = adRepository.save(adRequest.toEntity(adImage)); - adImageService.setAd(adImage, ad); + adImageService.setAdvertisement(adImage, ad); return AdvertisementResponse.from(ad); } @@ -56,7 +56,7 @@ public AdvertisementResponse update(Long adId, AdvertisementRequest adRequest, M Optional.ofNullable(multipartFile).ifPresentOrElse( image -> { adImageService.deleteAndDelete(ad.getAdvertisementImage().getId()); - AdvertisementImage adImage = adImageService.saveAndCreateImage(image); + AdvertisementImage adImage = adImageService.saveImage(image); ad.updateFrom(adRequest, adImage); adImage.setAdvertisement(ad); }, diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/advertisement/persist/Advertisement.java b/src/main/java/org/ktc2/cokaen/wouldyouin/advertisement/persist/Advertisement.java index f154f5a4..f6fef66f 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/advertisement/persist/Advertisement.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/advertisement/persist/Advertisement.java @@ -14,7 +14,6 @@ import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import org.hibernate.annotations.Comment; import org.ktc2.cokaen.wouldyouin.Image.persist.AdvertisementImage; import org.ktc2.cokaen.wouldyouin.advertisement.api.dto.AdvertisementRequest; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/AuthController.java b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/AuthController.java index 3c886902..f7ca6699 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/AuthController.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/AuthController.java @@ -6,11 +6,11 @@ import org.ktc2.cokaen.wouldyouin.auth.Authorize; import org.ktc2.cokaen.wouldyouin.auth.MemberIdentifier; import org.ktc2.cokaen.wouldyouin.auth.application.AuthService; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.LocalLoginRequest; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.LocalSignupRequest; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.SocialTokenResponse; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.TokenResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.MemberAdditionalInfoRequest; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.LocalLoginRequest; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.LocalSignupRequest; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.SocialTokenResponse; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.TokenResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.MemberAdditionalInfoRequest; import org.ktc2.cokaen.wouldyouin.member.persist.AccountType; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; import org.springframework.http.ResponseEntity; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/LocalLoginRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/LocalLoginRequest.java similarity index 54% rename from src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/LocalLoginRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/LocalLoginRequest.java index 1011fab3..6a18a892 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/LocalLoginRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/LocalLoginRequest.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.auth.application.dto; +package org.ktc2.cokaen.wouldyouin.auth.api.dto; public record LocalLoginRequest(String email, String password) { } diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/LocalSignupRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/LocalSignupRequest.java new file mode 100644 index 00000000..2032ae26 --- /dev/null +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/LocalSignupRequest.java @@ -0,0 +1,6 @@ +package org.ktc2.cokaen.wouldyouin.auth.api.dto; + +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.create.HostCreateRequest; + +public class LocalSignupRequest extends HostCreateRequest { +} diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/SocialTokenResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/SocialTokenResponse.java similarity index 66% rename from src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/SocialTokenResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/SocialTokenResponse.java index 4dfce018..bfdb4f43 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/SocialTokenResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/SocialTokenResponse.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.auth.application.dto; +package org.ktc2.cokaen.wouldyouin.auth.api.dto; import lombok.Builder; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/TokenResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/TokenResponse.java similarity index 79% rename from src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/TokenResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/TokenResponse.java index 37a4b667..0ebae147 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/TokenResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/api/dto/TokenResponse.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.auth.application.dto; +package org.ktc2.cokaen.wouldyouin.auth.api.dto; import lombok.Builder; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/AuthService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/AuthService.java index 127a50a1..6a8a1a38 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/AuthService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/AuthService.java @@ -3,18 +3,18 @@ import java.util.Optional; import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin.auth.MemberIdentifier; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.LocalLoginRequest; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.LocalSignupRequest; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.SocialTokenResponse; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.TokenResponse; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.LocalLoginRequest; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.LocalSignupRequest; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.SocialTokenResponse; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.TokenResponse; import org.ktc2.cokaen.wouldyouin.auth.application.oauth.OauthRequestServiceFactory; import org.ktc2.cokaen.wouldyouin.auth.application.oauth.dto.OauthResourcesResponse; import org.ktc2.cokaen.wouldyouin.member.application.BaseMemberService; import org.ktc2.cokaen.wouldyouin.member.application.HostService; import org.ktc2.cokaen.wouldyouin.member.application.MemberService; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.MemberAdditionalInfoRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.create.MemberCreateRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.MemberAdditionalInfoRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.create.MemberCreateRequest; import org.ktc2.cokaen.wouldyouin.member.persist.AccountType; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; import org.springframework.stereotype.Service; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/LocalSignupRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/LocalSignupRequest.java deleted file mode 100644 index 748ff493..00000000 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/auth/application/dto/LocalSignupRequest.java +++ /dev/null @@ -1,6 +0,0 @@ -package org.ktc2.cokaen.wouldyouin.auth.application.dto; - -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.create.HostCreateRequest; - -public class LocalSignupRequest extends HostCreateRequest { -} diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/curation/api/dto/CurationResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/curation/api/dto/CurationResponse.java index 65489c61..7bd2e697 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/curation/api/dto/CurationResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/curation/api/dto/CurationResponse.java @@ -7,7 +7,7 @@ import org.ktc2.cokaen.wouldyouin._common.vo.Area; import org.ktc2.cokaen.wouldyouin.curation.persist.Curation; import org.ktc2.cokaen.wouldyouin.event.api.dto.relationResonse.CurationEventResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.relationResponse.CurationCuratorResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.relationResponse.CurationCuratorResponse; @Builder @Getter diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/EventController.java b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/EventController.java index 9230416a..96e7b8d6 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/EventController.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/EventController.java @@ -7,11 +7,10 @@ import org.ktc2.cokaen.wouldyouin._common.config.ParamDefaults; import org.ktc2.cokaen.wouldyouin._common.vo.Area; import org.ktc2.cokaen.wouldyouin._common.vo.Category; -import org.ktc2.cokaen.wouldyouin._common.vo.Location; -import org.ktc2.cokaen.wouldyouin._common.vo.UserLocation; +import org.ktc2.cokaen.wouldyouin.event.api.dto.UserLocation; import org.ktc2.cokaen.wouldyouin.auth.Authorize; import org.ktc2.cokaen.wouldyouin.auth.MemberIdentifier; -import org.ktc2.cokaen.wouldyouin.curation.api.dto.LocationFilter; +import org.ktc2.cokaen.wouldyouin.event.api.dto.LocationFilter; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventCreateRequest; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventEditRequest; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventResponse; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/EventResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/EventResponse.java index 7ff20f85..b45e738e 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/EventResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/EventResponse.java @@ -7,7 +7,7 @@ import org.ktc2.cokaen.wouldyouin._common.vo.Category; import org.ktc2.cokaen.wouldyouin._common.vo.Location; import org.ktc2.cokaen.wouldyouin.event.persist.Event; -import org.ktc2.cokaen.wouldyouin.member.application.dto.relation.EventHostResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.relation.EventHostResponse; import org.ktc2.cokaen.wouldyouin.member.persist.Host; @Builder diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/EventSliceResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/EventSliceResponse.java index 64929632..5221024c 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/EventSliceResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/EventSliceResponse.java @@ -5,9 +5,6 @@ import lombok.Getter; import org.ktc2.cokaen.wouldyouin._common.api.SliceInfo; import org.ktc2.cokaen.wouldyouin.event.persist.Event; -import org.ktc2.cokaen.wouldyouin.reservation.api.dto.ReservationResponse; -import org.ktc2.cokaen.wouldyouin.reservation.api.dto.ReservationSliceResponse; -import org.ktc2.cokaen.wouldyouin.reservation.persist.Reservation; import org.springframework.data.domain.Slice; @Getter diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/curation/api/dto/LocationFilter.java b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/LocationFilter.java similarity index 87% rename from src/main/java/org/ktc2/cokaen/wouldyouin/curation/api/dto/LocationFilter.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/LocationFilter.java index aec28478..fa1e923b 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/curation/api/dto/LocationFilter.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/LocationFilter.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.curation.api.dto; +package org.ktc2.cokaen.wouldyouin.event.api.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/vo/UserLocation.java b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/UserLocation.java similarity index 94% rename from src/main/java/org/ktc2/cokaen/wouldyouin/_common/vo/UserLocation.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/UserLocation.java index 32dfa4aa..be0efccd 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/_common/vo/UserLocation.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/event/api/dto/UserLocation.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin._common.vo; +package org.ktc2.cokaen.wouldyouin.event.api.dto; import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Min; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/event/application/EventService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/event/application/EventService.java index 07ac64aa..2c56bc50 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/event/application/EventService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/event/application/EventService.java @@ -9,8 +9,8 @@ import org.ktc2.cokaen.wouldyouin._common.exception.UnauthorizedException; import org.ktc2.cokaen.wouldyouin._common.vo.Area; import org.ktc2.cokaen.wouldyouin._common.vo.Category; -import org.ktc2.cokaen.wouldyouin._common.vo.UserLocation; -import org.ktc2.cokaen.wouldyouin.curation.api.dto.LocationFilter; +import org.ktc2.cokaen.wouldyouin.event.api.dto.UserLocation; +import org.ktc2.cokaen.wouldyouin.event.api.dto.LocationFilter; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventCreateRequest; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventEditRequest; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventResponse; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/event/persist/Event.java b/src/main/java/org/ktc2/cokaen/wouldyouin/event/persist/Event.java index 205688ef..df63a2c8 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/event/persist/Event.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/event/persist/Event.java @@ -25,7 +25,6 @@ import lombok.NoArgsConstructor; import lombok.Setter; import org.ktc2.cokaen.wouldyouin.Image.persist.EventImage; -import org.ktc2.cokaen.wouldyouin._common.exception.NoLeftSeatException; import org.ktc2.cokaen.wouldyouin._common.vo.Area; import org.ktc2.cokaen.wouldyouin._common.vo.Category; import org.ktc2.cokaen.wouldyouin._common.vo.Location; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/like/api/LikeController.java b/src/main/java/org/ktc2/cokaen/wouldyouin/like/api/LikeController.java index 75792e55..6d83b02a 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/like/api/LikeController.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/like/api/LikeController.java @@ -7,8 +7,8 @@ import org.ktc2.cokaen.wouldyouin.auth.Authorize; import org.ktc2.cokaen.wouldyouin.auth.MemberIdentifier; import org.ktc2.cokaen.wouldyouin.like.application.LikeServiceFactory; -import org.ktc2.cokaen.wouldyouin.like.application.dto.LikeResponse; -import org.ktc2.cokaen.wouldyouin.like.application.dto.LikeToggleResponse; +import org.ktc2.cokaen.wouldyouin.like.api.dto.LikeResponse; +import org.ktc2.cokaen.wouldyouin.like.api.dto.LikeToggleResponse; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Slice; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/like/application/dto/LikeResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/like/api/dto/LikeResponse.java similarity index 93% rename from src/main/java/org/ktc2/cokaen/wouldyouin/like/application/dto/LikeResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/like/api/dto/LikeResponse.java index cc749208..f21ac18d 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/like/application/dto/LikeResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/like/api/dto/LikeResponse.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.like.application.dto; +package org.ktc2.cokaen.wouldyouin.like.api.dto; import java.util.List; import lombok.AccessLevel; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/like/application/dto/LikeToggleResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/like/api/dto/LikeToggleResponse.java similarity index 77% rename from src/main/java/org/ktc2/cokaen/wouldyouin/like/application/dto/LikeToggleResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/like/api/dto/LikeToggleResponse.java index d5181d72..819e700d 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/like/application/dto/LikeToggleResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/like/api/dto/LikeToggleResponse.java @@ -1,10 +1,9 @@ -package org.ktc2.cokaen.wouldyouin.like.application.dto; +package org.ktc2.cokaen.wouldyouin.like.api.dto; import lombok.AccessLevel; import lombok.Builder; import lombok.Getter; import lombok.RequiredArgsConstructor; -import org.ktc2.cokaen.wouldyouin.member.persist.LikeableMember; @Getter @RequiredArgsConstructor(access = AccessLevel.PROTECTED) diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/like/application/LikeService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/like/application/LikeService.java index 7b2393ab..8a888bad 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/like/application/LikeService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/like/application/LikeService.java @@ -1,8 +1,8 @@ package org.ktc2.cokaen.wouldyouin.like.application; import lombok.RequiredArgsConstructor; -import org.ktc2.cokaen.wouldyouin.like.application.dto.LikeResponse; -import org.ktc2.cokaen.wouldyouin.like.application.dto.LikeToggleResponse; +import org.ktc2.cokaen.wouldyouin.like.api.dto.LikeResponse; +import org.ktc2.cokaen.wouldyouin.like.api.dto.LikeToggleResponse; import org.ktc2.cokaen.wouldyouin.like.persist.Like; import org.ktc2.cokaen.wouldyouin.like.persist.LikeRepository; import org.ktc2.cokaen.wouldyouin.member.application.LikeableMemberGetterFactory; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/CuratorController.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/CuratorController.java index 2500403c..49aa49b7 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/CuratorController.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/CuratorController.java @@ -6,8 +6,8 @@ import org.ktc2.cokaen.wouldyouin.auth.Authorize; import org.ktc2.cokaen.wouldyouin.auth.MemberIdentifier; import org.ktc2.cokaen.wouldyouin.member.application.CuratorService; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.CuratorEditRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.CuratorEditRequest; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.PathVariable; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/HostController.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/HostController.java index 17cac9d6..9e49a3fc 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/HostController.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/HostController.java @@ -6,8 +6,8 @@ import org.ktc2.cokaen.wouldyouin.auth.Authorize; import org.ktc2.cokaen.wouldyouin.auth.MemberIdentifier; import org.ktc2.cokaen.wouldyouin.member.application.HostService; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.HostEditRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.HostEditRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.PutMapping; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/MemberController.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/MemberController.java index 07425641..f68765b3 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/MemberController.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/MemberController.java @@ -9,10 +9,10 @@ import org.ktc2.cokaen.wouldyouin.member.application.BaseMemberService; import org.ktc2.cokaen.wouldyouin.member.application.HostService; import org.ktc2.cokaen.wouldyouin.member.application.MemberService; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.create.HostCreateRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.create.MemberCreateRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.MemberEditRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.create.HostCreateRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.create.MemberCreateRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.MemberEditRequest; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/MemberResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/MemberResponse.java similarity index 97% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/MemberResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/MemberResponse.java index ed56592b..4fe093db 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/MemberResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/MemberResponse.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto; +package org.ktc2.cokaen.wouldyouin.member.api.dto; import lombok.Builder; import lombok.Getter; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relation/EventHostResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relation/EventHostResponse.java similarity index 92% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relation/EventHostResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relation/EventHostResponse.java index 2430622f..fb2d26a8 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relation/EventHostResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relation/EventHostResponse.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.relation; +package org.ktc2.cokaen.wouldyouin.member.api.dto.relation; import java.util.List; import lombok.Builder; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relation/ReservationMemberResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relation/ReservationMemberResponse.java similarity index 77% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relation/ReservationMemberResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relation/ReservationMemberResponse.java index 0ebfe7f9..98b10bbc 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relation/ReservationMemberResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relation/ReservationMemberResponse.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.relation; +package org.ktc2.cokaen.wouldyouin.member.api.dto.relation; import lombok.Builder; import lombok.Getter; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relationResponse/CurationCuratorResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relationResponse/CurationCuratorResponse.java similarity index 92% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relationResponse/CurationCuratorResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relationResponse/CurationCuratorResponse.java index 2516823c..ed5e85de 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relationResponse/CurationCuratorResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relationResponse/CurationCuratorResponse.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.relationResponse; +package org.ktc2.cokaen.wouldyouin.member.api.dto.relationResponse; import java.util.List; import lombok.Builder; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relationResponse/ReviewMemberResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relationResponse/ReviewMemberResponse.java similarity index 66% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relationResponse/ReviewMemberResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relationResponse/ReviewMemberResponse.java index 21a57579..afbdc6a2 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/relationResponse/ReviewMemberResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/relationResponse/ReviewMemberResponse.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.relationResponse; +package org.ktc2.cokaen.wouldyouin.member.api.dto.relationResponse; import lombok.Builder; import lombok.Getter; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/MemberAdditionalInfoRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/MemberAdditionalInfoRequest.java similarity index 81% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/MemberAdditionalInfoRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/MemberAdditionalInfoRequest.java index 64bfff22..2f3ea13a 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/MemberAdditionalInfoRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/MemberAdditionalInfoRequest.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.request; +package org.ktc2.cokaen.wouldyouin.member.api.dto.request; import lombok.Getter; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/HostCreateRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/HostCreateRequest.java similarity index 90% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/HostCreateRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/HostCreateRequest.java index 5233ddc3..6a2ceafe 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/HostCreateRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/HostCreateRequest.java @@ -1,6 +1,5 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.request.create; +package org.ktc2.cokaen.wouldyouin.member.api.dto.request.create; -import java.util.List; import lombok.Getter; import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin.Image.persist.MemberImage; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/MemberCreateRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/MemberCreateRequest.java similarity index 94% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/MemberCreateRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/MemberCreateRequest.java index f021e163..6bc10cbf 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/MemberCreateRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/MemberCreateRequest.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.request.create; +package org.ktc2.cokaen.wouldyouin.member.api.dto.request.create; import lombok.Builder; import lombok.Getter; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/MemberCreateRequestBase.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/MemberCreateRequestBase.java similarity index 82% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/MemberCreateRequestBase.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/MemberCreateRequestBase.java index 428664a7..1e4ecc5c 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/create/MemberCreateRequestBase.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/create/MemberCreateRequestBase.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.request.create; +package org.ktc2.cokaen.wouldyouin.member.api.dto.request.create; import lombok.Getter; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/CuratorEditRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/CuratorEditRequest.java similarity index 88% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/CuratorEditRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/CuratorEditRequest.java index bef7ce24..63ee5b53 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/CuratorEditRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/CuratorEditRequest.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit; +package org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit; import io.micrometer.common.lang.Nullable; import lombok.Builder; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/HostEditRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/HostEditRequest.java similarity index 88% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/HostEditRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/HostEditRequest.java index 618fe72c..2e816e36 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/HostEditRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/HostEditRequest.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit; +package org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit; import jakarta.annotation.Nullable; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/MemberEditRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/MemberEditRequest.java similarity index 87% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/MemberEditRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/MemberEditRequest.java index 46e591a8..6afed790 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/MemberEditRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/MemberEditRequest.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit; +package org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit; import jakarta.annotation.Nullable; import lombok.Builder; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/MemberEditRequestBase.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/MemberEditRequestBase.java similarity index 81% rename from src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/MemberEditRequestBase.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/MemberEditRequestBase.java index 45e8da30..f353746b 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/dto/request/edit/MemberEditRequestBase.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/api/dto/request/edit/MemberEditRequestBase.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit; +package org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit; import jakarta.annotation.Nullable; import lombok.Getter; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/BaseMemberService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/BaseMemberService.java index 3f11940a..154c2d11 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/BaseMemberService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/BaseMemberService.java @@ -1,7 +1,7 @@ package org.ktc2.cokaen.wouldyouin.member.application; import lombok.RequiredArgsConstructor; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; import org.ktc2.cokaen.wouldyouin.member.persist.BaseMember; import org.ktc2.cokaen.wouldyouin.member.persist.BaseMemberRepository; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/CuratorService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/CuratorService.java index c98a6f34..da78d2c7 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/CuratorService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/CuratorService.java @@ -3,8 +3,8 @@ import java.util.Optional; import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin.Image.application.MemberImageService; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.CuratorEditRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.CuratorEditRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; import org.ktc2.cokaen.wouldyouin.member.persist.BaseMemberRepository; import org.ktc2.cokaen.wouldyouin.member.persist.Curator; import org.ktc2.cokaen.wouldyouin.member.persist.CuratorRepository; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/HostService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/HostService.java index f2cceed8..abc8c8f8 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/HostService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/HostService.java @@ -4,10 +4,10 @@ import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin.Image.application.MemberImageService; import org.ktc2.cokaen.wouldyouin.Image.persist.MemberImage; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.LocalLoginRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.create.HostCreateRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.HostEditRequest; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.LocalLoginRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.create.HostCreateRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.HostEditRequest; import org.ktc2.cokaen.wouldyouin.member.persist.Host; import org.ktc2.cokaen.wouldyouin.member.persist.HostRepository; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/MemberService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/MemberService.java index ea657969..3e7ccc88 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/MemberService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/MemberService.java @@ -5,10 +5,10 @@ import org.ktc2.cokaen.wouldyouin.Image.application.MemberImageService; import org.ktc2.cokaen.wouldyouin.Image.persist.MemberImage; import org.ktc2.cokaen.wouldyouin.auth.MemberIdentifier; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.MemberAdditionalInfoRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.create.MemberCreateRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.MemberEditRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.MemberAdditionalInfoRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.create.MemberCreateRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.MemberEditRequest; import org.ktc2.cokaen.wouldyouin.member.persist.Member; import org.ktc2.cokaen.wouldyouin.member.persist.MemberRepository; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/MemberServiceCommonBehavior.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/MemberServiceCommonBehavior.java index 2dabecef..ed70871e 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/MemberServiceCommonBehavior.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/application/MemberServiceCommonBehavior.java @@ -1,6 +1,6 @@ package org.ktc2.cokaen.wouldyouin.member.application; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; import org.springframework.transaction.annotation.Transactional; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/member/persist/Member.java b/src/main/java/org/ktc2/cokaen/wouldyouin/member/persist/Member.java index d5b4fe5c..b5f4d46a 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/member/persist/Member.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/member/persist/Member.java @@ -15,7 +15,7 @@ import org.ktc2.cokaen.wouldyouin._common.vo.Area; import org.ktc2.cokaen.wouldyouin.like.persist.CuratorLike; import org.ktc2.cokaen.wouldyouin.like.persist.HostLike; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.MemberAdditionalInfoRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.MemberAdditionalInfoRequest; import org.ktc2.cokaen.wouldyouin.reservation.persist.Reservation; import org.ktc2.cokaen.wouldyouin.review.persist.Review; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/payment/application/PaymentService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/payment/application/PaymentService.java index 0506aab3..c8a48c45 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/payment/application/PaymentService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/payment/application/PaymentService.java @@ -1,75 +1,46 @@ package org.ktc2.cokaen.wouldyouin.payment.application; -import java.net.URI; -import java.util.HashMap; -import java.util.Map; +import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin._common.exception.FailedToPayException; +import org.ktc2.cokaen.wouldyouin._common.util.KakaoPayUtil; +import org.ktc2.cokaen.wouldyouin._common.util.RestClientUtil; import org.ktc2.cokaen.wouldyouin.payment.dto.KakaoPayRequest; import org.ktc2.cokaen.wouldyouin.payment.dto.KakaoPayResponse; import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.HttpHeaders; -import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; -import org.springframework.web.client.RestClient; @Service +@RequiredArgsConstructor public class PaymentService { - // Todo: pay 취소 기능 추가 - // Todo: RestClient 관련 로직 유틸로 분리 - private final RestClient client = RestClient.builder().build(); + private final RestClientUtil client; - @Value("${oauth.payment.kakao_pay_request_host}") + @Value("${oauth.payment.kakao-pay-request-host}") private String kakaoPayRequestHost; - @Value("${oauth.payment.kakao_pay_single_payment_url}") private String kakaoPaySinglePaymentUrl; - @Value("${oauth.payment.approval_url}") private String approvalUrl; - @Value("${oauth.payment.cancel_url}") private String cancelUrl; - @Value("${oauth.payment.fail_url}") private String failUrl; - @Value("${oauth.payment.secret_key}") private String secretKey; public KakaoPayResponse createPayment(KakaoPayRequest kakaoPayRequest) { - try { - return client.post() - .uri(URI.create("https://" + kakaoPayRequestHost + kakaoPaySinglePaymentUrl)) - .headers(httpHeaders -> httpHeaders.addAll(createKakaoPayRequestHeaders())) - .body(createKakaoPayRequestBody(kakaoPayRequest)) - .retrieve() - .body(KakaoPayResponse.class); - } catch (Exception ex) { - throw new FailedToPayException("결제에 실패했습니다."); + ResponseEntity response = client.post( + kakaoPayRequestHost + "/" + kakaoPaySinglePaymentUrl, + KakaoPayUtil.createKakaoPayRequestHeaders(kakaoPayRequestHost, secretKey), + KakaoPayUtil.createKakaoPayRequestBody(kakaoPayRequest, approvalUrl, cancelUrl, failUrl), + KakaoPayResponse.class + ); + if (!response.getStatusCode().is2xxSuccessful()) { + throw new FailedToPayException("카카오페이 API 요청을 실패하였습니다."); } + return response.getBody(); } - private HttpHeaders createKakaoPayRequestHeaders() { - HttpHeaders headers = new HttpHeaders(); - headers.add("Host", kakaoPayRequestHost); - headers.add("Authorization", "SECRET_KEY " + secretKey); - headers.setContentType(MediaType.APPLICATION_JSON); - return headers; - } - - private Map createKakaoPayRequestBody(KakaoPayRequest kakaoPayRequest) { - Map body = new HashMap<>(); - body.put("cid", "TC0ONETIME"); - body.put("partner_order_id", kakaoPayRequest.getReservationId()); - body.put("partner_user_id", kakaoPayRequest.getHostId()); - body.put("item_name", kakaoPayRequest.getEventName()); - body.put("quantity", kakaoPayRequest.getQuantity()); - body.put("total_amount", kakaoPayRequest.getTotalAmount()); - body.put("tax_free_amount", kakaoPayRequest.getTaxFreeAmount()); - body.put("approval_url", approvalUrl); - body.put("cancel_url", cancelUrl); - body.put("fail_url", failUrl); - return body; - } + // Todo: pay 취소 기능 추가 } diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/reservation/api/dto/ReservationResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/reservation/api/dto/ReservationResponse.java index ba63a297..5249b6ee 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/reservation/api/dto/ReservationResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/reservation/api/dto/ReservationResponse.java @@ -4,7 +4,7 @@ import lombok.Builder; import lombok.Getter; import org.ktc2.cokaen.wouldyouin.event.api.dto.relationResonse.ReservationEventResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.relation.ReservationMemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.relation.ReservationMemberResponse; import org.ktc2.cokaen.wouldyouin.reservation.persist.Reservation; @Builder diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/reservation/application/ReservationService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/reservation/application/ReservationService.java index 73d26a72..17e1efb5 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/reservation/application/ReservationService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/reservation/application/ReservationService.java @@ -1,6 +1,5 @@ package org.ktc2.cokaen.wouldyouin.reservation.application; -import java.util.List; import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin._common.exception.EntityNotFoundException; import org.ktc2.cokaen.wouldyouin._common.exception.UnauthorizedException; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/ReviewController.java b/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/ReviewController.java index ea036dc1..f9637cf4 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/ReviewController.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/ReviewController.java @@ -4,9 +4,9 @@ import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin._common.api.ApiResponseBody; import org.ktc2.cokaen.wouldyouin.review.application.ReviewService; -import org.ktc2.cokaen.wouldyouin.review.application.dto.ReviewCreateRequest; -import org.ktc2.cokaen.wouldyouin.review.application.dto.ReviewEditRequest; -import org.ktc2.cokaen.wouldyouin.review.application.dto.ReviewResponse; +import org.ktc2.cokaen.wouldyouin.review.api.dto.ReviewCreateRequest; +import org.ktc2.cokaen.wouldyouin.review.api.dto.ReviewEditRequest; +import org.ktc2.cokaen.wouldyouin.review.api.dto.ReviewResponse; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewCreateRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewCreateRequest.java similarity index 87% rename from src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewCreateRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewCreateRequest.java index b90571ce..406ee397 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewCreateRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewCreateRequest.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.review.application.dto; +package org.ktc2.cokaen.wouldyouin.review.api.dto; import lombok.Builder; import lombok.Getter; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewEditRequest.java b/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewEditRequest.java similarity index 74% rename from src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewEditRequest.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewEditRequest.java index f850e0b2..7b070079 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewEditRequest.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewEditRequest.java @@ -1,4 +1,4 @@ -package org.ktc2.cokaen.wouldyouin.review.application.dto; +package org.ktc2.cokaen.wouldyouin.review.api.dto; import lombok.Builder; import lombok.Getter; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewResponse.java b/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewResponse.java similarity index 88% rename from src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewResponse.java rename to src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewResponse.java index 08a2e764..daf8e8b3 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/dto/ReviewResponse.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/review/api/dto/ReviewResponse.java @@ -1,10 +1,10 @@ -package org.ktc2.cokaen.wouldyouin.review.application.dto; +package org.ktc2.cokaen.wouldyouin.review.api.dto; import lombok.Builder; import lombok.Getter; import org.ktc2.cokaen.wouldyouin.event.api.dto.relationResonse.ReviewEventResponse; import org.ktc2.cokaen.wouldyouin.event.persist.Event; -import org.ktc2.cokaen.wouldyouin.member.application.dto.relationResponse.ReviewMemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.relationResponse.ReviewMemberResponse; import org.ktc2.cokaen.wouldyouin.member.persist.Member; import org.ktc2.cokaen.wouldyouin.review.persist.Review; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/ReviewService.java b/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/ReviewService.java index adb7b604..e0875dd8 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/ReviewService.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/review/application/ReviewService.java @@ -5,9 +5,9 @@ import lombok.RequiredArgsConstructor; import org.ktc2.cokaen.wouldyouin.event.application.EventService; import org.ktc2.cokaen.wouldyouin.member.application.MemberService; -import org.ktc2.cokaen.wouldyouin.review.application.dto.ReviewCreateRequest; -import org.ktc2.cokaen.wouldyouin.review.application.dto.ReviewEditRequest; -import org.ktc2.cokaen.wouldyouin.review.application.dto.ReviewResponse; +import org.ktc2.cokaen.wouldyouin.review.api.dto.ReviewCreateRequest; +import org.ktc2.cokaen.wouldyouin.review.api.dto.ReviewEditRequest; +import org.ktc2.cokaen.wouldyouin.review.api.dto.ReviewResponse; import org.ktc2.cokaen.wouldyouin.review.persist.Review; import org.ktc2.cokaen.wouldyouin.review.persist.ReviewRepository; import org.springframework.stereotype.Service; diff --git a/src/main/java/org/ktc2/cokaen/wouldyouin/review/persist/Review.java b/src/main/java/org/ktc2/cokaen/wouldyouin/review/persist/Review.java index bc0a7d6e..2316be65 100644 --- a/src/main/java/org/ktc2/cokaen/wouldyouin/review/persist/Review.java +++ b/src/main/java/org/ktc2/cokaen/wouldyouin/review/persist/Review.java @@ -18,7 +18,7 @@ import lombok.Setter; import org.ktc2.cokaen.wouldyouin.event.persist.Event; import org.ktc2.cokaen.wouldyouin.member.persist.Member; -import org.ktc2.cokaen.wouldyouin.review.application.dto.ReviewEditRequest; +import org.ktc2.cokaen.wouldyouin.review.api.dto.ReviewEditRequest; @Getter @Setter diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 446aa5a9..d3030496 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -46,15 +46,15 @@ logging.level.org.ktc2.cokaen.wouldyouin: debug # for image storage path image: upload: - common-path: src/main/resources/static + parent-path: src/main/resources/static/images curation: - sub-path: images/curation + child-path: curation member: - sub-path: images/member + child-path: member event: - sub-path: images/event + child-path: event ad: - sub-path: images/ad + child-path: advertisement # for jwt jwt: @@ -96,5 +96,5 @@ oauth: "cancel_url": "http://localhost:8080/api/events" "fail_url": "http://localhost:8080/api/events" "secret_key": ${KAKAOPAY_SECRET_KEY} - "kakao_pay_single_payment_url": "/online/v1/payment/ready" - "kakao_pay_request_host": "open-api.kakaopay.com" \ No newline at end of file + "kakao_pay_single_payment_url": "online/v1/payment/ready" + "kakao-pay-request-host": "https://open-api.kakaopay.com" \ No newline at end of file diff --git a/src/main/resources/static/images/member/8c1a58a6aced4ab499a9e51ceb09f41b.png b/src/main/resources/static/images/member/8c1a58a6aced4ab499a9e51ceb09f41b.png new file mode 100644 index 0000000000000000000000000000000000000000..a72a46afb71b4c507fd5a4e81599826322e580e5 GIT binary patch literal 123450 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%0Ac8?>6PcsjQ$g`JXq1*Tb zc9wy{k)bHGJI1_L4AEeaX;T)WEMYOd!#Bky(iip~svcvr>36>KZMKeV4mD>Ai;Y>afMPeH+F! zO1d&V0*Lft_>EoKsjXQB9o{8z5n60!vB7pSE3)3JF@hepTU!jTc9}@hic&-M!lA(0 zUM+ClYdV>Qw5e=g@{ITJ5pW*uMwC(0$QOLX4IHxovA=O6grQ7HWhnpRE(z@*DA2d> z+QX@uC|Iz%@?m>3W+)pdsypO1>d^p zC0W9$EpY+{yUr=RvDbe6$wyfd&UxR}YgUH3{5!sJFPqNukVHauD-`zz@7Tpc>F#Rv zs^!R}#Jc!5Z+Mxsj*mNj{8$LUmv-*ldGhq>qhr_vDMo<@85Oxi$_Q1pW$TtWeGmk& zg|ijF*z0hmZXT-MFNCq;Se5<(h={;ydR(dw#_M}}Y8^Q2QzsYFbn9k9p)t4---u3>sAW%A(L%Ytr1@o%4Yu9p@?8WfsJoL*{ z++LG&Xo++BL;{^aEuW`j`~7OXWvH559ayb3dt-hRioEUIyRUj|*-V1r1dfqCf#p;F*KOy}(re<;jz$4&HtD-RD98 za?X4F(PPIZjN|l$CVDs`%9Dh}jzI8oo|E(tM>1a^2L{45VeBcaShkG$kEt=?+aw-T zOG1WKu#w8(KZE%-MHDTl#1S<^viIubFuLB;s#|WorrP+#)2wDaN5%F+Wnu+x;wc$k z#Zc)+F}JpltNfmL@_9B&Uqqa|g3!v|8ll)j_Wi05+bBJ@9$-B_Z{(v*877J{a`l}d z*u)Xl6qFpCJ~bgWv>su2e2gHWb%byc51Q14%DYTaP~tKL+H<6}$Lpp|XWNG7hM9AD z_j}&K92h;#Lx-z9dv;gPvZDOdh9_8c+X};}5!&0_JpAv(cTvxuy|2K}G&Obk3zY*tKIH~bZ0-IqG1Y`=5SJ%gl{$p^j-0bP`-B)WG7!XPCNFzP(AeM#+WubEptQ9z}$R9QpqRc zZpT5I`xAaRc%{MwPQ6^k7BU+YkN-hdg1Fd~5R6hf4CQS+O{s~wDjZJf4viv2fN0^g zA=0Lry%p?59nEfrXix&d^b==M*tlU+_3n550Qs`Bgm49R15rBAdWY{eBb=g|PUhO)D#Iv7 z%RK0k#_Ksz-bt@;3dfI5;D7k&agHw@B|i-0PVwND`yWjyD|v}+#kXg74n}i02s@B~ zN*P9=pKe+;mjnB5av%0S`63m33j4szFIT&E>_lDEo@(C<``9kEuR6eqi(`jhv9*nP zH-hKMo>hXNq5SujZVm!&`(N$0gl6=}88+ z^SJ8nT^xpu0x@o5hkqIcfbwXTM+!d4XC9@OziHQoOTL=lu3xWzzq+v|3YKo^cipuI z-zvEHQ{ls78=t1GbBZSd>Z*{C4CV_93}qZK$;Y};@l$MN z0iC2LID(eiMHug-dI0tK&WAa_VFivjMkzqkrPsmwLDn98WJBn0Q;Dg=B=M{vU^ft{ z;+9kr=wN0j_Y!t!f9VkE6`GYO_1he$>9Br>X$l?PbH%3lYUCv5s<>{{xQd{rEgcLI6McD1|W9w4RTXG78FQ3;|%pwdZk~ z#jC_opoGF*_?d<%B=Zv;BaZec`6Hi-fKdp$vCQcy_{JjiJgye^4!er0KqZXf0}e0* zlf!dx4Vc1}S}6ofK^*id<$?7zjIqAIMz)Bl5cu|Sc1^s58voO0^MsJ>Rd8!K3O8}q zI2R~J!|8pyjb}1PHLtqj3hrK+778AcO9>7AgVx5;LabaoRk+o8D(`?ukTCdJkuY8F zf>U@z_!dh4IF`b7h57!_kvfjeq_kH@zOqb+P_qz4@801l(MIE-uwj& zKbBCT+-pV5sYHALC`o%9y{5^k-Q-2=+QF_g>q3zA>uT@|5gki zdpf?8Ig`mF9URoTNU?|T2_~f4J0XE8zq2d5eYmJ;GH(VOv>^?2}smAg}X=VMsq^M-tE*$_AnI;ia7HM zBI05^;qjk8;-h17QsPi&-XL$t^v5H?#zcb6msqr>*Ka6340;)fA^S7WY(pW)UW6aC zs`HXX(}hdebi^VLCQZ+wjcDf7@$~$zV&%LDKLKN;Lx}?@?friSYgehe=^5AFx{Y6L z^e*tiDI6M4hqYtT6L8)FjvtC4WswbPiN@{-jy`VRwiE5!ivm=zSq&?+cb_}Ab@|1Y z{3o440BYH}ZP({cU%Bq@jT|**#tFK*K_xRo#qchK=bm-Ghsk1uN!N(0d(IXvoX;Wp z3G^xs*YvHk6qzv-vQ@8Xz8gzjHg&LUwIiG9Vz|O10bcxUoiTMqDNMU^levm~dWLglZ4v;*RxSMwwY4Swo&eTQ8w5A(kPtowHY{4mvJbDEo z7!C)_x`*h>nm|K9@U|F2V1yf$2IO<|J8^@5XqZHUiq~)sVdCUOCwoyIoo^+NDW$Bz zWF)c?0r>YB9EMh(uy#OSZJa7C!fqb4q z1>QC?e`8<~Srlh1b{^;vkJ-C>Hw@YlfG;1~e;D=loV?<61(4#%3h&I^ujX)Y$fAGAQ;n3rl~EaU%SLa z09rt$zd32BN!Fd{7tj+N!S;lQAKFCM8FEJ@&h$&10H3fo zVN)0z2YU$8l75ztU-6J1!@5W^noavLv_%1ds_dOW_gVpQaB|)S7-K0Igz0>qXc<4y zYehG%nsiNj`5ow%oH@|F#0Z+SAAl`+DUR*;Kq#$W30>X|Z@S0@?vHJFvU-JiU= zl^0rx--X<@(<(xj^XAWG!DAhBp(A7d&CwJDgLH(=|CSoKweG@7c)Ddd12UZ&zo2`` zclhxm>>-RLqvq%f*?Kb@O;NjE$ookQp5+A}u+shf=I0TVfFhfwZEmB+;>cO?J%_fZ z^5>=p_|pDk`wkvBc6j>aNwc~PDo`hfH$T6bN}*E2CQ6`a=IoL>F?oi{k+_?IHWO_n zF^Y^jgo!AnV1yuJnu%zG8<3IFJ|gwHB?Gh2$8~v&S)Js&oG--Qxfo>^05$%|O5&`-gJD)w)NIPB3%j-9plM-G* zZL%ROeAloV`tUsvyo@Wq=L)y`{zfx-IG&yN!z<2QQxQ(Pc!Ib04tvz@D2M0SI)z}g z%#-mQ3VU;0e6uttOz9=l2Ye9&yVAG@EkVE2H#9)v7w&%4c_2fv;o0mKIB>QwoV9V= zi@h;7xq6Ab7eT3n!A3b&Y$@~5vW#%I2XT%CA(0YSVZ^_%{TfIhJq9(#uMw*K1G$d9 z``r(s->>@}$aEsSnqLMh`G|RH=|wqi-M*8N440Op+Ul%}KhhsiiMR1gN7y{j)84z& z0}cyj&ze?Ub@^p1s-fG^X)*k=BS0+j9ZgP6Lt-Qpzp=-LacScRrqueJ8^l2*YEOe{ z8k{bqLYXb;712_l1dGpptGs`m5a!P=28SwYs z@s8{E8@!QbzxS)R?SIz~y!#7GB>xOdGs4pY$rNacV2|7jC>u<^=r0)Nl~66ckPW8J z1;!aw$5gfHqD~IYW$|j>y$m2}Fj^uSp7m_XZ7FjB-c7sV@n=XA z;b(Ykflh-(uf@E&bz;M&XIT)LQ=LB_#g%TOKp02o-L7|Ul>bkBB}wW^4Mq(;UKe&r zdlv{VKD8i5$f3SiRgMY3=LUx<T)7@lr4@5H_O^#ovXxNnW>u%@EGRuY$rougTNp}&_X-> zNXaEFz&HQ&_**E!o{W&htC?&b-Kcks?`t)n6am*FzFYVlP z8HmSc%@kJd#`FtF{kr~5KrF;Jt(Z>|tUx=a#-roXXYGd1bi_!Ts+fw=h8Ph0a4JI1 zMp45oS-LlPLI;AT_^RVjCJrgAPBB+QkI!?;94)GbF-&S2q9_}yOPhYN1_n5%U^89P ziN8obQg>s0GDiBPkByRaa;S<6bPBBe;k%ip;M;P_l>G$;Ws{YcI8CI8mXV=-;2N+< zV<;2p1b{(9#JpMYk$6-P7#f2bAUyN%LmRlPp32W2*P0l3 znomp(z&>G3Oo>J~&f8C7!Q-l{xrcc?jahD)5jTgF60fjlj)Llvlg!dw-292hgs_rU zma)nDN4Q4l6_FYtBYYy5*8J_ut!ZJ@OX+lm&@)M!Yf&6Qz7L@x`o-$J^Jm3LFO>_A zXP7 zwlCOI>Uj_pf}yZO2+eE9>;Q?-Z!AVP_V;2p)h?aeiq#J_ z>D=#HzDp%6@8a&exCQLwLS5tEisd$#@{Gbh+6OYmgA{c}MIL5NqVo)kdvV7z$?g5P zXmKUTc{Td5H!Cz6l}R!{Va+|8D~=RBo|(%TBJc+{=eu z_Y@2^TrdP2S@=H)SJMMK!=-5)k-Q$I8B?ZCiJrW5C>fp(5tb}sAVj^Y>$G<3qV+B6 zobOKk4m+rj#0bFoPB`^jxcmi7JorA&pU>$z;XMgtC^*6u&8#88&y2>L(&iOh2_tH!Ing8L~ z6mtr)lSj$~7lxM_G#rYYpw+gACm-4h7{ar*hBZ^J#EEN#o<2h0`y9jI3)ifUiT%yb?SL40Y)(WYs8M*xGDH<`3MJx?VguI3w!*#hywo)hh()2tpI5G0$+ny+Tp{ry^SmmoNSKz_ zDW>q;kncRG-wH+T`(J)}*E`?&POqU0BR}+*JumG2CIJsQRu&ECc~mQY(iw1iLn+YO zD2}mLuUbuyE9d=0A&Ej}`G_82-4hEx{3S+)8T#F{Fwv@H#!CFb-VH{02J9fQ@FjU2 z9|GAkbOmWTXJ2D)SjdmL>?-f z?%%CZLUiGNw{ZI7sirC(@)}Yo=UpQ?DL_TDK~#;tZ~4SVFy`ryE-p%_VoFUZzDE(x z$!QdB(9>(5(Hv77joWCZSA53QZ|$Re3{Sk6ztKO!6BfQ31rDP~J5FeTm_kmb_1#u5 zX>0E#1+(SZQ@?uhEr9>|Ou<^gV2@|hlh0N!ALP1kHU&$Mw!UONFnoDp)`og9mah0Z z6p7A2b=rwjM~UO;Nzv0Qexz&p!vb)AYQfW{(@R53K)+HFmc|<~#_M?i<~jD6+-m5} zhN-|MsgS}N4DsK^z2H>$ zV|bjZaE8pL7-1;kIG(g{(W0FH6A%JR;b4ZtgeAXZykJs2ngCfC8Mybi+ww-s-tlhW z)NbV@QV2ghE!a}XrWM7QUAve!SaZ>8)Ie=y-y2KBH84?X(5ibr-e~3a8aS(Z>BzC_ zelBQw^EGQZJRd-bK`Nz2)r=4*g>wTf06XVaOvjqRJ3&jB^6n2C8LK@LW(&8I>j)v^ zw8li*gvuO_y}Dkbuu$;%U?*S0*(zhB=uLq3j@6HMl*KXC)JyZ&0pRolEwdNU+t7IB zp(6)Zik$+nS9gjDX{Rb|5CV7Uh*5Bc@sqB?a4Rnv9Yw_)Glsbv@UU__G8w6GMJURf z&I!g4n{cBTS9`UpVb%64|C(R(seo32h8yKI=GY#r=21B#K50)8)(J z*1S7~)v;#0a45h@rfmAv8AaU}ZFp{2>H{79>1TO*nUD7~W2eMpa>EA<@*QgK&hX ze{>d}`NN(RFm8r#>6rwOpNi3D-g=F=fj60%J$n}AO$ibv$`SjB!0%jWuXicK2HK;t zr%s$ca_r#o2L)N+4G@5Pw(Z@5VuNQUPo6O2IBJ&cI=ZtukfIU<`b0N5kBN}lygBpEXIqS=?BlHY;u4W5B-*S`?2WTcSQZ*eU#eOtAHKv4)(QkF1hu*$V!#iHtQ zv_hXlscK9c8M!u@6F(FH5D}c+4zP9Gu4>oPh1G)DlX@7m#B1JxK!3qCz8xybjsuM} zDP#&z-5@o=y7Xwh2ZV0DUWYAUiV&H$7oh5-apNX&o7!IXliiO()m_#0oqMXCT>wtO5bH1;6?=|HUA6K zMJj)LKmDa)UWYRMVTTIWb(i)b;Bj;`wt3t3ies(t4h=!%+R#GIMkg|_Q*DNwJy9)K zFo(OLSF%{Z5lP`8siM9IjkM#6ozlgZ$Fc@ww?PkZua$w?KVJL{2;P)Q>!Yo4E=b3l zP7b^?fBqbJMS)yD(WuB%XStb=JBg@7F?Gl2;pLb2-1W6bzMUHYYghvW;BB{k;^+^4 z;FeEMn?CMxE`}cM(DpcU3c2b@ESU$O&ga?Eds)e(NoXK}$&+Y=860Ch;!h^%WrUJp znZD~|re2?M$XrYi4KSuAuG#XWzjl*wFWAy03%E&aKTGCr@lhQT`O-gvVi#sO*eRhm z0(!?zoUYbC@f=<6ORG`xl!5ECBmXrLVjgML--3-vXupA3wgm)yK(JpsOuh`Q$zG96 z*ENPIArjY)uhP0}`jBYib;Do}!B^hEa5Zxb*F~P-ZiT=6!k4R0{mGwm8{mBiIQsu_ zT_UVQdHimNJ=tb@j22{b;ocwN1y49fsy&VJbe^6U6d{O}Ct1 zEwXv-wHDDwrR!U1~78LAw7pNMPmBlAA+YuDhUt$ZuSEbBzu^K z&G?07g=ZM)?t+B~v%mvMw0Nb#u(tm&vs^5Pp2cx^*W;z!}tf~7Z3 zo#9?b5-ch9d$ixZBBFISEw{)-H@d(v6BxVnt5&UG$(##*xPfihFpk#nmsPdSr}#!# z+^O(xy41ye^(EdA*B z$^flvij{QDU(0|>&`r*?jS`LuIMqyzt)5^HR&^!Q)O}mDra&pci z!}Ga=p86j>{b{B-HdH_S;SW?F{Lp)tt{IJ1;k*kv@hrIJI~vQHHv)(0l`36fsZGUD&h$YXBHS1dt0?vwN&z^P`ukY$94 zPv22kR$u0qxS+)?1`DPyg(+w?qgIGVW5I5uE^ab^?H}$vo~>Vi(XTvOVU`}#jVsKO zF7AO$`K~_=(SRcd(xC&wJcWt!K$X_$@zqzpdVBTDzx;o2rg9I%OBaml%0N&FM=23dnm`4e1{VZeV~VE^HR3_bCWx?L{-9Ixp9?K+uX*m-E!8jo zyZ=;e+q$Rv$3OeO#-;D4xLOm0YF-v-o4{Z~Fsr}e(iDEIzdEr4EZ^N2EfHEiDUf>K zz4Zpao(L_D#xktlx;i)S9Wh&WqU^w}y)-JNd<@&t+R);I@Zedqaz!-@)nX^42fzaF zy8IOEv9(O;T8z=-$^7MR5S?hGA{EyK4C7D7@R^#uiyIhqc)B$78OuzyG)w6E^tzk> zSP0>2Qm?o@!gL*k0Io6$jCd?3=eIo#v~SP8QI9_GaL@2pYz7s8dN4P(XXVOe=f<%Q zi=i-rL%_}jxK2Y;tdkWiTQ?s zK}a<}ix$q~GI58(FFPe5n=*h1it%Fd$ zH)A1-qfiRm^6o-@y(!shvQwU(->3il^VMzt=HJsRQ1$+#SjdRgLcuo~?!rxm>!zx` zZLkVnZJaFo_PalB`<-!{GHX2s*h&~<&P)E@@BR_jcpj>L@fUx#nt*z+GpKFL zP~y;ER=uDL_PTcMy`f(FYaqW5o&N~i@$TiN-n6Xbd-uMCPR3VY-yFsChA3a;6RV?^ zdFRbVrPQ*xdbEpI)^E#B0Vv#g9rkb;>mMhjJChnO7(r$0rD3dw`q*%Pm`c(?R1Z-@W%d@%-VQboi)6 zR=;yq-G29-cQD!cb#_{xosX(3SKdew30r4|`2sINpFM9*><6+YieDGUey9>59zw+* zfqUpu$1iZoI|2pZ;_|(|Ys|zaChbpDi_v8_jq^SuEG~KisUj;Nz;YMNGKu?}Bruxih z|L^L*ee(Co8+>dpiE@2Crlj*)pgmds7?z}@-64sGo z5uD{+ClTqCpCPgqY4!8NpfmuGEI*Dj-`?gIi*e$Qa2E&jJdR_0D#JLAHV=;S{`ELg)hI;60oYn|8NTOhmeGzI+8OL=1o2y^= zgiFa5@(0d>>(kBuCsBmr3O|MtL&^DWA(8=&YRih{U^aGzl zb1&HuR>DD8)dEYHxjlpUnS6u_as~)1WA-UzIkT5}XUi6vjz0Ojf57#iS5-G$e+5S* zoewO$P|^l&5ECzqaR-)Fcn$a|VY4iNlZ0x*)g)}bOW72MZo0Zfo@!5uvtz(j|Hznh za90CE!Ld85W9)E_8Jdzj zWrH@6tnm8kBPsXLE)p$2B~tm09OOrb+&GkSXaa^?9kSyHHsHiMZ8Y4bJpzW1SJ`_& zIBxx8ukTp=kDfUC%YXmlKmO@X+!vqzQJhBGh4o+vgjr zhf9_$VkmI{)#0vscSG1)VD>cjRh_M_y<}CjcGXgbh)g)Q!GK><9P0g=0Wx9<2JBv3 zd%gX#Qd#(6@8I0jo~~Plir)fPoE7Y3uKJ~4`VZXsv5$K+CPw+DppB9xgkNrDIT2GI zlc!AK_~TSm@6%WW4&Y($8Qu_|96DtzF^n)Y9F8FNL|KnIXX0o> z;~(+dex*>d;#&ar+TCAx95qQJnfM#6b`XK!oq32Xvl_@9GF1Bi{Oi9_U3%$nvnT@l z_buKHR)(fBl<5@zP(i*g?)`YR!ci^BTn@&D;EOI^6(^RCqR%n;m)t{mYo~b1|5K(; z=HwQdlHIj|TXtmds|9RRM@oW0!-!1y`Y-&FzC&fMz!}Ov3a9ogN#*B2YIk9E>!t3) z7@3YiF@h`Fw32`T$H>g^YQcH)-GqOZ-rr;4QK#2^y{Z6Qzj5Plz2&Aizhl9I1vf5Q zxCEuCTdUKm$F>Iu^NnT5q)O^McWaBCL^%`O-kXu6Z@QHX8LWqabRYvIlMRGIp~j(` zg<^j-&t5-^v81d`f{kFFU@Q~o3l}cna;4{Rl$g<72^>|j=xW+EmvJrM$|YL=rkYv1!kegRC#R9|W2770A-3%qaM2`}C zQL^bsAt2c0!P0Dj;luoSCjFFGITA-P29cQNw%<|Sg~w*s0nksklAh)1ru}-tbq>=8oOyW ze+IT`>0(s?yuNoA|E_(|*qyQ%7}lv9cA+>LiJSf8S@0t7%a$!cPMvyu*XC#M9uzK) zuPOll@YjCrz`JgK%k9@)Kl6q+-*WS?2kyHY#>g?Ys*a{lpFuBRa-0STP9t3jR*d%S zdnWNZnS6JC=4Z$OiC;)ZBsxf9AIN)a^ zneY_6ZrypuTW_g8{J{@Y|Lo^~vHIed|Axi82`L20Os11*DpY^_w|}R){`#vK>Z|1> z(=v(wX-#wC-1tQ z#4-sd-eL6XJd#=gQyzo0kMZ-NSpzGcNUC=6A|LAuD=az0ot+cg*bZ~V5GP3{owx$ z2jf5Tk@r`>^V|QWT72I5p=m=tuu?f6>@8cTnS53okcZGuGQ4t&Q8@+TaXEV&CkgM7 zN*|S~<~!|Pb`$WRulytv`-HAR;CYy7@LN7AvoJ@6E#(M8NT}@cUigmAIrcE?mkf- z@KBaZann7YplzE-UmAT?v5r&X!m2T=;aj77G2zEYj>Hsnb2$lfF&&igpv&nF!cLw% zku&?t;BV*eqgbg@%;!^Py^sF(qEZl+x|wg;LIjdFb+yduY5K$&>M3=gyt|Z)L4i2& zM4bdLaf^qvvYwXun(w%>K?Gp$$z1pqMw$d&PD3H0zp%L{j#FL9HGos6Ok!AZJSwEb&n%|!EI1FqgVJdK ztU9f*@7j$Qg1CMUfHMTWy5S&BaFFwGwuZwHOz}8F>yQ)f%J4FAmVtPyY~br(zr8xZ z8PamvM|UxG=;U^h8*jX}`gi~CwrUnVeuY_G2cb_Xd*9}?{I+S7wEEu!?J?;O?+Cn2 zAj8mov&Ywc^k~0pI}uNCXT^+}Q>uUaZ~tX={`vDDg-u4jpLUOy`Sm$UHoR+@?$>zAd(l7N0Y1iL$u#csZ5)u z0F-0vvg4ZE_r2%6Zj%237rwE#ZD{kF0???BZ`kzPhYue*`oRx(NZ%XMk{*t zHP=(XfT+h8A};ep28ky^%?FN=v0f)b3}Ffs-><`TgZD-0A!w)2``w+_%q=Bn=sqv3 zuDkX!uGw6Qkf=htY_w3yci_hZTK2EX69vF`d8>83c}fA{AE@FNEjRDza20pn-@UQA zmA)S>CuNf@c1;}e-js)l@NMU4>y~W@x;)Vmf}KDzr&|itzxQ)L|Fbj-)98J%IE0_6 zys9y|@4{FfLz>7M{(~m2qeDFvD6s3FUgX+~S5|-Ly+6P;pdN=Z+muQTU%}});%|QA z&R7g6=Z;N(pzuptl*-!wj;$inDxT~CMI8WEEcEyu@+pl|d3VBsF|IvNHcRQIy})%X zsPvL#DutjI)q7d|x^)+`;(aCeD9?&HKpXm8L@ENPh0~>ffo)#O6Zx@IGuT7^`)Skj zZKK+KIy5Qp%e$ogdfx6tn9petyTtx^Ja^uLCDpZ8UvmKU2fumSZMRt+hcvHC0RDsj z?Gs;l;iVVvtC?J*b%F3DJ?56uOjr>Ka3G!uWnI5ffVysKmK7L3)^9lJX(h z6v#}B3lF!TT|+-olP2}!(DIc-90O$1ILbj>>U^DK2)Tg6=F66xU!6X2lor+D9%7Y8 zOe0<1YGjG?meP*0Y^FbI67XtFGpzy7sIi2@h4Bz8{+fVcF^s$=z6uF5krc9)>lQ~5 z!(QVZVWqt6U&zgK&LFUYrK6sMlBwR=tChOL^$v%%khNi!QYg`M-9!31~(a9_|d z=&4)B1bn_D|GGC0oj~7(^$mgP2FBhki+;PKmH7);?Pc{};YW*B{ouRab#C6=`Tu41 z?Ag!07OJmH00QL9SD*bKzdCHh>Cb=SXMVaG$-LhWzWW{3v>9lDb`{Oi3L_I^`Z5sy zb(pT#fN%+<`R#_)-VG0{_5494Db+lEzTKz|{2?u70`5~dxDhy7O<+eW55ZOEq&*6Q zd|}O}gJQt$WT5R0)Tws-0=e4x^}L$Om(=cw(t=G2^muluU_gw$-jgR3Cgg!XizzCe z-#qT~RQFyCtGfk>-HXGABS=oLh34>K)nFme7#XOMxSSP^M0$Q4GpN~x1t!9&UD5nF z7irH-EPA?m2oaqW${KrX&I`r`SH?r}foVB!sxZ(Pl$i`R>Ca8QkM?eB{>u>jlGX`& zv@zVzBqC)a_x>e3VFn6;h6$A?A%=4Uymixk=%*t{gAP_D%K!|b5V8S?9SNl&t=~?= zw2$G5MQi7f-_uPl>Uph&o1>kxE4^G=g21SB5Fo6?ZJtPOfdc|Y8tM<0&e@6vdbciZWSrnHl9acN;$ZiCJ%LL(a&x27#;cz+Rde&avu)HZHwOCY6!OF$&lc zHWSppgvoXx<~NVF{_Hc=Cbq7){pjz0 z=mXU|-}x2}xN|O*@-F+=06=_(tRu!$M~|PbKJ)p%tiJTcFUDNtg8B2SpZckfGEK3P z%1T<&7M$f1QB{4G8>quWKpmsML$YkhZ&!+mKrMaY~RW1dA z1>|lnXJrLlK?fGc5obmmT)`a>T$a`yVNhgOkab!V91ld8ab|R95k}<@1)8Rzx#jHp zzN@;cs=KOtzb_&qGv52(|5sJhw2fxf`!h2#A~G^EGhSxCeEH7BO?Xpw#T8ffO`ZC- zzr)QG-vb!ljo1K^)$xZPzU=n@_wzY_@##;zhX+n>+Jqy9uzyZ$gi}tao6z4O?dVJD*yX;DOEXTV4Y6>R&ZsBqpzx$Q#vvV1HV8h{j)=`bAv zqS0WW(g`1cjc+B!>x1|XLQW=ynlDPLP&R5wl#0=E_{L26X$Z9(%7tg~^<&idKW2O> zyY+i_$Y@KZ#b7o2i8>s}WV|;d$ z-y6ng1y3p;dSq7i>Y|IY&s=yO1j9Ii0?H6$8>Vor*{iS2&pvCqbd5HhNHavjb5?E^hjpK978(VEa}Kg^iWbzS^Fls+%S}Gq`xMk`DJuP$*STK z(IK;a@~_gd5Ewn8K$~z9%+V(tpB;JhvD?OVb>BAQ%K!SKO8j!jXzkIqhi5%<>%v9z zHskd>X;^%Lo_FZf(J5HC>)J40^5$5BcOkc)f^ykVTq-E^L>V4)h#xAAKJ89i69nHh z{MT@fFY;4b`j8X&x@`rrfo~C4MnTA%qX%{$8G&Pf%|AMk4FZ_aB8*|$NtJ_;P-Yqn z%8sWWIx5zRq8Z_zlr7#_5hrfAWU7Pp8(+?{u;J6kN30;To_5R=kNMe2!i`tXNB-Vf zv!bqK)W;g4!m2oS9vU&0`tPGF((kxLD8e<^vrPhfd3{Gn!OaNawm5bxYom%`Q);ZBBKlVc>@Ps9Gn? zJ6s;uc&SW~mIj~tz$G^a$`R{YL>Jjf$0ZtmpV=<^IGA9O9_;Mm0~C3Pg8Gro=u`~& zQjbWIX{M}iGDcc=nJ$g5_~A$NZF;9}4cUCrH+7yaY3qPke$hvsCTH@soa~2Nu*A{U z*`9Sz+U>4K9(??AJo(KJ;k{smFl&BP?xqOAf90n zhO#KWN7}{0()cJR8j&@`oS~-iD;Nqfh=e(~(4yfo&8C=2mpVzcqI*3R!_{a!+~m&r zVziMrM zJ=xv&-iwo)aW)MX74BX>4r6Q|yJ=4{yIyPX0BiSt2!hp^1kgT0JtAjvv`J zrx1%(@qv`nDaydOIfm>qnE7RN9%gvnSKSu#WV{GVZA#jrt7~n?p)E^$)HZ2tR%Iyi ztieB&*~?xTHh$$k#6$h(uf&70+U3eslCR9r&`yT%(W0IW8*lscr_ZT4@x|-27#_6& z1cSl0)mtv>>)G<+*s;6eG**rs*t)>V-_0Nt3&g#EvL6sFo&6+NIi&^C&S?#meo{=0 zu&;2*$K_Y#VYq;6N2BblDESc`r93Mu!pr8vq>(t7flBzvlVZzX^2MkGjnL>)MOWsN zWT;W@z*~ea`4Izy>Y>k@6rJZwIeFVc4)ArP#;>k%jKe=}MyA6HbD(27P9DbA5*{tZ zx`ZVnLutu!x(o9Wb#BWZeE4DEN$L_~A1r(O05y!PXHTS7(Bjn;cYPn zONxj*XpC|3K?>gurtDG|q0LZM@}w)aRe|Bh>dt)Ar^U@Tc;2^quI{r_r%UBaqalsw zd6u;g&p)4T^3mT}&gW_Q7RxX?S=biYCdXu5ZJk-e;MOOff8m)&N5?~~)@Vtx>>OCx z6|2@>gGSWH?IKnX;S@TXc05iu*}XWN9{C@d9;i~~SS;@s`6a4+iihXJ%tG&i)ft&vd~#gr$sXylz;*pwbCpXK2U2POe0o6zT8#-5(_I204# zD1pq>=^%B9JS8#G0^K>)ge5XT^%V08xQ1aqGN#~q36&EMaIbHdBHWBj{0iE@*4hbt zlg09u8(EOcJWErbHBod4gQ+Q2#EaP_9uCjd&qg zXc&y=I={rxxM?av=QCbqw8M3BO^1S^K(-^Fm+@2nMGaf7qxWsih&~2++JR%a!7u8A zjYM6PMMfSRHS@C6a^JHV236LKxNa2JjvPzU%Gw<2j}14P71( z*#_eBrfL`Y5{3-mZ_UPbcW1quHr@UwXPo%A0>sZ~+;$tl88c=KE_vI=yt ztZQr*w~>uhCWJ5d(QH6qQ@nDVYP7?{i`psjXS%@**W%mlgON;$F`^+4bCq{fFMsjw z>eF^am^x+`l^?8?am1>8r2;6V$jXr%3=^&a>@4obxpV#S2k9qw>$B5v z3e0&QJvZCXvq46VTVS;LJ}jsC{1Yn&OQ#QVLJc5aerK347S-yPqY?|pQ4{1yGYY1w zdgv>DNT&{=E3R$Ig?Jj}c)lSl_@qf`e&k6x7#AK~GeuZrbNDK2QNF}4mF10x`LaTy zIC2<l^vbsl0+SS#w}iAF3*MF`XlE9%8(F@#0&bd*ZQKIhs*KMzs&HjPJ2W9{l4+ z<~)1Ao_pS{fa1v!S7}@tb48yi=VR0xFCh)VTt>OYy-GVCC7$ z$bcZ`Pf_WjoVC~$`3Pkm$Vz1f#wMo541@@o2j4s+Aaya#a7uiyQ^%r$e@ugXJS~MC zSI*)?UXmStOlnR`nSInkbU*KugC)r?kUtE zsXpi+ZCU4&5+adPZ91)^fD3(C`Ne0tRSx+%e5K`Y(5BS2;t*Ql0>gloPma75%!wqO z$)*`=n)D3EMBoM9gC#j-H}l!an(A$+QDPEDhveq z!r-^!mCkzLTA8R0F+7x&muL)u;6w)&3BKqoXqGf|NzWR$U*84aL1O*N(?$-{ zX(G6=Z307KNoN7bMBqqkbcrr#)TO?BCB8Hz0#vmOl6kHld)IkhH0?E;5TZs~JM-#}iREaqK;t4<0x4jLZjaRYlAPBZm;-aUb zb~J4e@0{`+z&6mobw4yp^1x?T`!Ee=C7UiOqf&4rxf#=69ID_( zo)w6xtKOV+QC#RiNLs$JL5Yuf?=d)=@i@^WM|?b#631^h6%#fO46Wt%vf zWSvomDuno~rY=mOw7yaT%P0?kh#uO2@7MrGIKz>rL<(sE7Cp(v8!pRNF}xv=kBwzwGyKO)qzTGEag9Me@wF-Y=_uR&txEhMPF2e974yL&4q($m+uU3S38PJj@rG#M;1- zZ>x2J4~3Rf zo;XVA(1m|?&i{Pv<(IxxH@J1nI2=jM9>S@Qb^~qb*5S$9ifX<>*g)yfA#gX2mjdH2 z@6!H?2?&rMx!A?Hcb<;2(fHWK2Qa>3Y+={v)9Xi}vvM^*yjMhnz>7S2k&j*S6qR{} z%iw9D9kdWsuS7>Y%pmiZ;{z4Jh@pYR3;BbFm*gSvBoj&s*;rn@=!dd$1h@aReer2Q z9*5;M#dWlL9F)2?d-T!S7)9Z@A(#v1N4>I~)tx2M=cUGtz8EPpl9CK=^3E^0!ikY$ zg36*}XXPWtle9FBxM0S@W!Os3hcE*;-v7xtbMfGW^+UtQOP!6h4n6Ep`KS(cMO`qx z>lFd1 z>q?(DJ%5H_-XKwW$iuZtxfEABiV7o!9GwQqvQ8;$gd8z~uiQ|BL1Y8t@nuc;M#Svd zPi8;+*Z+%8MdE`w%puCDqu5SNf2U5}k0oL5@+UV9l_tU@1;iZn$%QhSJmPyy>DZu% zKJqm>`t~O`S>zk>JWU9T9MlZy94&dEKs9N7o)x&1pI1qq0mfWwrH?F)GNubG$=1P2 z@~|?8x`LP@2XCK~C+(iCU%TefXXiX~LqLP~`W^SF?r`_?ld~T=>i826+I`BD19@@> zw@HY_ml82Mb`mXI(2M9tG!#NiXM?Zi*eKK~lE)RrdqST{F-$y;DsqlU22=h_R?;9l z<7_Y{ITFh%JP?sw8EB~Dmz~d?%K;$GwZadXY3B%N;%UP&GV(GG2*MGf7pI&|ZNodg zzkcxHZ1LiyFnDZk>afQi@833NJ-xlz<8x+b?>_9^c<_N^<~a=}Qy}X7Iq-z1hK_#z zij`@o!FY-7qW)>n$dW;+55AB`1E;d6q0_kRSqurp;eiW$MQ;qQcDxp~9Pb=|<+|%} zlKC@Y0D+*w$}bEc)-I<{KQTK44^UWs9vVtt4IF}^G5oqZA(T#ZSpv7jToRR#bEGC; z{;FY1vZ+zhbj4%1)FHV{Hp5lwly@aA(}-1uV`;`M`G#%$ic%U}DGWOwGnGg#L0QH} z>mB%kR3t=r_em46-Klr>E3dtJ;rZu$=(!}(>kqvl25{-prCX0Z>6G8$Dcf{>H+Vc3 z()rOFY0y$SR=yQG6++9+U&Zu|!;})S*>eQw`G6Mx0#Rmy?(>a2B^{XTNY={&M@riB|js>FM z*a#nMZA}OhzY%M2T!(AGAqRXa%L7n(4j@OAa%d_JHl@+h8yV{oYm9ui6GoXQ+{jBN zkdM#RxebTQ06OPElLc+P@NSmVWE$`tU{2S2@v7a^Pd%Mod(Cy(z4!hCAOG%l z^w?1V03G&8L_t)mP8c16jP>{c{1@bycza4rZK|SD+l*?KL`~0ka>7K3ftGR6tWo5B z;O2M+)X0;patL{HivdkVH9&<=#$FCmn6os6=~T3sZn$|rat!FTiki?Vd2=IuRtnUlq-7`IsIXSS2ZxL zf{Pg1#85F&p~6Syi4~X7DndesG8nzAhdC_I!-pM848kNxi{faD45=EqfT6Sj5*_X0 zDHl#rqa!Y52<2pFr9}KNQa?VXecrhjWb^QS5S=#i-Uxm0u#0-lfHyI2A9?p7hh)>< zJ}v9Om&O{n8=uMGDSC#_@6Q4a##C!ZKE#7Mmv62>`J8s@8YN1CP0iZrVfbKdt?XNH z)1-Ep#!f27+9L-ZV9;`WT-6_TkAiPO70}kCR@9 zvSO`~pENz~w3D+LS6>CgOx|dR$cTBFs%$iF#wcx@qU^c^K-P3DyLU!In05A;uDx1# z5N5Q(Rb*g&fDS(?Po>V)qk`hE&ocsJfMqNQ>C$xL761XqWFm@;=A%}qAH4+`H;$N- z6UkFv-1*_0VHz!yOfKEN#Ct8VfB_+RSOq^$R$o{5#EZ|reC~ff^R$;7yB!uZxpo-C zBBOtQ=#gXhoU-S4>RVc-Enl?;pE1OTb)ZKs#;ePzBuAcW1X42rmpbBOyjTH*S1$@v zDpMf@c|z%Cmdr4CTro0Es`6@e2rg)ySwWOhjgQ9joV4;Cu?yz;uq@gTb^T2zvecEA z+sJw5o;uZ$>}!;U1}H&dLb9y2r9JzH+rFFK^!1xzWbo7!r?;?Ah@NQx!Cf{?!>4gl z14hjS?ZRV-e#3;nOOsG&xEci^VG%(t@sR3`~i073O zup&n@Cj{vCW@A#-fEqBCE0xU*j}cYMXDQ6bOTybB5Bs} z439q7{)Vu3^RmmnkUjM4Sr`Rk`Utojk_lhS3cSLISZ_kgn-VKeEvpzM0%N&}r?Rs; zrAp-qFi|*uOwNZ1<%Vi=W(*>P22e!M5fo4IPR=+D;&r@@*=Ij{arV(aJqLRcc@j0( zGI>)XwlJVAf>RksZvep~-jo@nVUALUv|z-Uqfe4t6JRt3(CU$r(`o%CUJA|s3Jy?A zmzL`D9o7Kmh`|g6vbH5>q8ZaNpXv@G(g2F~akG}gHoC`Vt@RC0tXZ}ClgAzPp2y3` zcNEOGlpV#hg3k%Z9P{+L4QoEq-?QO4ED2^UcrwS&MdIx!X)kOfsi9C6>Zl*P6e4Ou z&~SnVHPK;L!ex}ejuLX>*d@<9FtIy&X=0K`lTGq+Kh|)RuX@0;EAxv~h7$__fWV*@ zc3nHTKo10fY)lkqltmwO*q7JT+>l*<`G3m}IPe|V%)Aji!zi7dI$WZj$PY}VN(eyC z(xd5zOX%fj0;H1{!<3L08kwG*dFG#B^a_5#__4#vbR9UlpAl^YFf$NTEC*v!ZjqW{O;?{K zu?z4R2F!|TKGNt6M`QliQphL&m#7j>HCQbSmQhcLR_Z8BAku!pzClCnge?nu(HSNV z=y;W(dzh$1>QC{hW6CuS-{Z#C_=nc4UjC6c+W48Y^mmH;#cyUE(LH|rx0~AA4q3at zR}R+Xj(4^cDqBWh(1*Nn0Ez51Gzy1yFRC>`^{y=`0+PEmk;IV+6{}9FQ_>X1g?2LY z{0-Ny7ZR4c$r)1ci+5h1%$zhgj-E7>OD}=>bRXsdf8MeAsH4%4vV^#QHA_G+MrHX2 zbVU(a@XQx}b5m=!WXa0xYJBhG(OI)G5^P7k;ItT#flAYRrjYPQRBk1uPRWu$c3>Jk zs}sVV3)YVZ`imo74%H&&Ct7~w$2-HY(Yx2d7Jju5hWCB{@s#W{7ymULjNr&D>`IW# zKq#FYc~eKx=y~SE6eI(pTw>WQ?tKC#MZ8d#(e1@$&9$pyx`XmWcA|ApavoAjU!VPIWj2}MjcK^bcU-l>51<@M-DE6#3AdAHEd$-=QisF>7YrDa0F zl1fb{X1<{jnrlskh8XxNwMz@^w9_hUrcwx#!P!wo7{#yg@FZn0pI#OgnM5-b*e=D? zBGA}qiUb@JUp5D>3&}kGt7<%~;H8&d!UG1ZmB~|E)`R9GJ~}x0o6bTg zNJ5#|p;f|)3A)B!av7@ljdOjO2l&c z7dv!5P6OzWD+-nXxh5%DQfs6QrG`hfo3T)+(vLKclv^>BxRvpeb|~ctIs-W+%asg~ zGTLHJWjMq28>W*^@p1UcU5FylYFH&wK~xgLR1zCgs#1iDJv-Ohi0QChkTS5Apcv7eFFO>gMRPP|`B5iWJ7YcY zyRxnLp!iWo9i8nrbw5lEw`L0$&d0PE@72nP62^%>x-Q3JB9)Aa7&60!uvTgmTSNso zFEa7z-~(St=%=ZubQC1WgBQpm`C-n)nSx$?O3Vw>WgN@Jr`0X3_1Q@$ACvv{#h=Pf zIPrM!$JQDg=SBUH0VpL`t0U{g7MH}5AIUq=Rwh%&c|B|EB_>0a=}d{TFk(){v)Jf- zX=GlGD$IbFA4{_e5}oN}beSu*V^d1bbWX>4rr#v2`K@2I;@2;ODvHw^zW9_} zUUZpCdr%2#N=_m2Q=_B-rZ8?D0a@oSUyg092zi5_cpfk2 zp+GzFMIqInOG*af|p%3w~@XdOz$3>ktHMB{&_^lap01F;Ld|1P+ zH_V6cFO%NjUD%e>hPOZ_PMnw>d)(34{%@a(H2sh|d8x`&3Aql+I);3)&U5VyX|53{ zDu0J}A*YB)Hf5AW186#ngb0+uEWP+J4n-;ClX7L6IF^^4jd6pyAoI)V2x)R37GnLe zbd!zg7Ou5)#O$`>w4SkJJG1tNhW_4FE3cS&^Ub$>|NGzH=-BU+pw`h&$*MAw0}uRg z)75`>;icmz@A26#Oo<12d$K;BA;-HvT0I-2R0Jx+)^{qoD1_go9nM(;FXDN)grOCK zS%n%+Sw4nqIHf+@8hdhZse2QkWwo@T@7iZd3Nq3JlB;oMqxATGTSFoqNk}DRhhg~| zo14UdaYOX7rAx6hUr&5tui(*B-2AMvU|c9qVNrK9cw_*HX#BXh%be^lLt*tF$^q3D{^CN$A!iUV^Z0m(a zP)3ncVwLN@&HxIn!&M4_N-&JK66;_a-swuYURTa|pi z_mBU2_#S(|^~&8RO**^3zYpijt(TL4N2E>y%8zI8JV~xfDYK}BGdEUmKzB%UO z9rGWx3;Qdnd-<0UIb--kBgVuQa5XG6TXbe%m~LS;2}tKutBNySNnXIQ4bgc6NMh!L z%k=M*DNm?Fg_EE1q}FWa00@;wXM0C;y%~JTJ~+o(AtNw=q$izYBR4=_ay9Xm%gB5) zF14|li_ghnQ?3$&?Jy)*hQm7Xtv#nQP>sj{Lf_=V`_MRizz9cLtyr^a`4?~h_P1{N z*0;WebIpFgu8P)ve?tB2o_pTW*3tdBmag4CUf0}I-?P3)7PYa`1EHigML3&^+WLnX zrr`?2^r8Wbodan;EE!pclL&sS16jQ2BLni#(Q4`r4Ec`537$C_+gb-TV8K_pl!m_* zau)E*qmolhO43D83~(7j)GZJvtLsdp=cvZykuoA~ohix)11LBp8Jgi!jF|nX0{PLp z8av&p!Ur`vm6kO}aJ9PEEjpGBq;r*HZOKwO+Kmo+k@e;PC>p(p$AG6}lnRxLiFA4s z(Qx^%Z3*+K!o`V1+wYLPte~+>b7{n6LU0gP{s6M_SyIu@(G?RV?)a9b1E^I| znd(RxbkR!O8j#`2P=hq;G=~F0$dgMZ{OHu!t}Z;-s$aN%&6-PR-S>-2KXJhYJM=V{ zT;AIe*XJnK^UjguUN+z!mKs=Q;jH^dwjuANnj!}UO4 zFm3z^!VX85I)%nPEJAVy5YUnlpz(<`2&gGeGE$)2LlBn)L6DY419s;vq(6r zr(H7jk{(W&%5SphS{+MIePEgv3?wC}%axnuOVWz*6B=R?SN-x|(m7g=s=dYwZONX> znl3$04`Y^2B)Qq7T(mwstq*%Xgj*eX9EOW{#dM2P_lm1+08IhA0_w2V*OGO#bPR3W z(DUOZug<&roO3?#veE2HzSrBXBv($BJAZQbvF+U**LQV~I~2ztHEqNb$U%HRLfRJZ z$kGbgEVMY%(WNGoP0=_IJz;~&H+~lu>KX>nl;`P_;Jp7c7j?wVbuvpJoN^cQWqKKm zV5XU~ECOy762k^<-T=k~1bjzV4HU79-?=(M!XnmWMfQbQg z*u}!~rb6{n#}zKY7)mkKwabMJa@4sP>&n+g5ZHK{{7RFf%<X2fhC%i{~x+`?-%lIt$+n+EhZkOMr5E+a)BbBE(m}I%Cq*Lymq|XG`bTI=i|L z-i#AJHsOgePxxTNik$%TER<|(2(_tcl|{9NX0+y45kbHnr?@Cwi;i8)(%9A1A%#B4xA)kbN3yi+T}$ z?x)&l%%PM9y*xzl`A{5Ruc0O)A6rZ3gDvJi#vddhN^u1WR8dzbpzwy_Yva>hd>pH< zuXo|v)hn-kan79YUV7=JI$evo?Ro*$*_+DUdh@M&jo*9X2by-9aB)|6_q00f7wf}E zwKos&bPt{Sa_d*60R)hB8EY>!Wb2sXTYXp2jNwvgzM&1LL}llgx?qu3Mh-R7^G1V+ z37Kzd*l4H7cer@|VP|ffpuO4UqlX))O37E$1~E*MZfVEH^@cHc>AUXPr3)9lFn``FU;gYTKlxP5U>6VMTfr_atQYSa-}uJ( zDf>=6tEHps;?}OQ?`pyu3j;XLiSMoQWD|XB1hs?`>W(z7^MFH`()vc?`39tjmrEnL z8=V#Vm`^LxvFS+uA;CWduE2$y#INRjzM7}&_{AxEH6|r+Za9jL(ee@`S|gjvj_qWK!lZ!Lv7f5S2sIc_)ib3kN|yK(Ltb7>D|-UVG%xe6XaFlp&AK$F zoxozKCmqAHj+ivYS5`$Q0U!Lgwl-%S9qoA22hYccw$5I?X4Q{=^Y~-8&A8-}b&>I# zBv4lGZxYc}%mY2oyeWNSv6TaP!15Tq%a91g`>VPNxo4gANdL z&_HF1P7IYFYS}XmM!_4p0=pRX;z=F_KrSi~FNsf815{*e*!gK}#3~Ksioz_sl9A}! zyY&OwJzk7Uo`H@!V31FA+cCv$#>eFQH}~~!9vFCh{gS13KRNr^+h)x8n-!&kya|A& z-#3A%wMCpUOKxq2Prs%{ zakxfkjoRl~7WRw(YBpIab1IX{N}g#oP@lNE!n@I;QJY^^P(&eGQ>T7|wKtSB06uPc zd7o{8cxo)R-vD}^!-u5?99q&Dfn^5QwCFYO7>p?B`TF+m+Y0rbbb+NL7(Ui5r@1tI zeBE%{*1@OoUih;MmM*&MZ?3xPp5;$HwbS3-9Z`Wtfn@p}1<9_D`oC|vW%u#pr<{T( zQWv#%b-fKE!%0o}a1MrqSSuXBF-iDH6HYvl&Wq8C8bCD+YVfEQHcr68kk2}lj&8IW z6*b|fwM7F+j>dy@xpz^Ej0*8Fh3yjF09G2yJh3-`ERSA!9E-0 zMk|Kr>kXjj$aKY#9`5e-;hQV1;XBcYFRt4<^lWeMy2l=QIPtjd?r~?}LpXb3zf~9Cbl}05?3(h9K1T$6UonpOv{RQG zKppMbRtr<$&M<%?l^X$Cr#Bh=U7fI9-2igZ<()TNENk)ITHD7*8Z)8{kJbR%9!Je@ zWQM7zYvwyTH?n-llVxN1%@ym_;I({j_^hMzF`?b?g%%2E!k7A*G1BA5rtm)XMvVG4 z;LCZhtzWbLH!Bt|{oai?UjM@V_usECTGz_(O_*kSc@v60dXcZY?mM0P?BBi5mZ33+ zb&l;kx~Zw<%;vWC1{}=VjmF&o12~39t#2OWm&#xoxppEW#QgM@Q(0MbFN|z*ofG2a zIw<14a~JRMBP|U(McjnUaAAaMjo#pti8KZ`zbwD9G@*6KJdMRWUnURtVdGomMV!3( zOH`Df_(cQA+^uXm{SrAi4>wpf-{dc)$vqa&b10TYPB#Y7%1Ug?$?CB@j026C)j#vK zSL;YC<#XvqQ|=3PMH2awm#rHTi^`-dICm@?(|{wz8gPOS4Bi%e4G;!zMPpNAS)1+(S#C@B4`}z*=+^utLb6e}# zE$!_G4-Rd`D6zg3t!NAve`S3H4T=Yaitz(aSv04SWFrrGn6Y7FW5bqCMI%alT=IHY z2wMkWTA33nCDml|3y5X_2(hqrGVOq&<4Ffp>8xX#FEU1sfpL(PG3I6Yg;WK=VhKkk zN{M-WhuvWvA9vc!UI3_JtE>_pu&wr^dbBMEp-Qc-#%2U z!b*NpIiMrpQinWGk<(W#2d1+o9ghn`8)n<&tE8JZZrsq^Sih{Xx$!w9t?OIcGjHMi z#dkjR(63(J6%HpzrQA6oY0En&t6e`A7{tbg$&*_KS8qB1A7mca(bc+pQ$y1QEiKKR zXkmEnzjY5De#Z{MHoFbqGLQxTphbq+0k-lWP&Pm`O8G3P;*YvmAn?zJw_g0>+j;0QGqBCIdR@Ec*UnIl2b%(J(_-OGLtqX(Xr%cmPs5i~ zyqhYg3E{?2bb?O-z_$_WV7z&#(Irf++Yla}Q5Zf66$gB7x)(Vyj1nG{7f$mP2xAJv zFO4Q=5M()oBl{t$Oi`HwwHLU_4T=VEkcfeeA9)Hx{P58o4IPz?qt)s+4-P!l+R}6f z4BgiHEnDjP`}?yMI9GG|f(6-}IX_)`*If_utqfnI#_EsS|Nn!(`{qcG|F!@C002ov JPDHLkV1kZf@csY* literal 0 HcmV?d00001 diff --git a/src/main/resources/static/images/member/ea043b51fc194661964740fa5b08a77d.png b/src/main/resources/static/images/member/ea043b51fc194661964740fa5b08a77d.png new file mode 100644 index 0000000000000000000000000000000000000000..a72a46afb71b4c507fd5a4e81599826322e580e5 GIT binary patch literal 123450 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%0Ac8?>6PcsjQ$g`JXq1*Tb zc9wy{k)bHGJI1_L4AEeaX;T)WEMYOd!#Bky(iip~svcvr>36>KZMKeV4mD>Ai;Y>afMPeH+F! zO1d&V0*Lft_>EoKsjXQB9o{8z5n60!vB7pSE3)3JF@hepTU!jTc9}@hic&-M!lA(0 zUM+ClYdV>Qw5e=g@{ITJ5pW*uMwC(0$QOLX4IHxovA=O6grQ7HWhnpRE(z@*DA2d> z+QX@uC|Iz%@?m>3W+)pdsypO1>d^p zC0W9$EpY+{yUr=RvDbe6$wyfd&UxR}YgUH3{5!sJFPqNukVHauD-`zz@7Tpc>F#Rv zs^!R}#Jc!5Z+Mxsj*mNj{8$LUmv-*ldGhq>qhr_vDMo<@85Oxi$_Q1pW$TtWeGmk& zg|ijF*z0hmZXT-MFNCq;Se5<(h={;ydR(dw#_M}}Y8^Q2QzsYFbn9k9p)t4---u3>sAW%A(L%Ytr1@o%4Yu9p@?8WfsJoL*{ z++LG&Xo++BL;{^aEuW`j`~7OXWvH559ayb3dt-hRioEUIyRUj|*-V1r1dfqCf#p;F*KOy}(re<;jz$4&HtD-RD98 za?X4F(PPIZjN|l$CVDs`%9Dh}jzI8oo|E(tM>1a^2L{45VeBcaShkG$kEt=?+aw-T zOG1WKu#w8(KZE%-MHDTl#1S<^viIubFuLB;s#|WorrP+#)2wDaN5%F+Wnu+x;wc$k z#Zc)+F}JpltNfmL@_9B&Uqqa|g3!v|8ll)j_Wi05+bBJ@9$-B_Z{(v*877J{a`l}d z*u)Xl6qFpCJ~bgWv>su2e2gHWb%byc51Q14%DYTaP~tKL+H<6}$Lpp|XWNG7hM9AD z_j}&K92h;#Lx-z9dv;gPvZDOdh9_8c+X};}5!&0_JpAv(cTvxuy|2K}G&Obk3zY*tKIH~bZ0-IqG1Y`=5SJ%gl{$p^j-0bP`-B)WG7!XPCNFzP(AeM#+WubEptQ9z}$R9QpqRc zZpT5I`xAaRc%{MwPQ6^k7BU+YkN-hdg1Fd~5R6hf4CQS+O{s~wDjZJf4viv2fN0^g zA=0Lry%p?59nEfrXix&d^b==M*tlU+_3n550Qs`Bgm49R15rBAdWY{eBb=g|PUhO)D#Iv7 z%RK0k#_Ksz-bt@;3dfI5;D7k&agHw@B|i-0PVwND`yWjyD|v}+#kXg74n}i02s@B~ zN*P9=pKe+;mjnB5av%0S`63m33j4szFIT&E>_lDEo@(C<``9kEuR6eqi(`jhv9*nP zH-hKMo>hXNq5SujZVm!&`(N$0gl6=}88+ z^SJ8nT^xpu0x@o5hkqIcfbwXTM+!d4XC9@OziHQoOTL=lu3xWzzq+v|3YKo^cipuI z-zvEHQ{ls78=t1GbBZSd>Z*{C4CV_93}qZK$;Y};@l$MN z0iC2LID(eiMHug-dI0tK&WAa_VFivjMkzqkrPsmwLDn98WJBn0Q;Dg=B=M{vU^ft{ z;+9kr=wN0j_Y!t!f9VkE6`GYO_1he$>9Br>X$l?PbH%3lYUCv5s<>{{xQd{rEgcLI6McD1|W9w4RTXG78FQ3;|%pwdZk~ z#jC_opoGF*_?d<%B=Zv;BaZec`6Hi-fKdp$vCQcy_{JjiJgye^4!er0KqZXf0}e0* zlf!dx4Vc1}S}6ofK^*id<$?7zjIqAIMz)Bl5cu|Sc1^s58voO0^MsJ>Rd8!K3O8}q zI2R~J!|8pyjb}1PHLtqj3hrK+778AcO9>7AgVx5;LabaoRk+o8D(`?ukTCdJkuY8F zf>U@z_!dh4IF`b7h57!_kvfjeq_kH@zOqb+P_qz4@801l(MIE-uwj& zKbBCT+-pV5sYHALC`o%9y{5^k-Q-2=+QF_g>q3zA>uT@|5gki zdpf?8Ig`mF9URoTNU?|T2_~f4J0XE8zq2d5eYmJ;GH(VOv>^?2}smAg}X=VMsq^M-tE*$_AnI;ia7HM zBI05^;qjk8;-h17QsPi&-XL$t^v5H?#zcb6msqr>*Ka6340;)fA^S7WY(pW)UW6aC zs`HXX(}hdebi^VLCQZ+wjcDf7@$~$zV&%LDKLKN;Lx}?@?friSYgehe=^5AFx{Y6L z^e*tiDI6M4hqYtT6L8)FjvtC4WswbPiN@{-jy`VRwiE5!ivm=zSq&?+cb_}Ab@|1Y z{3o440BYH}ZP({cU%Bq@jT|**#tFK*K_xRo#qchK=bm-Ghsk1uN!N(0d(IXvoX;Wp z3G^xs*YvHk6qzv-vQ@8Xz8gzjHg&LUwIiG9Vz|O10bcxUoiTMqDNMU^levm~dWLglZ4v;*RxSMwwY4Swo&eTQ8w5A(kPtowHY{4mvJbDEo z7!C)_x`*h>nm|K9@U|F2V1yf$2IO<|J8^@5XqZHUiq~)sVdCUOCwoyIoo^+NDW$Bz zWF)c?0r>YB9EMh(uy#OSZJa7C!fqb4q z1>QC?e`8<~Srlh1b{^;vkJ-C>Hw@YlfG;1~e;D=loV?<61(4#%3h&I^ujX)Y$fAGAQ;n3rl~EaU%SLa z09rt$zd32BN!Fd{7tj+N!S;lQAKFCM8FEJ@&h$&10H3fo zVN)0z2YU$8l75ztU-6J1!@5W^noavLv_%1ds_dOW_gVpQaB|)S7-K0Igz0>qXc<4y zYehG%nsiNj`5ow%oH@|F#0Z+SAAl`+DUR*;Kq#$W30>X|Z@S0@?vHJFvU-JiU= zl^0rx--X<@(<(xj^XAWG!DAhBp(A7d&CwJDgLH(=|CSoKweG@7c)Ddd12UZ&zo2`` zclhxm>>-RLqvq%f*?Kb@O;NjE$ookQp5+A}u+shf=I0TVfFhfwZEmB+;>cO?J%_fZ z^5>=p_|pDk`wkvBc6j>aNwc~PDo`hfH$T6bN}*E2CQ6`a=IoL>F?oi{k+_?IHWO_n zF^Y^jgo!AnV1yuJnu%zG8<3IFJ|gwHB?Gh2$8~v&S)Js&oG--Qxfo>^05$%|O5&`-gJD)w)NIPB3%j-9plM-G* zZL%ROeAloV`tUsvyo@Wq=L)y`{zfx-IG&yN!z<2QQxQ(Pc!Ib04tvz@D2M0SI)z}g z%#-mQ3VU;0e6uttOz9=l2Ye9&yVAG@EkVE2H#9)v7w&%4c_2fv;o0mKIB>QwoV9V= zi@h;7xq6Ab7eT3n!A3b&Y$@~5vW#%I2XT%CA(0YSVZ^_%{TfIhJq9(#uMw*K1G$d9 z``r(s->>@}$aEsSnqLMh`G|RH=|wqi-M*8N440Op+Ul%}KhhsiiMR1gN7y{j)84z& z0}cyj&ze?Ub@^p1s-fG^X)*k=BS0+j9ZgP6Lt-Qpzp=-LacScRrqueJ8^l2*YEOe{ z8k{bqLYXb;712_l1dGpptGs`m5a!P=28SwYs z@s8{E8@!QbzxS)R?SIz~y!#7GB>xOdGs4pY$rNacV2|7jC>u<^=r0)Nl~66ckPW8J z1;!aw$5gfHqD~IYW$|j>y$m2}Fj^uSp7m_XZ7FjB-c7sV@n=XA z;b(Ykflh-(uf@E&bz;M&XIT)LQ=LB_#g%TOKp02o-L7|Ul>bkBB}wW^4Mq(;UKe&r zdlv{VKD8i5$f3SiRgMY3=LUx<T)7@lr4@5H_O^#ovXxNnW>u%@EGRuY$rougTNp}&_X-> zNXaEFz&HQ&_**E!o{W&htC?&b-Kcks?`t)n6am*FzFYVlP z8HmSc%@kJd#`FtF{kr~5KrF;Jt(Z>|tUx=a#-roXXYGd1bi_!Ts+fw=h8Ph0a4JI1 zMp45oS-LlPLI;AT_^RVjCJrgAPBB+QkI!?;94)GbF-&S2q9_}yOPhYN1_n5%U^89P ziN8obQg>s0GDiBPkByRaa;S<6bPBBe;k%ip;M;P_l>G$;Ws{YcI8CI8mXV=-;2N+< zV<;2p1b{(9#JpMYk$6-P7#f2bAUyN%LmRlPp32W2*P0l3 znomp(z&>G3Oo>J~&f8C7!Q-l{xrcc?jahD)5jTgF60fjlj)Llvlg!dw-292hgs_rU zma)nDN4Q4l6_FYtBYYy5*8J_ut!ZJ@OX+lm&@)M!Yf&6Qz7L@x`o-$J^Jm3LFO>_A zXP7 zwlCOI>Uj_pf}yZO2+eE9>;Q?-Z!AVP_V;2p)h?aeiq#J_ z>D=#HzDp%6@8a&exCQLwLS5tEisd$#@{Gbh+6OYmgA{c}MIL5NqVo)kdvV7z$?g5P zXmKUTc{Td5H!Cz6l}R!{Va+|8D~=RBo|(%TBJc+{=eu z_Y@2^TrdP2S@=H)SJMMK!=-5)k-Q$I8B?ZCiJrW5C>fp(5tb}sAVj^Y>$G<3qV+B6 zobOKk4m+rj#0bFoPB`^jxcmi7JorA&pU>$z;XMgtC^*6u&8#88&y2>L(&iOh2_tH!Ing8L~ z6mtr)lSj$~7lxM_G#rYYpw+gACm-4h7{ar*hBZ^J#EEN#o<2h0`y9jI3)ifUiT%yb?SL40Y)(WYs8M*xGDH<`3MJx?VguI3w!*#hywo)hh()2tpI5G0$+ny+Tp{ry^SmmoNSKz_ zDW>q;kncRG-wH+T`(J)}*E`?&POqU0BR}+*JumG2CIJsQRu&ECc~mQY(iw1iLn+YO zD2}mLuUbuyE9d=0A&Ej}`G_82-4hEx{3S+)8T#F{Fwv@H#!CFb-VH{02J9fQ@FjU2 z9|GAkbOmWTXJ2D)SjdmL>?-f z?%%CZLUiGNw{ZI7sirC(@)}Yo=UpQ?DL_TDK~#;tZ~4SVFy`ryE-p%_VoFUZzDE(x z$!QdB(9>(5(Hv77joWCZSA53QZ|$Re3{Sk6ztKO!6BfQ31rDP~J5FeTm_kmb_1#u5 zX>0E#1+(SZQ@?uhEr9>|Ou<^gV2@|hlh0N!ALP1kHU&$Mw!UONFnoDp)`og9mah0Z z6p7A2b=rwjM~UO;Nzv0Qexz&p!vb)AYQfW{(@R53K)+HFmc|<~#_M?i<~jD6+-m5} zhN-|MsgS}N4DsK^z2H>$ zV|bjZaE8pL7-1;kIG(g{(W0FH6A%JR;b4ZtgeAXZykJs2ngCfC8Mybi+ww-s-tlhW z)NbV@QV2ghE!a}XrWM7QUAve!SaZ>8)Ie=y-y2KBH84?X(5ibr-e~3a8aS(Z>BzC_ zelBQw^EGQZJRd-bK`Nz2)r=4*g>wTf06XVaOvjqRJ3&jB^6n2C8LK@LW(&8I>j)v^ zw8li*gvuO_y}Dkbuu$;%U?*S0*(zhB=uLq3j@6HMl*KXC)JyZ&0pRolEwdNU+t7IB zp(6)Zik$+nS9gjDX{Rb|5CV7Uh*5Bc@sqB?a4Rnv9Yw_)Glsbv@UU__G8w6GMJURf z&I!g4n{cBTS9`UpVb%64|C(R(seo32h8yKI=GY#r=21B#K50)8)(J z*1S7~)v;#0a45h@rfmAv8AaU}ZFp{2>H{79>1TO*nUD7~W2eMpa>EA<@*QgK&hX ze{>d}`NN(RFm8r#>6rwOpNi3D-g=F=fj60%J$n}AO$ibv$`SjB!0%jWuXicK2HK;t zr%s$ca_r#o2L)N+4G@5Pw(Z@5VuNQUPo6O2IBJ&cI=ZtukfIU<`b0N5kBN}lygBpEXIqS=?BlHY;u4W5B-*S`?2WTcSQZ*eU#eOtAHKv4)(QkF1hu*$V!#iHtQ zv_hXlscK9c8M!u@6F(FH5D}c+4zP9Gu4>oPh1G)DlX@7m#B1JxK!3qCz8xybjsuM} zDP#&z-5@o=y7Xwh2ZV0DUWYAUiV&H$7oh5-apNX&o7!IXliiO()m_#0oqMXCT>wtO5bH1;6?=|HUA6K zMJj)LKmDa)UWYRMVTTIWb(i)b;Bj;`wt3t3ies(t4h=!%+R#GIMkg|_Q*DNwJy9)K zFo(OLSF%{Z5lP`8siM9IjkM#6ozlgZ$Fc@ww?PkZua$w?KVJL{2;P)Q>!Yo4E=b3l zP7b^?fBqbJMS)yD(WuB%XStb=JBg@7F?Gl2;pLb2-1W6bzMUHYYghvW;BB{k;^+^4 z;FeEMn?CMxE`}cM(DpcU3c2b@ESU$O&ga?Eds)e(NoXK}$&+Y=860Ch;!h^%WrUJp znZD~|re2?M$XrYi4KSuAuG#XWzjl*wFWAy03%E&aKTGCr@lhQT`O-gvVi#sO*eRhm z0(!?zoUYbC@f=<6ORG`xl!5ECBmXrLVjgML--3-vXupA3wgm)yK(JpsOuh`Q$zG96 z*ENPIArjY)uhP0}`jBYib;Do}!B^hEa5Zxb*F~P-ZiT=6!k4R0{mGwm8{mBiIQsu_ zT_UVQdHimNJ=tb@j22{b;ocwN1y49fsy&VJbe^6U6d{O}Ct1 zEwXv-wHDDwrR!U1~78LAw7pNMPmBlAA+YuDhUt$ZuSEbBzu^K z&G?07g=ZM)?t+B~v%mvMw0Nb#u(tm&vs^5Pp2cx^*W;z!}tf~7Z3 zo#9?b5-ch9d$ixZBBFISEw{)-H@d(v6BxVnt5&UG$(##*xPfihFpk#nmsPdSr}#!# z+^O(xy41ye^(EdA*B z$^flvij{QDU(0|>&`r*?jS`LuIMqyzt)5^HR&^!Q)O}mDra&pci z!}Ga=p86j>{b{B-HdH_S;SW?F{Lp)tt{IJ1;k*kv@hrIJI~vQHHv)(0l`36fsZGUD&h$YXBHS1dt0?vwN&z^P`ukY$94 zPv22kR$u0qxS+)?1`DPyg(+w?qgIGVW5I5uE^ab^?H}$vo~>Vi(XTvOVU`}#jVsKO zF7AO$`K~_=(SRcd(xC&wJcWt!K$X_$@zqzpdVBTDzx;o2rg9I%OBaml%0N&FM=23dnm`4e1{VZeV~VE^HR3_bCWx?L{-9Ixp9?K+uX*m-E!8jo zyZ=;e+q$Rv$3OeO#-;D4xLOm0YF-v-o4{Z~Fsr}e(iDEIzdEr4EZ^N2EfHEiDUf>K zz4Zpao(L_D#xktlx;i)S9Wh&WqU^w}y)-JNd<@&t+R);I@Zedqaz!-@)nX^42fzaF zy8IOEv9(O;T8z=-$^7MR5S?hGA{EyK4C7D7@R^#uiyIhqc)B$78OuzyG)w6E^tzk> zSP0>2Qm?o@!gL*k0Io6$jCd?3=eIo#v~SP8QI9_GaL@2pYz7s8dN4P(XXVOe=f<%Q zi=i-rL%_}jxK2Y;tdkWiTQ?s zK}a<}ix$q~GI58(FFPe5n=*h1it%Fd$ zH)A1-qfiRm^6o-@y(!shvQwU(->3il^VMzt=HJsRQ1$+#SjdRgLcuo~?!rxm>!zx` zZLkVnZJaFo_PalB`<-!{GHX2s*h&~<&P)E@@BR_jcpj>L@fUx#nt*z+GpKFL zP~y;ER=uDL_PTcMy`f(FYaqW5o&N~i@$TiN-n6Xbd-uMCPR3VY-yFsChA3a;6RV?^ zdFRbVrPQ*xdbEpI)^E#B0Vv#g9rkb;>mMhjJChnO7(r$0rD3dw`q*%Pm`c(?R1Z-@W%d@%-VQboi)6 zR=;yq-G29-cQD!cb#_{xosX(3SKdew30r4|`2sINpFM9*><6+YieDGUey9>59zw+* zfqUpu$1iZoI|2pZ;_|(|Ys|zaChbpDi_v8_jq^SuEG~KisUj;Nz;YMNGKu?}Bruxih z|L^L*ee(Co8+>dpiE@2Crlj*)pgmds7?z}@-64sGo z5uD{+ClTqCpCPgqY4!8NpfmuGEI*Dj-`?gIi*e$Qa2E&jJdR_0D#JLAHV=;S{`ELg)hI;60oYn|8NTOhmeGzI+8OL=1o2y^= zgiFa5@(0d>>(kBuCsBmr3O|MtL&^DWA(8=&YRih{U^aGzl zb1&HuR>DD8)dEYHxjlpUnS6u_as~)1WA-UzIkT5}XUi6vjz0Ojf57#iS5-G$e+5S* zoewO$P|^l&5ECzqaR-)Fcn$a|VY4iNlZ0x*)g)}bOW72MZo0Zfo@!5uvtz(j|Hznh za90CE!Ld85W9)E_8Jdzj zWrH@6tnm8kBPsXLE)p$2B~tm09OOrb+&GkSXaa^?9kSyHHsHiMZ8Y4bJpzW1SJ`_& zIBxx8ukTp=kDfUC%YXmlKmO@X+!vqzQJhBGh4o+vgjr zhf9_$VkmI{)#0vscSG1)VD>cjRh_M_y<}CjcGXgbh)g)Q!GK><9P0g=0Wx9<2JBv3 zd%gX#Qd#(6@8I0jo~~Plir)fPoE7Y3uKJ~4`VZXsv5$K+CPw+DppB9xgkNrDIT2GI zlc!AK_~TSm@6%WW4&Y($8Qu_|96DtzF^n)Y9F8FNL|KnIXX0o> z;~(+dex*>d;#&ar+TCAx95qQJnfM#6b`XK!oq32Xvl_@9GF1Bi{Oi9_U3%$nvnT@l z_buKHR)(fBl<5@zP(i*g?)`YR!ci^BTn@&D;EOI^6(^RCqR%n;m)t{mYo~b1|5K(; z=HwQdlHIj|TXtmds|9RRM@oW0!-!1y`Y-&FzC&fMz!}Ov3a9ogN#*B2YIk9E>!t3) z7@3YiF@h`Fw32`T$H>g^YQcH)-GqOZ-rr;4QK#2^y{Z6Qzj5Plz2&Aizhl9I1vf5Q zxCEuCTdUKm$F>Iu^NnT5q)O^McWaBCL^%`O-kXu6Z@QHX8LWqabRYvIlMRGIp~j(` zg<^j-&t5-^v81d`f{kFFU@Q~o3l}cna;4{Rl$g<72^>|j=xW+EmvJrM$|YL=rkYv1!kegRC#R9|W2770A-3%qaM2`}C zQL^bsAt2c0!P0Dj;luoSCjFFGITA-P29cQNw%<|Sg~w*s0nksklAh)1ru}-tbq>=8oOyW ze+IT`>0(s?yuNoA|E_(|*qyQ%7}lv9cA+>LiJSf8S@0t7%a$!cPMvyu*XC#M9uzK) zuPOll@YjCrz`JgK%k9@)Kl6q+-*WS?2kyHY#>g?Ys*a{lpFuBRa-0STP9t3jR*d%S zdnWNZnS6JC=4Z$OiC;)ZBsxf9AIN)a^ zneY_6ZrypuTW_g8{J{@Y|Lo^~vHIed|Axi82`L20Os11*DpY^_w|}R){`#vK>Z|1> z(=v(wX-#wC-1tQ z#4-sd-eL6XJd#=gQyzo0kMZ-NSpzGcNUC=6A|LAuD=az0ot+cg*bZ~V5GP3{owx$ z2jf5Tk@r`>^V|QWT72I5p=m=tuu?f6>@8cTnS53okcZGuGQ4t&Q8@+TaXEV&CkgM7 zN*|S~<~!|Pb`$WRulytv`-HAR;CYy7@LN7AvoJ@6E#(M8NT}@cUigmAIrcE?mkf- z@KBaZann7YplzE-UmAT?v5r&X!m2T=;aj77G2zEYj>Hsnb2$lfF&&igpv&nF!cLw% zku&?t;BV*eqgbg@%;!^Py^sF(qEZl+x|wg;LIjdFb+yduY5K$&>M3=gyt|Z)L4i2& zM4bdLaf^qvvYwXun(w%>K?Gp$$z1pqMw$d&PD3H0zp%L{j#FL9HGos6Ok!AZJSwEb&n%|!EI1FqgVJdK ztU9f*@7j$Qg1CMUfHMTWy5S&BaFFwGwuZwHOz}8F>yQ)f%J4FAmVtPyY~br(zr8xZ z8PamvM|UxG=;U^h8*jX}`gi~CwrUnVeuY_G2cb_Xd*9}?{I+S7wEEu!?J?;O?+Cn2 zAj8mov&Ywc^k~0pI}uNCXT^+}Q>uUaZ~tX={`vDDg-u4jpLUOy`Sm$UHoR+@?$>zAd(l7N0Y1iL$u#csZ5)u z0F-0vvg4ZE_r2%6Zj%237rwE#ZD{kF0???BZ`kzPhYue*`oRx(NZ%XMk{*t zHP=(XfT+h8A};ep28ky^%?FN=v0f)b3}Ffs-><`TgZD-0A!w)2``w+_%q=Bn=sqv3 zuDkX!uGw6Qkf=htY_w3yci_hZTK2EX69vF`d8>83c}fA{AE@FNEjRDza20pn-@UQA zmA)S>CuNf@c1;}e-js)l@NMU4>y~W@x;)Vmf}KDzr&|itzxQ)L|Fbj-)98J%IE0_6 zys9y|@4{FfLz>7M{(~m2qeDFvD6s3FUgX+~S5|-Ly+6P;pdN=Z+muQTU%}});%|QA z&R7g6=Z;N(pzuptl*-!wj;$inDxT~CMI8WEEcEyu@+pl|d3VBsF|IvNHcRQIy})%X zsPvL#DutjI)q7d|x^)+`;(aCeD9?&HKpXm8L@ENPh0~>ffo)#O6Zx@IGuT7^`)Skj zZKK+KIy5Qp%e$ogdfx6tn9petyTtx^Ja^uLCDpZ8UvmKU2fumSZMRt+hcvHC0RDsj z?Gs;l;iVVvtC?J*b%F3DJ?56uOjr>Ka3G!uWnI5ffVysKmK7L3)^9lJX(h z6v#}B3lF!TT|+-olP2}!(DIc-90O$1ILbj>>U^DK2)Tg6=F66xU!6X2lor+D9%7Y8 zOe0<1YGjG?meP*0Y^FbI67XtFGpzy7sIi2@h4Bz8{+fVcF^s$=z6uF5krc9)>lQ~5 z!(QVZVWqt6U&zgK&LFUYrK6sMlBwR=tChOL^$v%%khNi!QYg`M-9!31~(a9_|d z=&4)B1bn_D|GGC0oj~7(^$mgP2FBhki+;PKmH7);?Pc{};YW*B{ouRab#C6=`Tu41 z?Ag!07OJmH00QL9SD*bKzdCHh>Cb=SXMVaG$-LhWzWW{3v>9lDb`{Oi3L_I^`Z5sy zb(pT#fN%+<`R#_)-VG0{_5494Db+lEzTKz|{2?u70`5~dxDhy7O<+eW55ZOEq&*6Q zd|}O}gJQt$WT5R0)Tws-0=e4x^}L$Om(=cw(t=G2^muluU_gw$-jgR3Cgg!XizzCe z-#qT~RQFyCtGfk>-HXGABS=oLh34>K)nFme7#XOMxSSP^M0$Q4GpN~x1t!9&UD5nF z7irH-EPA?m2oaqW${KrX&I`r`SH?r}foVB!sxZ(Pl$i`R>Ca8QkM?eB{>u>jlGX`& zv@zVzBqC)a_x>e3VFn6;h6$A?A%=4Uymixk=%*t{gAP_D%K!|b5V8S?9SNl&t=~?= zw2$G5MQi7f-_uPl>Uph&o1>kxE4^G=g21SB5Fo6?ZJtPOfdc|Y8tM<0&e@6vdbciZWSrnHl9acN;$ZiCJ%LL(a&x27#;cz+Rde&avu)HZHwOCY6!OF$&lc zHWSppgvoXx<~NVF{_Hc=Cbq7){pjz0 z=mXU|-}x2}xN|O*@-F+=06=_(tRu!$M~|PbKJ)p%tiJTcFUDNtg8B2SpZckfGEK3P z%1T<&7M$f1QB{4G8>quWKpmsML$YkhZ&!+mKrMaY~RW1dA z1>|lnXJrLlK?fGc5obmmT)`a>T$a`yVNhgOkab!V91ld8ab|R95k}<@1)8Rzx#jHp zzN@;cs=KOtzb_&qGv52(|5sJhw2fxf`!h2#A~G^EGhSxCeEH7BO?Xpw#T8ffO`ZC- zzr)QG-vb!ljo1K^)$xZPzU=n@_wzY_@##;zhX+n>+Jqy9uzyZ$gi}tao6z4O?dVJD*yX;DOEXTV4Y6>R&ZsBqpzx$Q#vvV1HV8h{j)=`bAv zqS0WW(g`1cjc+B!>x1|XLQW=ynlDPLP&R5wl#0=E_{L26X$Z9(%7tg~^<&idKW2O> zyY+i_$Y@KZ#b7o2i8>s}WV|;d$ z-y6ng1y3p;dSq7i>Y|IY&s=yO1j9Ii0?H6$8>Vor*{iS2&pvCqbd5HhNHavjb5?E^hjpK978(VEa}Kg^iWbzS^Fls+%S}Gq`xMk`DJuP$*STK z(IK;a@~_gd5Ewn8K$~z9%+V(tpB;JhvD?OVb>BAQ%K!SKO8j!jXzkIqhi5%<>%v9z zHskd>X;^%Lo_FZf(J5HC>)J40^5$5BcOkc)f^ykVTq-E^L>V4)h#xAAKJ89i69nHh z{MT@fFY;4b`j8X&x@`rrfo~C4MnTA%qX%{$8G&Pf%|AMk4FZ_aB8*|$NtJ_;P-Yqn z%8sWWIx5zRq8Z_zlr7#_5hrfAWU7Pp8(+?{u;J6kN30;To_5R=kNMe2!i`tXNB-Vf zv!bqK)W;g4!m2oS9vU&0`tPGF((kxLD8e<^vrPhfd3{Gn!OaNawm5bxYom%`Q);ZBBKlVc>@Ps9Gn? zJ6s;uc&SW~mIj~tz$G^a$`R{YL>Jjf$0ZtmpV=<^IGA9O9_;Mm0~C3Pg8Gro=u`~& zQjbWIX{M}iGDcc=nJ$g5_~A$NZF;9}4cUCrH+7yaY3qPke$hvsCTH@soa~2Nu*A{U z*`9Sz+U>4K9(??AJo(KJ;k{smFl&BP?xqOAf90n zhO#KWN7}{0()cJR8j&@`oS~-iD;Nqfh=e(~(4yfo&8C=2mpVzcqI*3R!_{a!+~m&r zVziMrM zJ=xv&-iwo)aW)MX74BX>4r6Q|yJ=4{yIyPX0BiSt2!hp^1kgT0JtAjvv`J zrx1%(@qv`nDaydOIfm>qnE7RN9%gvnSKSu#WV{GVZA#jrt7~n?p)E^$)HZ2tR%Iyi ztieB&*~?xTHh$$k#6$h(uf&70+U3eslCR9r&`yT%(W0IW8*lscr_ZT4@x|-27#_6& z1cSl0)mtv>>)G<+*s;6eG**rs*t)>V-_0Nt3&g#EvL6sFo&6+NIi&^C&S?#meo{=0 zu&;2*$K_Y#VYq;6N2BblDESc`r93Mu!pr8vq>(t7flBzvlVZzX^2MkGjnL>)MOWsN zWT;W@z*~ea`4Izy>Y>k@6rJZwIeFVc4)ArP#;>k%jKe=}MyA6HbD(27P9DbA5*{tZ zx`ZVnLutu!x(o9Wb#BWZeE4DEN$L_~A1r(O05y!PXHTS7(Bjn;cYPn zONxj*XpC|3K?>gurtDG|q0LZM@}w)aRe|Bh>dt)Ar^U@Tc;2^quI{r_r%UBaqalsw zd6u;g&p)4T^3mT}&gW_Q7RxX?S=biYCdXu5ZJk-e;MOOff8m)&N5?~~)@Vtx>>OCx z6|2@>gGSWH?IKnX;S@TXc05iu*}XWN9{C@d9;i~~SS;@s`6a4+iihXJ%tG&i)ft&vd~#gr$sXylz;*pwbCpXK2U2POe0o6zT8#-5(_I204# zD1pq>=^%B9JS8#G0^K>)ge5XT^%V08xQ1aqGN#~q36&EMaIbHdBHWBj{0iE@*4hbt zlg09u8(EOcJWErbHBod4gQ+Q2#EaP_9uCjd&qg zXc&y=I={rxxM?av=QCbqw8M3BO^1S^K(-^Fm+@2nMGaf7qxWsih&~2++JR%a!7u8A zjYM6PMMfSRHS@C6a^JHV236LKxNa2JjvPzU%Gw<2j}14P71( z*#_eBrfL`Y5{3-mZ_UPbcW1quHr@UwXPo%A0>sZ~+;$tl88c=KE_vI=yt ztZQr*w~>uhCWJ5d(QH6qQ@nDVYP7?{i`psjXS%@**W%mlgON;$F`^+4bCq{fFMsjw z>eF^am^x+`l^?8?am1>8r2;6V$jXr%3=^&a>@4obxpV#S2k9qw>$B5v z3e0&QJvZCXvq46VTVS;LJ}jsC{1Yn&OQ#QVLJc5aerK347S-yPqY?|pQ4{1yGYY1w zdgv>DNT&{=E3R$Ig?Jj}c)lSl_@qf`e&k6x7#AK~GeuZrbNDK2QNF}4mF10x`LaTy zIC2<l^vbsl0+SS#w}iAF3*MF`XlE9%8(F@#0&bd*ZQKIhs*KMzs&HjPJ2W9{l4+ z<~)1Ao_pS{fa1v!S7}@tb48yi=VR0xFCh)VTt>OYy-GVCC7$ z$bcZ`Pf_WjoVC~$`3Pkm$Vz1f#wMo541@@o2j4s+Aaya#a7uiyQ^%r$e@ugXJS~MC zSI*)?UXmStOlnR`nSInkbU*KugC)r?kUtE zsXpi+ZCU4&5+adPZ91)^fD3(C`Ne0tRSx+%e5K`Y(5BS2;t*Ql0>gloPma75%!wqO z$)*`=n)D3EMBoM9gC#j-H}l!an(A$+QDPEDhveq z!r-^!mCkzLTA8R0F+7x&muL)u;6w)&3BKqoXqGf|NzWR$U*84aL1O*N(?$-{ zX(G6=Z307KNoN7bMBqqkbcrr#)TO?BCB8Hz0#vmOl6kHld)IkhH0?E;5TZs~JM-#}iREaqK;t4<0x4jLZjaRYlAPBZm;-aUb zb~J4e@0{`+z&6mobw4yp^1x?T`!Ee=C7UiOqf&4rxf#=69ID_( zo)w6xtKOV+QC#RiNLs$JL5Yuf?=d)=@i@^WM|?b#631^h6%#fO46Wt%vf zWSvomDuno~rY=mOw7yaT%P0?kh#uO2@7MrGIKz>rL<(sE7Cp(v8!pRNF}xv=kBwzwGyKO)qzTGEag9Me@wF-Y=_uR&txEhMPF2e974yL&4q($m+uU3S38PJj@rG#M;1- zZ>x2J4~3Rf zo;XVA(1m|?&i{Pv<(IxxH@J1nI2=jM9>S@Qb^~qb*5S$9ifX<>*g)yfA#gX2mjdH2 z@6!H?2?&rMx!A?Hcb<;2(fHWK2Qa>3Y+={v)9Xi}vvM^*yjMhnz>7S2k&j*S6qR{} z%iw9D9kdWsuS7>Y%pmiZ;{z4Jh@pYR3;BbFm*gSvBoj&s*;rn@=!dd$1h@aReer2Q z9*5;M#dWlL9F)2?d-T!S7)9Z@A(#v1N4>I~)tx2M=cUGtz8EPpl9CK=^3E^0!ikY$ zg36*}XXPWtle9FBxM0S@W!Os3hcE*;-v7xtbMfGW^+UtQOP!6h4n6Ep`KS(cMO`qx z>lFd1 z>q?(DJ%5H_-XKwW$iuZtxfEABiV7o!9GwQqvQ8;$gd8z~uiQ|BL1Y8t@nuc;M#Svd zPi8;+*Z+%8MdE`w%puCDqu5SNf2U5}k0oL5@+UV9l_tU@1;iZn$%QhSJmPyy>DZu% zKJqm>`t~O`S>zk>JWU9T9MlZy94&dEKs9N7o)x&1pI1qq0mfWwrH?F)GNubG$=1P2 z@~|?8x`LP@2XCK~C+(iCU%TefXXiX~LqLP~`W^SF?r`_?ld~T=>i826+I`BD19@@> zw@HY_ml82Mb`mXI(2M9tG!#NiXM?Zi*eKK~lE)RrdqST{F-$y;DsqlU22=h_R?;9l z<7_Y{ITFh%JP?sw8EB~Dmz~d?%K;$GwZadXY3B%N;%UP&GV(GG2*MGf7pI&|ZNodg zzkcxHZ1LiyFnDZk>afQi@833NJ-xlz<8x+b?>_9^c<_N^<~a=}Qy}X7Iq-z1hK_#z zij`@o!FY-7qW)>n$dW;+55AB`1E;d6q0_kRSqurp;eiW$MQ;qQcDxp~9Pb=|<+|%} zlKC@Y0D+*w$}bEc)-I<{KQTK44^UWs9vVtt4IF}^G5oqZA(T#ZSpv7jToRR#bEGC; z{;FY1vZ+zhbj4%1)FHV{Hp5lwly@aA(}-1uV`;`M`G#%$ic%U}DGWOwGnGg#L0QH} z>mB%kR3t=r_em46-Klr>E3dtJ;rZu$=(!}(>kqvl25{-prCX0Z>6G8$Dcf{>H+Vc3 z()rOFY0y$SR=yQG6++9+U&Zu|!;})S*>eQw`G6Mx0#Rmy?(>a2B^{XTNY={&M@riB|js>FM z*a#nMZA}OhzY%M2T!(AGAqRXa%L7n(4j@OAa%d_JHl@+h8yV{oYm9ui6GoXQ+{jBN zkdM#RxebTQ06OPElLc+P@NSmVWE$`tU{2S2@v7a^Pd%Mod(Cy(z4!hCAOG%l z^w?1V03G&8L_t)mP8c16jP>{c{1@bycza4rZK|SD+l*?KL`~0ka>7K3ftGR6tWo5B z;O2M+)X0;patL{HivdkVH9&<=#$FCmn6os6=~T3sZn$|rat!FTiki?Vd2=IuRtnUlq-7`IsIXSS2ZxL zf{Pg1#85F&p~6Syi4~X7DndesG8nzAhdC_I!-pM848kNxi{faD45=EqfT6Sj5*_X0 zDHl#rqa!Y52<2pFr9}KNQa?VXecrhjWb^QS5S=#i-Uxm0u#0-lfHyI2A9?p7hh)>< zJ}v9Om&O{n8=uMGDSC#_@6Q4a##C!ZKE#7Mmv62>`J8s@8YN1CP0iZrVfbKdt?XNH z)1-Ep#!f27+9L-ZV9;`WT-6_TkAiPO70}kCR@9 zvSO`~pENz~w3D+LS6>CgOx|dR$cTBFs%$iF#wcx@qU^c^K-P3DyLU!In05A;uDx1# z5N5Q(Rb*g&fDS(?Po>V)qk`hE&ocsJfMqNQ>C$xL761XqWFm@;=A%}qAH4+`H;$N- z6UkFv-1*_0VHz!yOfKEN#Ct8VfB_+RSOq^$R$o{5#EZ|reC~ff^R$;7yB!uZxpo-C zBBOtQ=#gXhoU-S4>RVc-Enl?;pE1OTb)ZKs#;ePzBuAcW1X42rmpbBOyjTH*S1$@v zDpMf@c|z%Cmdr4CTro0Es`6@e2rg)ySwWOhjgQ9joV4;Cu?yz;uq@gTb^T2zvecEA z+sJw5o;uZ$>}!;U1}H&dLb9y2r9JzH+rFFK^!1xzWbo7!r?;?Ah@NQx!Cf{?!>4gl z14hjS?ZRV-e#3;nOOsG&xEci^VG%(t@sR3`~i073O zup&n@Cj{vCW@A#-fEqBCE0xU*j}cYMXDQ6bOTybB5Bs} z439q7{)Vu3^RmmnkUjM4Sr`Rk`Utojk_lhS3cSLISZ_kgn-VKeEvpzM0%N&}r?Rs; zrAp-qFi|*uOwNZ1<%Vi=W(*>P22e!M5fo4IPR=+D;&r@@*=Ij{arV(aJqLRcc@j0( zGI>)XwlJVAf>RksZvep~-jo@nVUALUv|z-Uqfe4t6JRt3(CU$r(`o%CUJA|s3Jy?A zmzL`D9o7Kmh`|g6vbH5>q8ZaNpXv@G(g2F~akG}gHoC`Vt@RC0tXZ}ClgAzPp2y3` zcNEOGlpV#hg3k%Z9P{+L4QoEq-?QO4ED2^UcrwS&MdIx!X)kOfsi9C6>Zl*P6e4Ou z&~SnVHPK;L!ex}ejuLX>*d@<9FtIy&X=0K`lTGq+Kh|)RuX@0;EAxv~h7$__fWV*@ zc3nHTKo10fY)lkqltmwO*q7JT+>l*<`G3m}IPe|V%)Aji!zi7dI$WZj$PY}VN(eyC z(xd5zOX%fj0;H1{!<3L08kwG*dFG#B^a_5#__4#vbR9UlpAl^YFf$NTEC*v!ZjqW{O;?{K zu?z4R2F!|TKGNt6M`QliQphL&m#7j>HCQbSmQhcLR_Z8BAku!pzClCnge?nu(HSNV z=y;W(dzh$1>QC{hW6CuS-{Z#C_=nc4UjC6c+W48Y^mmH;#cyUE(LH|rx0~AA4q3at zR}R+Xj(4^cDqBWh(1*Nn0Ez51Gzy1yFRC>`^{y=`0+PEmk;IV+6{}9FQ_>X1g?2LY z{0-Ny7ZR4c$r)1ci+5h1%$zhgj-E7>OD}=>bRXsdf8MeAsH4%4vV^#QHA_G+MrHX2 zbVU(a@XQx}b5m=!WXa0xYJBhG(OI)G5^P7k;ItT#flAYRrjYPQRBk1uPRWu$c3>Jk zs}sVV3)YVZ`imo74%H&&Ct7~w$2-HY(Yx2d7Jju5hWCB{@s#W{7ymULjNr&D>`IW# zKq#FYc~eKx=y~SE6eI(pTw>WQ?tKC#MZ8d#(e1@$&9$pyx`XmWcA|ApavoAjU!VPIWj2}MjcK^bcU-l>51<@M-DE6#3AdAHEd$-=QisF>7YrDa0F zl1fb{X1<{jnrlskh8XxNwMz@^w9_hUrcwx#!P!wo7{#yg@FZn0pI#OgnM5-b*e=D? zBGA}qiUb@JUp5D>3&}kGt7<%~;H8&d!UG1ZmB~|E)`R9GJ~}x0o6bTg zNJ5#|p;f|)3A)B!av7@ljdOjO2l&c z7dv!5P6OzWD+-nXxh5%DQfs6QrG`hfo3T)+(vLKclv^>BxRvpeb|~ctIs-W+%asg~ zGTLHJWjMq28>W*^@p1UcU5FylYFH&wK~xgLR1zCgs#1iDJv-Ohi0QChkTS5Apcv7eFFO>gMRPP|`B5iWJ7YcY zyRxnLp!iWo9i8nrbw5lEw`L0$&d0PE@72nP62^%>x-Q3JB9)Aa7&60!uvTgmTSNso zFEa7z-~(St=%=ZubQC1WgBQpm`C-n)nSx$?O3Vw>WgN@Jr`0X3_1Q@$ACvv{#h=Pf zIPrM!$JQDg=SBUH0VpL`t0U{g7MH}5AIUq=Rwh%&c|B|EB_>0a=}d{TFk(){v)Jf- zX=GlGD$IbFA4{_e5}oN}beSu*V^d1bbWX>4rr#v2`K@2I;@2;ODvHw^zW9_} zUUZpCdr%2#N=_m2Q=_B-rZ8?D0a@oSUyg092zi5_cpfk2 zp+GzFMIqInOG*af|p%3w~@XdOz$3>ktHMB{&_^lap01F;Ld|1P+ zH_V6cFO%NjUD%e>hPOZ_PMnw>d)(34{%@a(H2sh|d8x`&3Aql+I);3)&U5VyX|53{ zDu0J}A*YB)Hf5AW186#ngb0+uEWP+J4n-;ClX7L6IF^^4jd6pyAoI)V2x)R37GnLe zbd!zg7Ou5)#O$`>w4SkJJG1tNhW_4FE3cS&^Ub$>|NGzH=-BU+pw`h&$*MAw0}uRg z)75`>;icmz@A26#Oo<12d$K;BA;-HvT0I-2R0Jx+)^{qoD1_go9nM(;FXDN)grOCK zS%n%+Sw4nqIHf+@8hdhZse2QkWwo@T@7iZd3Nq3JlB;oMqxATGTSFoqNk}DRhhg~| zo14UdaYOX7rAx6hUr&5tui(*B-2AMvU|c9qVNrK9cw_*HX#BXh%be^lLt*tF$^q3D{^CN$A!iUV^Z0m(a zP)3ncVwLN@&HxIn!&M4_N-&JK66;_a-swuYURTa|pi z_mBU2_#S(|^~&8RO**^3zYpijt(TL4N2E>y%8zI8JV~xfDYK}BGdEUmKzB%UO z9rGWx3;Qdnd-<0UIb--kBgVuQa5XG6TXbe%m~LS;2}tKutBNySNnXIQ4bgc6NMh!L z%k=M*DNm?Fg_EE1q}FWa00@;wXM0C;y%~JTJ~+o(AtNw=q$izYBR4=_ay9Xm%gB5) zF14|li_ghnQ?3$&?Jy)*hQm7Xtv#nQP>sj{Lf_=V`_MRizz9cLtyr^a`4?~h_P1{N z*0;WebIpFgu8P)ve?tB2o_pTW*3tdBmag4CUf0}I-?P3)7PYa`1EHigML3&^+WLnX zrr`?2^r8Wbodan;EE!pclL&sS16jQ2BLni#(Q4`r4Ec`537$C_+gb-TV8K_pl!m_* zau)E*qmolhO43D83~(7j)GZJvtLsdp=cvZykuoA~ohix)11LBp8Jgi!jF|nX0{PLp z8av&p!Ur`vm6kO}aJ9PEEjpGBq;r*HZOKwO+Kmo+k@e;PC>p(p$AG6}lnRxLiFA4s z(Qx^%Z3*+K!o`V1+wYLPte~+>b7{n6LU0gP{s6M_SyIu@(G?RV?)a9b1E^I| znd(RxbkR!O8j#`2P=hq;G=~F0$dgMZ{OHu!t}Z;-s$aN%&6-PR-S>-2KXJhYJM=V{ zT;AIe*XJnK^UjguUN+z!mKs=Q;jH^dwjuANnj!}UO4 zFm3z^!VX85I)%nPEJAVy5YUnlpz(<`2&gGeGE$)2LlBn)L6DY419s;vq(6r zr(H7jk{(W&%5SphS{+MIePEgv3?wC}%axnuOVWz*6B=R?SN-x|(m7g=s=dYwZONX> znl3$04`Y^2B)Qq7T(mwstq*%Xgj*eX9EOW{#dM2P_lm1+08IhA0_w2V*OGO#bPR3W z(DUOZug<&roO3?#veE2HzSrBXBv($BJAZQbvF+U**LQV~I~2ztHEqNb$U%HRLfRJZ z$kGbgEVMY%(WNGoP0=_IJz;~&H+~lu>KX>nl;`P_;Jp7c7j?wVbuvpJoN^cQWqKKm zV5XU~ECOy762k^<-T=k~1bjzV4HU79-?=(M!XnmWMfQbQg z*u}!~rb6{n#}zKY7)mkKwabMJa@4sP>&n+g5ZHK{{7RFf%<X2fhC%i{~x+`?-%lIt$+n+EhZkOMr5E+a)BbBE(m}I%Cq*Lymq|XG`bTI=i|L z-i#AJHsOgePxxTNik$%TER<|(2(_tcl|{9NX0+y45kbHnr?@Cwi;i8)(%9A1A%#B4xA)kbN3yi+T}$ z?x)&l%%PM9y*xzl`A{5Ruc0O)A6rZ3gDvJi#vddhN^u1WR8dzbpzwy_Yva>hd>pH< zuXo|v)hn-kan79YUV7=JI$evo?Ro*$*_+DUdh@M&jo*9X2by-9aB)|6_q00f7wf}E zwKos&bPt{Sa_d*60R)hB8EY>!Wb2sXTYXp2jNwvgzM&1LL}llgx?qu3Mh-R7^G1V+ z37Kzd*l4H7cer@|VP|ffpuO4UqlX))O37E$1~E*MZfVEH^@cHc>AUXPr3)9lFn``FU;gYTKlxP5U>6VMTfr_atQYSa-}uJ( zDf>=6tEHps;?}OQ?`pyu3j;XLiSMoQWD|XB1hs?`>W(z7^MFH`()vc?`39tjmrEnL z8=V#Vm`^LxvFS+uA;CWduE2$y#INRjzM7}&_{AxEH6|r+Za9jL(ee@`S|gjvj_qWK!lZ!Lv7f5S2sIc_)ib3kN|yK(Ltb7>D|-UVG%xe6XaFlp&AK$F zoxozKCmqAHj+ivYS5`$Q0U!Lgwl-%S9qoA22hYccw$5I?X4Q{=^Y~-8&A8-}b&>I# zBv4lGZxYc}%mY2oyeWNSv6TaP!15Tq%a91g`>VPNxo4gANdL z&_HF1P7IYFYS}XmM!_4p0=pRX;z=F_KrSi~FNsf815{*e*!gK}#3~Ksioz_sl9A}! zyY&OwJzk7Uo`H@!V31FA+cCv$#>eFQH}~~!9vFCh{gS13KRNr^+h)x8n-!&kya|A& z-#3A%wMCpUOKxq2Prs%{ zakxfkjoRl~7WRw(YBpIab1IX{N}g#oP@lNE!n@I;QJY^^P(&eGQ>T7|wKtSB06uPc zd7o{8cxo)R-vD}^!-u5?99q&Dfn^5QwCFYO7>p?B`TF+m+Y0rbbb+NL7(Ui5r@1tI zeBE%{*1@OoUih;MmM*&MZ?3xPp5;$HwbS3-9Z`Wtfn@p}1<9_D`oC|vW%u#pr<{T( zQWv#%b-fKE!%0o}a1MrqSSuXBF-iDH6HYvl&Wq8C8bCD+YVfEQHcr68kk2}lj&8IW z6*b|fwM7F+j>dy@xpz^Ej0*8Fh3yjF09G2yJh3-`ERSA!9E-0 zMk|Kr>kXjj$aKY#9`5e-;hQV1;XBcYFRt4<^lWeMy2l=QIPtjd?r~?}LpXb3zf~9Cbl}05?3(h9K1T$6UonpOv{RQG zKppMbRtr<$&M<%?l^X$Cr#Bh=U7fI9-2igZ<()TNENk)ITHD7*8Z)8{kJbR%9!Je@ zWQM7zYvwyTH?n-llVxN1%@ym_;I({j_^hMzF`?b?g%%2E!k7A*G1BA5rtm)XMvVG4 z;LCZhtzWbLH!Bt|{oai?UjM@V_usECTGz_(O_*kSc@v60dXcZY?mM0P?BBi5mZ33+ zb&l;kx~Zw<%;vWC1{}=VjmF&o12~39t#2OWm&#xoxppEW#QgM@Q(0MbFN|z*ofG2a zIw<14a~JRMBP|U(McjnUaAAaMjo#pti8KZ`zbwD9G@*6KJdMRWUnURtVdGomMV!3( zOH`Df_(cQA+^uXm{SrAi4>wpf-{dc)$vqa&b10TYPB#Y7%1Ug?$?CB@j026C)j#vK zSL;YC<#XvqQ|=3PMH2awm#rHTi^`-dICm@?(|{wz8gPOS4Bi%e4G;!zMPpNAS)1+(S#C@B4`}z*=+^utLb6e}# zE$!_G4-Rd`D6zg3t!NAve`S3H4T=Yaitz(aSv04SWFrrGn6Y7FW5bqCMI%alT=IHY z2wMkWTA33nCDml|3y5X_2(hqrGVOq&<4Ffp>8xX#FEU1sfpL(PG3I6Yg;WK=VhKkk zN{M-WhuvWvA9vc!UI3_JtE>_pu&wr^dbBMEp-Qc-#%2U z!b*NpIiMrpQinWGk<(W#2d1+o9ghn`8)n<&tE8JZZrsq^Sih{Xx$!w9t?OIcGjHMi z#dkjR(63(J6%HpzrQA6oY0En&t6e`A7{tbg$&*_KS8qB1A7mca(bc+pQ$y1QEiKKR zXkmEnzjY5De#Z{MHoFbqGLQxTphbq+0k-lWP&Pm`O8G3P;*YvmAn?zJw_g0>+j;0QGqBCIdR@Ec*UnIl2b%(J(_-OGLtqX(Xr%cmPs5i~ zyqhYg3E{?2bb?O-z_$_WV7z&#(Irf++Yla}Q5Zf66$gB7x)(Vyj1nG{7f$mP2xAJv zFO4Q=5M()oBl{t$Oi`HwwHLU_4T=VEkcfeeA9)Hx{P58o4IPz?qt)s+4-P!l+R}6f z4BgiHEnDjP`}?yMI9GG|f(6-}IX_)`*If_utqfnI#_EsS|Nn!(`{qcG|F!@C002ov JPDHLkV1kZf@csY* literal 0 HcmV?d00001 diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/WouldYouInApplicationTests.java b/src/test/java/org/ktc2/cokaen/wouldyouin/WouldYouInApplicationTests.java index b4ff92e9..09b79878 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/WouldYouInApplicationTests.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/WouldYouInApplicationTests.java @@ -9,5 +9,4 @@ class WouldYouInApplicationTests { @Test void contextLoads() { } - } diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/_global/TestData.java b/src/test/java/org/ktc2/cokaen/wouldyouin/_global/TestData.java index a021fb23..82a4165b 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/_global/TestData.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/_global/TestData.java @@ -21,8 +21,8 @@ import org.ktc2.cokaen.wouldyouin.event.api.dto.relationResonse.CurationEventResponse; import org.ktc2.cokaen.wouldyouin.event.api.dto.relationResonse.ReservationEventResponse; import org.ktc2.cokaen.wouldyouin.event.persist.Event; -import org.ktc2.cokaen.wouldyouin.member.application.dto.relation.ReservationMemberResponse; -import org.ktc2.cokaen.wouldyouin.member.application.dto.relationResponse.CurationCuratorResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.relation.ReservationMemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.relationResponse.CurationCuratorResponse; import org.ktc2.cokaen.wouldyouin.member.persist.AccountType; import org.ktc2.cokaen.wouldyouin.member.persist.Curator; import org.ktc2.cokaen.wouldyouin.member.persist.Host; diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/curation/CurationControllerUnitTest.java b/src/test/java/org/ktc2/cokaen/wouldyouin/curation/CurationControllerUnitTest.java index 716f14a9..8a1be112 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/curation/CurationControllerUnitTest.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/curation/CurationControllerUnitTest.java @@ -16,7 +16,6 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import java.util.List; import java.util.Random; import org.junit.jupiter.api.BeforeEach; diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/event/EventControllerUnitTest.java b/src/test/java/org/ktc2/cokaen/wouldyouin/event/EventControllerUnitTest.java index d930cbf0..590cdbfb 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/event/EventControllerUnitTest.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/event/EventControllerUnitTest.java @@ -25,15 +25,14 @@ import org.ktc2.cokaen.wouldyouin._common.vo.Area; import org.ktc2.cokaen.wouldyouin._common.vo.Category; -import org.ktc2.cokaen.wouldyouin._common.vo.Location; -import org.ktc2.cokaen.wouldyouin._common.vo.UserLocation; import org.ktc2.cokaen.wouldyouin.auth.application.JwtAuthFilter; import org.ktc2.cokaen.wouldyouin.auth.application.JwtService; -import org.ktc2.cokaen.wouldyouin.curation.api.dto.LocationFilter; +import org.ktc2.cokaen.wouldyouin.event.api.dto.LocationFilter; import org.ktc2.cokaen.wouldyouin.event.api.EventController; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventCreateRequest; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventEditRequest; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventSliceResponse; +import org.ktc2.cokaen.wouldyouin.event.api.dto.UserLocation; import org.ktc2.cokaen.wouldyouin.event.application.EventService; import org.ktc2.cokaen.wouldyouin._global.TestData.EventDomain; import org.ktc2.cokaen.wouldyouin._global.mockMember.WithMockHost; diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/event/EventServiceUnitTest.java b/src/test/java/org/ktc2/cokaen/wouldyouin/event/EventServiceUnitTest.java index e38a6596..f36ac5a3 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/event/EventServiceUnitTest.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/event/EventServiceUnitTest.java @@ -11,7 +11,6 @@ import java.util.List; import java.util.Optional; -import org.h2.engine.User; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; @@ -19,12 +18,11 @@ import org.ktc2.cokaen.wouldyouin.Image.application.EventImageService; import org.ktc2.cokaen.wouldyouin._common.vo.Area; import org.ktc2.cokaen.wouldyouin._common.vo.Category; -import org.ktc2.cokaen.wouldyouin._common.vo.Location; -import org.ktc2.cokaen.wouldyouin._common.vo.UserLocation; import org.ktc2.cokaen.wouldyouin._global.TestData.EventDomain; -import org.ktc2.cokaen.wouldyouin.curation.api.dto.LocationFilter; +import org.ktc2.cokaen.wouldyouin.event.api.dto.LocationFilter; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventCreateRequest; import org.ktc2.cokaen.wouldyouin.event.api.dto.EventEditRequest; +import org.ktc2.cokaen.wouldyouin.event.api.dto.UserLocation; import org.ktc2.cokaen.wouldyouin.event.application.EventService; import org.ktc2.cokaen.wouldyouin.event.persist.Event; import org.ktc2.cokaen.wouldyouin.event.persist.EventRepository; diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/BaseMemberServiceUnitTest.java b/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/BaseMemberServiceUnitTest.java index 8a3d0abc..23f7fd54 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/BaseMemberServiceUnitTest.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/BaseMemberServiceUnitTest.java @@ -25,7 +25,7 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ValueSource; -import org.ktc2.cokaen.wouldyouin.member.application.dto.MemberResponse; +import org.ktc2.cokaen.wouldyouin.member.api.dto.MemberResponse; import org.ktc2.cokaen.wouldyouin.member.persist.BaseMember; import org.ktc2.cokaen.wouldyouin.member.persist.BaseMemberRepository; import org.ktc2.cokaen.wouldyouin.member.persist.Curator; diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/CuratorServiceUnitTest.java b/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/CuratorServiceUnitTest.java index 735d8c4a..5e372806 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/CuratorServiceUnitTest.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/CuratorServiceUnitTest.java @@ -18,7 +18,7 @@ import org.ktc2.cokaen.wouldyouin.Image.persist.MemberImage; import org.ktc2.cokaen.wouldyouin._common.vo.Area; import org.ktc2.cokaen.wouldyouin._global.TestUtil; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.CuratorEditRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.CuratorEditRequest; import org.ktc2.cokaen.wouldyouin.member.persist.BaseMemberRepository; import org.ktc2.cokaen.wouldyouin.member.persist.Curator; import org.ktc2.cokaen.wouldyouin.member.persist.CuratorRepository; diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/HostServiceUnitTest.java b/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/HostServiceUnitTest.java index a4052dd2..5097250a 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/HostServiceUnitTest.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/HostServiceUnitTest.java @@ -14,10 +14,10 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.ktc2.cokaen.wouldyouin.Image.application.MemberImageService; import org.ktc2.cokaen.wouldyouin.Image.persist.MemberImage; -import org.ktc2.cokaen.wouldyouin.auth.application.dto.LocalLoginRequest; +import org.ktc2.cokaen.wouldyouin.auth.api.dto.LocalLoginRequest; import org.ktc2.cokaen.wouldyouin._global.TestUtil; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.create.HostCreateRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.HostEditRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.create.HostCreateRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.HostEditRequest; import org.ktc2.cokaen.wouldyouin.member.persist.Host; import org.ktc2.cokaen.wouldyouin.member.persist.HostRepository; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType; diff --git a/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/MemberServiceUnitTest.java b/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/MemberServiceUnitTest.java index 038ec16b..0c789df4 100644 --- a/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/MemberServiceUnitTest.java +++ b/src/test/java/org/ktc2/cokaen/wouldyouin/member/application/MemberServiceUnitTest.java @@ -18,9 +18,9 @@ import org.ktc2.cokaen.wouldyouin.Image.application.MemberImageService; import org.ktc2.cokaen.wouldyouin.Image.persist.MemberImage; import org.ktc2.cokaen.wouldyouin._global.TestUtil; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.MemberAdditionalInfoRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.create.MemberCreateRequest; -import org.ktc2.cokaen.wouldyouin.member.application.dto.request.edit.MemberEditRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.MemberAdditionalInfoRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.create.MemberCreateRequest; +import org.ktc2.cokaen.wouldyouin.member.api.dto.request.edit.MemberEditRequest; import org.ktc2.cokaen.wouldyouin.member.persist.Member; import org.ktc2.cokaen.wouldyouin.member.persist.MemberRepository; import org.ktc2.cokaen.wouldyouin.member.persist.MemberType;