diff --git a/README.md b/README.md index 6f267b5f..0a59e339 100644 --- a/README.md +++ b/README.md @@ -1,42 +1,48 @@ -# πŸ”œ ASAP : AS SOON AS POSSIBLE -졜적의 νšŒμ˜μ‹œκ°„λŒ€λ₯Ό κ²°μ •ν•΄ 회의 이전 λΆˆν•„μš”ν•œ μ‹œκ°„μ , 감정적 μ†ŒλΉ„λ₯Ό μ€„μ—¬μ£ΌλŠ” μ›Ήμ„œλΉ„μŠ€ - -# πŸ‘¨πŸ»β€πŸ’» Contributors -|
κ°•μ›μš©
|
λ„μ†Œν˜„
| -|:----------|:----------| -|
[KWY0218](https://github.com/KWY0218)
|
[sohyundoh](https://github.com/sohyundoh)
| -| | | -| [μ°Έμ—¬μž : 회의 κ°€λŠ₯ μ‹œκ°„ λ·°]
μ°Έμ—¬μž 정보 및 회의 κ°€λŠ₯ μ‹œκ°„ μž…λ ₯ API |[링크 μž…μž₯ λ·°] μœ νš¨ν•œ 회의 확인 API,
토큰 μœ νš¨μ„± 확인 API | -| [λ°©μž₯으둜 μž…μž₯] λ°©μž₯ 정보 μž…λ ₯ API | [λ°©μž₯ : 회의 κ°€λŠ₯ μ‹œκ°„ λ·°]
회의 κ°€λŠ₯ μ‹œκ°„ μž…λ ₯ API| -| [λ°©μž₯ λ·°] 졜적의 νšŒμ˜μ‹œκ°„ API | [λ°©μž₯ λ·°] μ’…ν•© 일정 μ‹œκ°„ν‘œ API | -| [λ°©μž₯ λ·°] 회의 μ‹œκ°„ ν™•μ • API| [회의 생성 λ·°] 회의 생성 API | -| [λ°©μž₯ λ·°] νμΉ΄λ“œ 정보 λΆˆλŸ¬μ˜€λŠ” API |[κ°€λŠ₯ μ‹œκ°„ μž…λ ₯ λ·°] 선택지 제곡 | - -# πŸ’Ό Server Architecture -![image](https://github.com/ASAP-as-soon-as-possible/ASAP_Server/assets/79795051/d1aae75e-4ce9-4b1e-9b70-8a5ea07e37e2) - -# πŸ—‚οΈ Directory +### **πŸ’β€β™‚οΈ Introduction** + +![image](https://github.com/user-attachments/assets/e9d91189-cecd-4f55-8a2b-9bbf4aa1045c) +![image](https://github.com/user-attachments/assets/5ab65502-bdc4-4ab1-955b-9b23c9c5498f) + + +ASAPμ€μ„ ν˜Έλ„ 뢄석을 톡해 μ΅œλŒ€ 인원이 참석 κ°€λŠ₯ν•œ νšŒμ˜μ‹œκ°„μ„ μžλ™μœΌλ‘œ κ²°μ •ν•΄ 쀌으둜써, **λ‹€μˆ˜κ°€ μ‹œκ°„μ„ μ‘°μœ¨ν•˜λ©° λ”œλ ˆμ΄λ˜λŠ” μ‹œκ°„μ„ μ€„μ—¬μ£ΌλŠ” μ„œλΉ„μŠ€** μž…λ‹ˆλ‹€. + +회의 κ΄€λ ¨ 정보λ₯Ό ν•˜λ‚˜μ˜ νμΉ΄λ“œλ‘œ 정리해 μ œκ³΅ν•¨μœΌλ‘œμ¨ 회의 μ‹œκ°„ μ™Έ μΆ”κ°€ 곡지사항을 단톑방에 μ˜¬λ¦¬λŠ” μˆ˜κ³ λ‘œμ›€ λ˜ν•œ λœμ–΄μ£Όκ³ μž ν•©λ‹ˆλ‹€. + +ν•œλ§ˆλ””λ‘œ ASAP은 **회의λ₯Ό μ§„ν–‰ν•˜λŠ” μ—…λ¬΄μ‹œκ°„ μ™Έ 일련의 μ‚¬μ „μž‘μ—…λ“€μ„ 쉽고 λΉ λ₯΄κ³  κ°„νŽΈν•˜κ²Œ μ²˜λ¦¬ν•΄μ£ΌλŠ” μ›Ήμ„œλΉ„μŠ€**μž…λ‹ˆλ‹€. + +### **🚎 Architecture** + +![image](https://github.com/user-attachments/assets/cae98903-bc3d-4e4c-b60f-b499747b227f) + + +### **πŸ“ˆ DataBase Schema** + +![image](https://github.com/user-attachments/assets/abdca3ac-b608-44fe-aa9b-c623864b7bee) + + +### **πŸ—‚οΈ Directory** + ``` -β”œβ”€β”€ java -β”‚Β Β  └── com -β”‚Β Β  └── asap -β”‚Β Β  └── server -β”‚Β Β  β”œβ”€β”€ common -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ advice -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ dto -β”‚Β Β  β”‚Β Β  └── utils -β”‚Β Β  β”œβ”€β”€ config -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ jwt -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ resolver -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ meeting -β”‚Β Β  β”‚Β Β  β”‚Β Β  └── user -β”‚Β Β  β”‚Β Β  └── swagger -β”‚Β Β  β”œβ”€β”€ controller -β”‚Β Β  β”œβ”€β”€ domain -β”‚Β Β  β”‚Β Β  └── enums -β”‚Β Β  β”œβ”€β”€ exception -β”‚Β Β  β”‚Β Β  └── model -β”‚Β Β  β”œβ”€β”€ repository -β”‚Β Β  └── service -└── test +β”œβ”€common # 각 κ³„μΈ΅μ—μ„œ κ³΅ν†΅μœΌλ‘œ μ‚¬μš©ν•˜λŠ” μœ ν‹Έλ¦¬ν‹°μ™€ μ˜ˆμ™Έ 처리 κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€. +β”‚ β”œβ”€exception +β”‚ β”œβ”€jwt +β”‚ └─utils +β”œβ”€infra # μ™ΈλΆ€ API 톡합 및 μ™ΈλΆ€ μ‹œμŠ€ν…œκ³Όμ˜ 연동 섀정을 λ‹΄λ‹Ήν•©λ‹ˆλ‹€. +β”‚ β”œβ”€redis +β”‚ └─slack +β”œβ”€persistence # λ°μ΄ν„°λ² μ΄μŠ€μ™€μ˜ μƒν˜Έμž‘μš©μ„ μœ„ν•œ μ˜μ†μ„± κ΄€λ ¨ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€. +β”‚ β”œβ”€config +β”‚ β”œβ”€domain +β”‚ └─repository +β”œβ”€presentation # μ‚¬μš©μžμ˜ μš”μ²­μ„ μ²˜λ¦¬ν•˜κ³  응닡을 λ°˜ν™˜ν•˜λŠ” UI κ΄€λ ¨ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€. +β”‚ β”œβ”€common +β”‚ β”œβ”€config +β”‚ └─controller +└─service # μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 핡심 λΉ„μ¦ˆλ‹ˆμŠ€ λ‘œμ§μ„ κ΅¬ν˜„ν•©λ‹ˆλ‹€. ``` + +### **πŸ‘₯ Contributors** + +| κ°•μ›μš©| λ„μ†Œν˜„| +|:-----:|:------:| +| [KWY0218](https://github.com/KWY0218) | [sohyundoh](https://github.com/sohyundoh) | diff --git a/build.gradle b/build.gradle index 9b51aa02..15c40713 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ plugins { } group = 'com.asap' -version = '1.1.1' +version = '1.2.0' java { sourceCompatibility = '17' diff --git a/src/main/java/com/asap/server/exception/Error.java b/src/main/java/com/asap/server/common/exception/Error.java similarity index 98% rename from src/main/java/com/asap/server/exception/Error.java rename to src/main/java/com/asap/server/common/exception/Error.java index 5ee57600..ab0402ee 100644 --- a/src/main/java/com/asap/server/exception/Error.java +++ b/src/main/java/com/asap/server/common/exception/Error.java @@ -1,4 +1,4 @@ -package com.asap.server.exception; +package com.asap.server.common.exception; import lombok.AccessLevel; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/exception/Success.java b/src/main/java/com/asap/server/common/exception/Success.java similarity index 97% rename from src/main/java/com/asap/server/exception/Success.java rename to src/main/java/com/asap/server/common/exception/Success.java index 70f5e4a5..35b0de75 100644 --- a/src/main/java/com/asap/server/exception/Success.java +++ b/src/main/java/com/asap/server/common/exception/Success.java @@ -1,4 +1,4 @@ -package com.asap.server.exception; +package com.asap.server.common.exception; import lombok.AccessLevel; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/exception/model/AsapException.java b/src/main/java/com/asap/server/common/exception/model/AsapException.java similarity index 76% rename from src/main/java/com/asap/server/exception/model/AsapException.java rename to src/main/java/com/asap/server/common/exception/model/AsapException.java index 86222c05..343b87a6 100644 --- a/src/main/java/com/asap/server/exception/model/AsapException.java +++ b/src/main/java/com/asap/server/common/exception/model/AsapException.java @@ -1,6 +1,6 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; import lombok.Getter; @Getter diff --git a/src/main/java/com/asap/server/exception/model/BadRequestException.java b/src/main/java/com/asap/server/common/exception/model/BadRequestException.java similarity index 58% rename from src/main/java/com/asap/server/exception/model/BadRequestException.java rename to src/main/java/com/asap/server/common/exception/model/BadRequestException.java index 899bda45..fae4ddd8 100644 --- a/src/main/java/com/asap/server/exception/model/BadRequestException.java +++ b/src/main/java/com/asap/server/common/exception/model/BadRequestException.java @@ -1,6 +1,6 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; public class BadRequestException extends AsapException { public BadRequestException(Error error) { diff --git a/src/main/java/com/asap/server/exception/model/ConflictException.java b/src/main/java/com/asap/server/common/exception/model/ConflictException.java similarity index 57% rename from src/main/java/com/asap/server/exception/model/ConflictException.java rename to src/main/java/com/asap/server/common/exception/model/ConflictException.java index b2b2c853..9d82b572 100644 --- a/src/main/java/com/asap/server/exception/model/ConflictException.java +++ b/src/main/java/com/asap/server/common/exception/model/ConflictException.java @@ -1,6 +1,6 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; public class ConflictException extends AsapException{ diff --git a/src/main/java/com/asap/server/exception/model/ForbiddenException.java b/src/main/java/com/asap/server/common/exception/model/ForbiddenException.java similarity index 58% rename from src/main/java/com/asap/server/exception/model/ForbiddenException.java rename to src/main/java/com/asap/server/common/exception/model/ForbiddenException.java index cf5b8bd9..5d9aee57 100644 --- a/src/main/java/com/asap/server/exception/model/ForbiddenException.java +++ b/src/main/java/com/asap/server/common/exception/model/ForbiddenException.java @@ -1,6 +1,6 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; public class ForbiddenException extends AsapException { public ForbiddenException(Error error) { diff --git a/src/main/java/com/asap/server/exception/model/HostTimeForbiddenException.java b/src/main/java/com/asap/server/common/exception/model/HostTimeForbiddenException.java similarity index 61% rename from src/main/java/com/asap/server/exception/model/HostTimeForbiddenException.java rename to src/main/java/com/asap/server/common/exception/model/HostTimeForbiddenException.java index be8d9f2b..bbcf530d 100644 --- a/src/main/java/com/asap/server/exception/model/HostTimeForbiddenException.java +++ b/src/main/java/com/asap/server/common/exception/model/HostTimeForbiddenException.java @@ -1,7 +1,7 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.controller.dto.response.HostLoginResponseDto; -import com.asap.server.exception.Error; +import com.asap.server.presentation.controller.dto.response.HostLoginResponseDto; +import com.asap.server.common.exception.Error; import lombok.Getter; @Getter diff --git a/src/main/java/com/asap/server/exception/model/InternalErrorException.java b/src/main/java/com/asap/server/common/exception/model/InternalErrorException.java similarity index 60% rename from src/main/java/com/asap/server/exception/model/InternalErrorException.java rename to src/main/java/com/asap/server/common/exception/model/InternalErrorException.java index 130349c9..4604e415 100644 --- a/src/main/java/com/asap/server/exception/model/InternalErrorException.java +++ b/src/main/java/com/asap/server/common/exception/model/InternalErrorException.java @@ -1,6 +1,6 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; public class InternalErrorException extends AsapException { public InternalErrorException(final Error error) { diff --git a/src/main/java/com/asap/server/exception/model/NotFoundException.java b/src/main/java/com/asap/server/common/exception/model/NotFoundException.java similarity index 57% rename from src/main/java/com/asap/server/exception/model/NotFoundException.java rename to src/main/java/com/asap/server/common/exception/model/NotFoundException.java index a845d6ad..cbae2c57 100644 --- a/src/main/java/com/asap/server/exception/model/NotFoundException.java +++ b/src/main/java/com/asap/server/common/exception/model/NotFoundException.java @@ -1,6 +1,6 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; public class NotFoundException extends AsapException { public NotFoundException(Error error) { diff --git a/src/main/java/com/asap/server/exception/model/TooManyRequestException.java b/src/main/java/com/asap/server/common/exception/model/TooManyRequestException.java similarity index 61% rename from src/main/java/com/asap/server/exception/model/TooManyRequestException.java rename to src/main/java/com/asap/server/common/exception/model/TooManyRequestException.java index 6ada2dba..6047a672 100644 --- a/src/main/java/com/asap/server/exception/model/TooManyRequestException.java +++ b/src/main/java/com/asap/server/common/exception/model/TooManyRequestException.java @@ -1,6 +1,6 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; public class TooManyRequestException extends AsapException { diff --git a/src/main/java/com/asap/server/exception/model/UnauthorizedException.java b/src/main/java/com/asap/server/common/exception/model/UnauthorizedException.java similarity index 59% rename from src/main/java/com/asap/server/exception/model/UnauthorizedException.java rename to src/main/java/com/asap/server/common/exception/model/UnauthorizedException.java index ac46f810..e0662ff3 100644 --- a/src/main/java/com/asap/server/exception/model/UnauthorizedException.java +++ b/src/main/java/com/asap/server/common/exception/model/UnauthorizedException.java @@ -1,6 +1,6 @@ -package com.asap.server.exception.model; +package com.asap.server.common.exception.model; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; public class UnauthorizedException extends AsapException { public UnauthorizedException(Error error) { diff --git a/src/main/java/com/asap/server/config/jwt/JwtService.java b/src/main/java/com/asap/server/common/jwt/JwtService.java similarity index 93% rename from src/main/java/com/asap/server/config/jwt/JwtService.java rename to src/main/java/com/asap/server/common/jwt/JwtService.java index 961f061e..e8a20ddc 100644 --- a/src/main/java/com/asap/server/config/jwt/JwtService.java +++ b/src/main/java/com/asap/server/common/jwt/JwtService.java @@ -1,7 +1,7 @@ -package com.asap.server.config.jwt; +package com.asap.server.common.jwt; -import com.asap.server.exception.model.UnauthorizedException; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.model.UnauthorizedException; +import com.asap.server.common.exception.Error; import io.jsonwebtoken.Claims; import io.jsonwebtoken.ExpiredJwtException; import io.jsonwebtoken.Header; diff --git a/src/main/java/com/asap/server/controller/dto/request/PreferTimeSaveRequestDto.java b/src/main/java/com/asap/server/controller/dto/request/PreferTimeSaveRequestDto.java deleted file mode 100644 index e3596ed4..00000000 --- a/src/main/java/com/asap/server/controller/dto/request/PreferTimeSaveRequestDto.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.asap.server.controller.dto.request; - -import com.asap.server.domain.enums.TimeSlot; -import io.swagger.v3.oas.annotations.media.Schema; - -public record PreferTimeSaveRequestDto( - @Schema(description = "μ„ ν˜Έ μ‹œκ°„(μ‹œμž‘)", example = "09:00") - TimeSlot startTime, - - @Schema(description = "μ„ ν˜Έ μ‹œκ°„(끝)", example = "11:00") - TimeSlot endTime -) { -} diff --git a/src/main/java/com/asap/server/domain/PreferTime.java b/src/main/java/com/asap/server/domain/PreferTime.java deleted file mode 100644 index 2892cf2a..00000000 --- a/src/main/java/com/asap/server/domain/PreferTime.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.asap.server.domain; - -import com.asap.server.domain.enums.TimeSlot; -import lombok.AccessLevel; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Getter; -import lombok.NoArgsConstructor; - -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.EnumType; -import jakarta.persistence.Enumerated; -import jakarta.persistence.GeneratedValue; -import jakarta.persistence.GenerationType; -import jakarta.persistence.Id; -import jakarta.persistence.JoinColumn; -import jakarta.persistence.ManyToOne; - -@Entity -@Getter -@Builder -@AllArgsConstructor -@NoArgsConstructor(access = AccessLevel.PROTECTED) -public class PreferTime extends AuditingTimeEntity { - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - private Long id; - - @ManyToOne - @JoinColumn(name = "meeting_id") - private Meeting meeting; - - @Column(nullable = false) - @Enumerated(value = EnumType.STRING) - private TimeSlot startTime; - - @Column(nullable = false) - @Enumerated(value = EnumType.STRING) - private TimeSlot endTime; - -} diff --git a/src/main/java/com/asap/server/config/redis/RedisConfig.java b/src/main/java/com/asap/server/infra/redis/RedisConfig.java similarity index 95% rename from src/main/java/com/asap/server/config/redis/RedisConfig.java rename to src/main/java/com/asap/server/infra/redis/RedisConfig.java index d3f8c2c7..67acc8ef 100644 --- a/src/main/java/com/asap/server/config/redis/RedisConfig.java +++ b/src/main/java/com/asap/server/infra/redis/RedisConfig.java @@ -1,4 +1,4 @@ -package com.asap.server.config.redis; +package com.asap.server.infra.redis; import org.redisson.Redisson; import org.redisson.api.RedissonClient; diff --git a/src/main/java/com/asap/server/common/utils/SlackUtil.java b/src/main/java/com/asap/server/infra/slack/SlackUtil.java similarity index 99% rename from src/main/java/com/asap/server/common/utils/SlackUtil.java rename to src/main/java/com/asap/server/infra/slack/SlackUtil.java index ff4614bb..8a44713c 100644 --- a/src/main/java/com/asap/server/common/utils/SlackUtil.java +++ b/src/main/java/com/asap/server/infra/slack/SlackUtil.java @@ -1,4 +1,4 @@ -package com.asap.server.common.utils; +package com.asap.server.infra.slack; import com.slack.api.Slack; import com.slack.api.model.block.Blocks; diff --git a/src/main/java/com/asap/server/config/querydsl/QueryDslConfig.java b/src/main/java/com/asap/server/persistence/config/querydsl/QueryDslConfig.java similarity index 90% rename from src/main/java/com/asap/server/config/querydsl/QueryDslConfig.java rename to src/main/java/com/asap/server/persistence/config/querydsl/QueryDslConfig.java index b6002d55..be82f82e 100644 --- a/src/main/java/com/asap/server/config/querydsl/QueryDslConfig.java +++ b/src/main/java/com/asap/server/persistence/config/querydsl/QueryDslConfig.java @@ -1,4 +1,4 @@ -package com.asap.server.config.querydsl; +package com.asap.server.persistence.config.querydsl; import com.querydsl.jpa.impl.JPAQueryFactory; import org.springframework.context.annotation.Bean; diff --git a/src/main/java/com/asap/server/domain/AuditingTimeEntity.java b/src/main/java/com/asap/server/persistence/domain/AuditingTimeEntity.java similarity index 92% rename from src/main/java/com/asap/server/domain/AuditingTimeEntity.java rename to src/main/java/com/asap/server/persistence/domain/AuditingTimeEntity.java index bb33afc4..929d3216 100644 --- a/src/main/java/com/asap/server/domain/AuditingTimeEntity.java +++ b/src/main/java/com/asap/server/persistence/domain/AuditingTimeEntity.java @@ -1,4 +1,4 @@ -package com.asap.server.domain; +package com.asap.server.persistence.domain; import java.time.LocalDateTime; import jakarta.persistence.EntityListeners; diff --git a/src/main/java/com/asap/server/domain/AvailableDate.java b/src/main/java/com/asap/server/persistence/domain/AvailableDate.java similarity index 94% rename from src/main/java/com/asap/server/domain/AvailableDate.java rename to src/main/java/com/asap/server/persistence/domain/AvailableDate.java index d9fd52c5..43173da6 100644 --- a/src/main/java/com/asap/server/domain/AvailableDate.java +++ b/src/main/java/com/asap/server/persistence/domain/AvailableDate.java @@ -1,4 +1,4 @@ -package com.asap.server.domain; +package com.asap.server.persistence.domain; import jakarta.persistence.Entity; import jakarta.persistence.FetchType; diff --git a/src/main/java/com/asap/server/domain/ConfirmedDateTime.java b/src/main/java/com/asap/server/persistence/domain/ConfirmedDateTime.java similarity index 90% rename from src/main/java/com/asap/server/domain/ConfirmedDateTime.java rename to src/main/java/com/asap/server/persistence/domain/ConfirmedDateTime.java index 9520d415..0730afcf 100644 --- a/src/main/java/com/asap/server/domain/ConfirmedDateTime.java +++ b/src/main/java/com/asap/server/persistence/domain/ConfirmedDateTime.java @@ -1,4 +1,4 @@ -package com.asap.server.domain; +package com.asap.server.persistence.domain; import lombok.AccessLevel; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/domain/Meeting.java b/src/main/java/com/asap/server/persistence/domain/Meeting.java similarity index 95% rename from src/main/java/com/asap/server/domain/Meeting.java rename to src/main/java/com/asap/server/persistence/domain/Meeting.java index f8ff1ba2..f87032ba 100644 --- a/src/main/java/com/asap/server/domain/Meeting.java +++ b/src/main/java/com/asap/server/persistence/domain/Meeting.java @@ -1,6 +1,6 @@ -package com.asap.server.domain; +package com.asap.server.persistence.domain; -import com.asap.server.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.Duration; import jakarta.persistence.Column; import jakarta.persistence.Embedded; import jakarta.persistence.Entity; diff --git a/src/main/java/com/asap/server/domain/Place.java b/src/main/java/com/asap/server/persistence/domain/Place.java similarity index 84% rename from src/main/java/com/asap/server/domain/Place.java rename to src/main/java/com/asap/server/persistence/domain/Place.java index b99c42b0..10c9cec8 100644 --- a/src/main/java/com/asap/server/domain/Place.java +++ b/src/main/java/com/asap/server/persistence/domain/Place.java @@ -1,6 +1,6 @@ -package com.asap.server.domain; +package com.asap.server.persistence.domain; -import com.asap.server.domain.enums.PlaceType; +import com.asap.server.persistence.domain.enums.PlaceType; import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/domain/TimeBlock.java b/src/main/java/com/asap/server/persistence/domain/TimeBlock.java similarity index 93% rename from src/main/java/com/asap/server/domain/TimeBlock.java rename to src/main/java/com/asap/server/persistence/domain/TimeBlock.java index cca4cc4e..40bae8e7 100644 --- a/src/main/java/com/asap/server/domain/TimeBlock.java +++ b/src/main/java/com/asap/server/persistence/domain/TimeBlock.java @@ -1,6 +1,6 @@ -package com.asap.server.domain; +package com.asap.server.persistence.domain; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.enums.TimeSlot; import jakarta.persistence.Entity; import jakarta.persistence.EnumType; import jakarta.persistence.FetchType; diff --git a/src/main/java/com/asap/server/domain/TimeBlockUser.java b/src/main/java/com/asap/server/persistence/domain/TimeBlockUser.java similarity index 95% rename from src/main/java/com/asap/server/domain/TimeBlockUser.java rename to src/main/java/com/asap/server/persistence/domain/TimeBlockUser.java index d8db05c6..7d0047f6 100644 --- a/src/main/java/com/asap/server/domain/TimeBlockUser.java +++ b/src/main/java/com/asap/server/persistence/domain/TimeBlockUser.java @@ -1,4 +1,4 @@ -package com.asap.server.domain; +package com.asap.server.persistence.domain; import jakarta.persistence.Entity; import jakarta.persistence.FetchType; diff --git a/src/main/java/com/asap/server/domain/User.java b/src/main/java/com/asap/server/persistence/domain/User.java similarity index 92% rename from src/main/java/com/asap/server/domain/User.java rename to src/main/java/com/asap/server/persistence/domain/User.java index fab1abc6..0251a1f9 100644 --- a/src/main/java/com/asap/server/domain/User.java +++ b/src/main/java/com/asap/server/persistence/domain/User.java @@ -1,6 +1,6 @@ -package com.asap.server.domain; +package com.asap.server.persistence.domain; -import com.asap.server.domain.enums.Role; +import com.asap.server.persistence.domain.enums.Role; import jakarta.persistence.FetchType; import lombok.AccessLevel; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/domain/enums/Duration.java b/src/main/java/com/asap/server/persistence/domain/enums/Duration.java similarity index 83% rename from src/main/java/com/asap/server/domain/enums/Duration.java rename to src/main/java/com/asap/server/persistence/domain/enums/Duration.java index 59fc8519..2ad346f6 100644 --- a/src/main/java/com/asap/server/domain/enums/Duration.java +++ b/src/main/java/com/asap/server/persistence/domain/enums/Duration.java @@ -1,7 +1,7 @@ -package com.asap.server.domain.enums; +package com.asap.server.persistence.domain.enums; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.BadRequestException; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.BadRequestException; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.stream.Stream; diff --git a/src/main/java/com/asap/server/domain/enums/PlaceType.java b/src/main/java/com/asap/server/persistence/domain/enums/PlaceType.java similarity index 81% rename from src/main/java/com/asap/server/domain/enums/PlaceType.java rename to src/main/java/com/asap/server/persistence/domain/enums/PlaceType.java index b5ed0c34..c924016e 100644 --- a/src/main/java/com/asap/server/domain/enums/PlaceType.java +++ b/src/main/java/com/asap/server/persistence/domain/enums/PlaceType.java @@ -1,7 +1,7 @@ -package com.asap.server.domain.enums; +package com.asap.server.persistence.domain.enums; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.BadRequestException; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.BadRequestException; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/domain/enums/Role.java b/src/main/java/com/asap/server/persistence/domain/enums/Role.java similarity index 82% rename from src/main/java/com/asap/server/domain/enums/Role.java rename to src/main/java/com/asap/server/persistence/domain/enums/Role.java index d6c4f083..f1d1e182 100644 --- a/src/main/java/com/asap/server/domain/enums/Role.java +++ b/src/main/java/com/asap/server/persistence/domain/enums/Role.java @@ -1,4 +1,4 @@ -package com.asap.server.domain.enums; +package com.asap.server.persistence.domain.enums; import com.fasterxml.jackson.annotation.JsonValue; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/domain/enums/TimeSlot.java b/src/main/java/com/asap/server/persistence/domain/enums/TimeSlot.java similarity index 93% rename from src/main/java/com/asap/server/domain/enums/TimeSlot.java rename to src/main/java/com/asap/server/persistence/domain/enums/TimeSlot.java index ad520ff1..f1cbab1a 100644 --- a/src/main/java/com/asap/server/domain/enums/TimeSlot.java +++ b/src/main/java/com/asap/server/persistence/domain/enums/TimeSlot.java @@ -1,7 +1,7 @@ -package com.asap.server.domain.enums; +package com.asap.server.persistence.domain.enums; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.BadRequestException; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.BadRequestException; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/repository/AvailableDateRepository.java b/src/main/java/com/asap/server/persistence/repository/AvailableDateRepository.java similarity index 73% rename from src/main/java/com/asap/server/repository/AvailableDateRepository.java rename to src/main/java/com/asap/server/persistence/repository/AvailableDateRepository.java index 4a602612..7a73304c 100644 --- a/src/main/java/com/asap/server/repository/AvailableDateRepository.java +++ b/src/main/java/com/asap/server/persistence/repository/AvailableDateRepository.java @@ -1,7 +1,7 @@ -package com.asap.server.repository; +package com.asap.server.persistence.repository; -import com.asap.server.domain.AvailableDate; -import com.asap.server.domain.Meeting; +import com.asap.server.persistence.domain.AvailableDate; +import com.asap.server.persistence.domain.Meeting; import org.springframework.data.repository.Repository; import java.time.LocalDate; diff --git a/src/main/java/com/asap/server/repository/TimeBlockUserRepository.java b/src/main/java/com/asap/server/persistence/repository/TimeBlockUserRepository.java similarity index 62% rename from src/main/java/com/asap/server/repository/TimeBlockUserRepository.java rename to src/main/java/com/asap/server/persistence/repository/TimeBlockUserRepository.java index 40495cbc..0d5900c8 100644 --- a/src/main/java/com/asap/server/repository/TimeBlockUserRepository.java +++ b/src/main/java/com/asap/server/persistence/repository/TimeBlockUserRepository.java @@ -1,8 +1,8 @@ -package com.asap.server.repository; +package com.asap.server.persistence.repository; -import com.asap.server.domain.TimeBlock; -import com.asap.server.domain.TimeBlockUser; -import com.asap.server.domain.User; +import com.asap.server.persistence.domain.TimeBlock; +import com.asap.server.persistence.domain.TimeBlockUser; +import com.asap.server.persistence.domain.User; import org.springframework.data.repository.Repository; import java.util.List; diff --git a/src/main/java/com/asap/server/repository/meeting/MeetingRepository.java b/src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepository.java similarity index 71% rename from src/main/java/com/asap/server/repository/meeting/MeetingRepository.java rename to src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepository.java index 746762bd..a62912a3 100644 --- a/src/main/java/com/asap/server/repository/meeting/MeetingRepository.java +++ b/src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepository.java @@ -1,6 +1,6 @@ -package com.asap.server.repository.meeting; +package com.asap.server.persistence.repository.meeting; -import com.asap.server.domain.Meeting; +import com.asap.server.persistence.domain.Meeting; import org.springframework.data.repository.Repository; import java.util.Optional; diff --git a/src/main/java/com/asap/server/repository/meeting/MeetingRepositoryCustom.java b/src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepositoryCustom.java similarity index 54% rename from src/main/java/com/asap/server/repository/meeting/MeetingRepositoryCustom.java rename to src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepositoryCustom.java index 3583a156..dcbd1e63 100644 --- a/src/main/java/com/asap/server/repository/meeting/MeetingRepositoryCustom.java +++ b/src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepositoryCustom.java @@ -1,6 +1,6 @@ -package com.asap.server.repository.meeting; +package com.asap.server.persistence.repository.meeting; -import com.asap.server.domain.Meeting; +import com.asap.server.persistence.domain.Meeting; import java.util.Optional; diff --git a/src/main/java/com/asap/server/repository/meeting/MeetingRepositoryImpl.java b/src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepositoryImpl.java similarity index 72% rename from src/main/java/com/asap/server/repository/meeting/MeetingRepositoryImpl.java rename to src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepositoryImpl.java index 7165d485..7ece5fd6 100644 --- a/src/main/java/com/asap/server/repository/meeting/MeetingRepositoryImpl.java +++ b/src/main/java/com/asap/server/persistence/repository/meeting/MeetingRepositoryImpl.java @@ -1,13 +1,12 @@ -package com.asap.server.repository.meeting; +package com.asap.server.persistence.repository.meeting; -import com.asap.server.domain.Meeting; -import com.querydsl.jpa.impl.JPAQueryFactory; -import lombok.RequiredArgsConstructor; +import static com.asap.server.persistence.domain.QMeeting.meeting; +import static com.asap.server.persistence.domain.QUser.user; +import com.asap.server.persistence.domain.Meeting; +import com.querydsl.jpa.impl.JPAQueryFactory; import java.util.Optional; - -import static com.asap.server.domain.QMeeting.meeting; -import static com.asap.server.domain.QUser.user; +import lombok.RequiredArgsConstructor; @RequiredArgsConstructor public class MeetingRepositoryImpl implements MeetingRepositoryCustom { diff --git a/src/main/java/com/asap/server/repository/timeblock/TimeBlockRepository.java b/src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepository.java similarity index 66% rename from src/main/java/com/asap/server/repository/timeblock/TimeBlockRepository.java rename to src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepository.java index 74f24144..887a4673 100644 --- a/src/main/java/com/asap/server/repository/timeblock/TimeBlockRepository.java +++ b/src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepository.java @@ -1,8 +1,8 @@ -package com.asap.server.repository.timeblock; +package com.asap.server.persistence.repository.timeblock; -import com.asap.server.domain.AvailableDate; -import com.asap.server.domain.TimeBlock; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.AvailableDate; +import com.asap.server.persistence.domain.TimeBlock; +import com.asap.server.persistence.domain.enums.TimeSlot; import org.springframework.data.repository.Repository; import java.util.List; diff --git a/src/main/java/com/asap/server/repository/timeblock/TimeBlockRepositoryCustom.java b/src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryCustom.java similarity index 52% rename from src/main/java/com/asap/server/repository/timeblock/TimeBlockRepositoryCustom.java rename to src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryCustom.java index 64bef626..1dd2afb3 100644 --- a/src/main/java/com/asap/server/repository/timeblock/TimeBlockRepositoryCustom.java +++ b/src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryCustom.java @@ -1,6 +1,6 @@ -package com.asap.server.repository.timeblock; +package com.asap.server.persistence.repository.timeblock; -import com.asap.server.repository.timeblock.dto.TimeBlockDto; +import com.asap.server.persistence.repository.timeblock.dto.TimeBlockDto; import java.util.List; public interface TimeBlockRepositoryCustom { diff --git a/src/main/java/com/asap/server/repository/timeblock/TimeBlockRepositoryImpl.java b/src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryImpl.java similarity index 71% rename from src/main/java/com/asap/server/repository/timeblock/TimeBlockRepositoryImpl.java rename to src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryImpl.java index c8b3106e..30362dce 100644 --- a/src/main/java/com/asap/server/repository/timeblock/TimeBlockRepositoryImpl.java +++ b/src/main/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryImpl.java @@ -1,11 +1,11 @@ -package com.asap.server.repository.timeblock; +package com.asap.server.persistence.repository.timeblock; -import static com.asap.server.domain.QAvailableDate.availableDate; -import static com.asap.server.domain.QTimeBlock.timeBlock; -import static com.asap.server.domain.QTimeBlockUser.timeBlockUser; +import static com.asap.server.persistence.domain.QAvailableDate.availableDate; +import static com.asap.server.persistence.domain.QTimeBlock.timeBlock; +import static com.asap.server.persistence.domain.QTimeBlockUser.timeBlockUser; -import com.asap.server.repository.timeblock.dto.QTimeBlockDto; -import com.asap.server.repository.timeblock.dto.TimeBlockDto; +import com.asap.server.persistence.repository.timeblock.dto.QTimeBlockDto; +import com.asap.server.persistence.repository.timeblock.dto.TimeBlockDto; import com.querydsl.jpa.impl.JPAQueryFactory; import java.util.List; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/com/asap/server/repository/timeblock/dto/TimeBlockDto.java b/src/main/java/com/asap/server/persistence/repository/timeblock/dto/TimeBlockDto.java similarity index 83% rename from src/main/java/com/asap/server/repository/timeblock/dto/TimeBlockDto.java rename to src/main/java/com/asap/server/persistence/repository/timeblock/dto/TimeBlockDto.java index e1fca38d..8a739332 100644 --- a/src/main/java/com/asap/server/repository/timeblock/dto/TimeBlockDto.java +++ b/src/main/java/com/asap/server/persistence/repository/timeblock/dto/TimeBlockDto.java @@ -1,6 +1,6 @@ -package com.asap.server.repository.timeblock.dto; +package com.asap.server.persistence.repository.timeblock.dto; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.enums.TimeSlot; import com.querydsl.core.annotations.QueryProjection; import org.jetbrains.annotations.NotNull; diff --git a/src/main/java/com/asap/server/repository/user/UserRepository.java b/src/main/java/com/asap/server/persistence/repository/user/UserRepository.java similarity index 75% rename from src/main/java/com/asap/server/repository/user/UserRepository.java rename to src/main/java/com/asap/server/persistence/repository/user/UserRepository.java index 844d3162..15dbef15 100644 --- a/src/main/java/com/asap/server/repository/user/UserRepository.java +++ b/src/main/java/com/asap/server/persistence/repository/user/UserRepository.java @@ -1,7 +1,7 @@ -package com.asap.server.repository.user; +package com.asap.server.persistence.repository.user; -import com.asap.server.domain.Meeting; -import com.asap.server.domain.User; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.User; import org.springframework.data.repository.Repository; import java.util.List; diff --git a/src/main/java/com/asap/server/repository/user/UserRepositoryCustom.java b/src/main/java/com/asap/server/persistence/repository/user/UserRepositoryCustom.java similarity index 67% rename from src/main/java/com/asap/server/repository/user/UserRepositoryCustom.java rename to src/main/java/com/asap/server/persistence/repository/user/UserRepositoryCustom.java index 159acae4..1a1a7a66 100644 --- a/src/main/java/com/asap/server/repository/user/UserRepositoryCustom.java +++ b/src/main/java/com/asap/server/persistence/repository/user/UserRepositoryCustom.java @@ -1,7 +1,7 @@ -package com.asap.server.repository.user; +package com.asap.server.persistence.repository.user; -import com.asap.server.domain.Meeting; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.enums.TimeSlot; import com.asap.server.service.vo.UserVo; import java.time.LocalDate; diff --git a/src/main/java/com/asap/server/repository/user/UserRepositoryImpl.java b/src/main/java/com/asap/server/persistence/repository/user/UserRepositoryImpl.java similarity index 78% rename from src/main/java/com/asap/server/repository/user/UserRepositoryImpl.java rename to src/main/java/com/asap/server/persistence/repository/user/UserRepositoryImpl.java index 2926b249..9f301950 100644 --- a/src/main/java/com/asap/server/repository/user/UserRepositoryImpl.java +++ b/src/main/java/com/asap/server/persistence/repository/user/UserRepositoryImpl.java @@ -1,12 +1,12 @@ -package com.asap.server.repository.user; +package com.asap.server.persistence.repository.user; -import static com.asap.server.domain.QAvailableDate.availableDate; -import static com.asap.server.domain.QTimeBlock.timeBlock; -import static com.asap.server.domain.QTimeBlockUser.timeBlockUser; -import static com.asap.server.domain.QUser.user; +import static com.asap.server.persistence.domain.QAvailableDate.availableDate; +import static com.asap.server.persistence.domain.QTimeBlock.timeBlock; +import static com.asap.server.persistence.domain.QTimeBlockUser.timeBlockUser; +import static com.asap.server.persistence.domain.QUser.user; -import com.asap.server.domain.Meeting; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.enums.TimeSlot; import com.asap.server.service.vo.QUserVo; import com.asap.server.service.vo.UserVo; import com.querydsl.jpa.impl.JPAQueryFactory; diff --git a/src/main/java/com/asap/server/common/advice/ControllerExceptionAdvice.java b/src/main/java/com/asap/server/presentation/common/advice/ControllerExceptionAdvice.java similarity index 85% rename from src/main/java/com/asap/server/common/advice/ControllerExceptionAdvice.java rename to src/main/java/com/asap/server/presentation/common/advice/ControllerExceptionAdvice.java index d1538be6..c4c7267f 100644 --- a/src/main/java/com/asap/server/common/advice/ControllerExceptionAdvice.java +++ b/src/main/java/com/asap/server/presentation/common/advice/ControllerExceptionAdvice.java @@ -1,19 +1,19 @@ -package com.asap.server.common.advice; - -import com.asap.server.common.dto.ErrorDataResponse; -import com.asap.server.common.dto.ErrorResponse; -import com.asap.server.common.utils.SlackUtil; -import com.asap.server.controller.dto.response.HostLoginResponseDto; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.AsapException; -import com.asap.server.exception.model.BadRequestException; -import com.asap.server.exception.model.ConflictException; -import com.asap.server.exception.model.ForbiddenException; -import com.asap.server.exception.model.HostTimeForbiddenException; -import com.asap.server.exception.model.InternalErrorException; -import com.asap.server.exception.model.NotFoundException; -import com.asap.server.exception.model.TooManyRequestException; -import com.asap.server.exception.model.UnauthorizedException; +package com.asap.server.presentation.common.advice; + +import com.asap.server.presentation.common.dto.ErrorDataResponse; +import com.asap.server.presentation.common.dto.ErrorResponse; +import com.asap.server.infra.slack.SlackUtil; +import com.asap.server.presentation.controller.dto.response.HostLoginResponseDto; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.AsapException; +import com.asap.server.common.exception.model.BadRequestException; +import com.asap.server.common.exception.model.ConflictException; +import com.asap.server.common.exception.model.ForbiddenException; +import com.asap.server.common.exception.model.HostTimeForbiddenException; +import com.asap.server.common.exception.model.InternalErrorException; +import com.asap.server.common.exception.model.NotFoundException; +import com.asap.server.common.exception.model.TooManyRequestException; +import com.asap.server.common.exception.model.UnauthorizedException; import jakarta.servlet.http.HttpServletRequest; import jakarta.validation.ConstraintViolationException; import jakarta.validation.ValidationException; @@ -32,7 +32,7 @@ import java.io.IOException; import java.time.DateTimeException; -import static com.asap.server.exception.Error.METHOD_NOT_ALLOWED_EXCEPTION; +import static com.asap.server.common.exception.Error.METHOD_NOT_ALLOWED_EXCEPTION; @Slf4j @RestControllerAdvice diff --git a/src/main/java/com/asap/server/common/dto/ErrorDataResponse.java b/src/main/java/com/asap/server/presentation/common/dto/ErrorDataResponse.java similarity index 85% rename from src/main/java/com/asap/server/common/dto/ErrorDataResponse.java rename to src/main/java/com/asap/server/presentation/common/dto/ErrorDataResponse.java index a708a20b..172f6911 100644 --- a/src/main/java/com/asap/server/common/dto/ErrorDataResponse.java +++ b/src/main/java/com/asap/server/presentation/common/dto/ErrorDataResponse.java @@ -1,6 +1,6 @@ -package com.asap.server.common.dto; +package com.asap.server.presentation.common.dto; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; import lombok.Getter; @Getter diff --git a/src/main/java/com/asap/server/common/dto/ErrorResponse.java b/src/main/java/com/asap/server/presentation/common/dto/ErrorResponse.java similarity index 84% rename from src/main/java/com/asap/server/common/dto/ErrorResponse.java rename to src/main/java/com/asap/server/presentation/common/dto/ErrorResponse.java index a78c003c..0cdb706f 100644 --- a/src/main/java/com/asap/server/common/dto/ErrorResponse.java +++ b/src/main/java/com/asap/server/presentation/common/dto/ErrorResponse.java @@ -1,6 +1,6 @@ -package com.asap.server.common.dto; +package com.asap.server.presentation.common.dto; -import com.asap.server.exception.Error; +import com.asap.server.common.exception.Error; import lombok.Getter; import lombok.RequiredArgsConstructor; import lombok.ToString; diff --git a/src/main/java/com/asap/server/common/dto/SuccessResponse.java b/src/main/java/com/asap/server/presentation/common/dto/SuccessResponse.java similarity index 88% rename from src/main/java/com/asap/server/common/dto/SuccessResponse.java rename to src/main/java/com/asap/server/presentation/common/dto/SuccessResponse.java index ab8a496e..7b71480e 100644 --- a/src/main/java/com/asap/server/common/dto/SuccessResponse.java +++ b/src/main/java/com/asap/server/presentation/common/dto/SuccessResponse.java @@ -1,6 +1,6 @@ -package com.asap.server.common.dto; +package com.asap.server.presentation.common.dto; -import com.asap.server.exception.Success; +import com.asap.server.common.exception.Success; import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/src/main/java/com/asap/server/common/utils/SecureUrlUtil.java b/src/main/java/com/asap/server/presentation/common/secure/SecureUrlUtil.java similarity index 88% rename from src/main/java/com/asap/server/common/utils/SecureUrlUtil.java rename to src/main/java/com/asap/server/presentation/common/secure/SecureUrlUtil.java index 452a5e35..54d45ddd 100644 --- a/src/main/java/com/asap/server/common/utils/SecureUrlUtil.java +++ b/src/main/java/com/asap/server/presentation/common/secure/SecureUrlUtil.java @@ -1,4 +1,4 @@ -package com.asap.server.common.utils; +package com.asap.server.presentation.common.secure; import org.springframework.stereotype.Component; diff --git a/src/main/java/com/asap/server/common/filter/CustomHttpServletRequestWrapper.java b/src/main/java/com/asap/server/presentation/common/wrapper/CustomHttpServletRequestWrapper.java similarity index 97% rename from src/main/java/com/asap/server/common/filter/CustomHttpServletRequestWrapper.java rename to src/main/java/com/asap/server/presentation/common/wrapper/CustomHttpServletRequestWrapper.java index 5cd33593..3eb4765f 100644 --- a/src/main/java/com/asap/server/common/filter/CustomHttpServletRequestWrapper.java +++ b/src/main/java/com/asap/server/presentation/common/wrapper/CustomHttpServletRequestWrapper.java @@ -1,4 +1,4 @@ -package com.asap.server.common.filter; +package com.asap.server.presentation.common.wrapper; import jakarta.servlet.ReadListener; import jakarta.servlet.ServletInputStream; diff --git a/src/main/java/com/asap/server/config/WebConfig.java b/src/main/java/com/asap/server/presentation/config/WebConfig.java similarity index 85% rename from src/main/java/com/asap/server/config/WebConfig.java rename to src/main/java/com/asap/server/presentation/config/WebConfig.java index 42143da7..4227716e 100644 --- a/src/main/java/com/asap/server/config/WebConfig.java +++ b/src/main/java/com/asap/server/presentation/config/WebConfig.java @@ -1,8 +1,8 @@ -package com.asap.server.config; +package com.asap.server.presentation.config; -import com.asap.server.common.interceptor.DuplicatedInterceptor; -import com.asap.server.config.resolver.meeting.MeetingPathVariableResolver; -import com.asap.server.config.resolver.user.UserIdResolver; +import com.asap.server.presentation.config.interceptor.DuplicatedInterceptor; +import com.asap.server.presentation.config.resolver.meeting.MeetingPathVariableResolver; +import com.asap.server.presentation.config.resolver.user.UserIdResolver; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/src/main/java/com/asap/server/common/aspect/LoggingAspect.java b/src/main/java/com/asap/server/presentation/config/aspect/LoggingAspect.java similarity index 81% rename from src/main/java/com/asap/server/common/aspect/LoggingAspect.java rename to src/main/java/com/asap/server/presentation/config/aspect/LoggingAspect.java index 9556594b..4e5d5d86 100644 --- a/src/main/java/com/asap/server/common/aspect/LoggingAspect.java +++ b/src/main/java/com/asap/server/presentation/config/aspect/LoggingAspect.java @@ -1,6 +1,6 @@ -package com.asap.server.common.aspect; +package com.asap.server.presentation.config.aspect; -import com.asap.server.common.filter.CustomHttpServletRequestWrapper; +import com.asap.server.presentation.common.wrapper.CustomHttpServletRequestWrapper; import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; import org.aspectj.lang.ProceedingJoinPoint; @@ -20,15 +20,15 @@ @Slf4j public class LoggingAspect { - @Pointcut("execution(* com.asap.server.controller..*(..)) || ( execution(* com.asap.server.common.advice..*(..)) && !execution(* com.asap.server.common.advice.ControllerExceptionAdvice.handleException*(..)))") + @Pointcut("execution(* com.asap.server.presentation.controller..*(..)) || ( execution(* com.asap.server.presentation.common.advice..*(..)) && !execution(* com.asap.server.presentation.common.advice.ControllerExceptionAdvice.handleException*(..)))") public void controllerInfoLevelExecute() { } - @Pointcut("execution(* com.asap.server.common.advice.ControllerExceptionAdvice.handleException*(..))") + @Pointcut("execution(* com.asap.server.presentation.common.advice.ControllerExceptionAdvice.handleException*(..))") public void controllerErrorLevelExecute() { } - @Around("com.asap.server.common.aspect.LoggingAspect.controllerInfoLevelExecute()") + @Around("com.asap.server.presentation.config.aspect.LoggingAspect.controllerInfoLevelExecute()") public Object requestInfoLevelLogging(ProceedingJoinPoint proceedingJoinPoint) throws Throwable { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest(); long startAt = System.currentTimeMillis(); @@ -47,7 +47,7 @@ public Object requestInfoLevelLogging(ProceedingJoinPoint proceedingJoinPoint) t return returnValue; } - @Around("com.asap.server.common.aspect.LoggingAspect.controllerErrorLevelExecute()") + @Around("com.asap.server.presentation.config.aspect.LoggingAspect.controllerErrorLevelExecute()") public Object requestErrorLevelLogging(ProceedingJoinPoint proceedingJoinPoint) throws Throwable { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest(); long startAt = System.currentTimeMillis(); diff --git a/src/main/java/com/asap/server/common/filter/CustomServletWrappingFilter.java b/src/main/java/com/asap/server/presentation/config/filter/CustomServletWrappingFilter.java similarity index 83% rename from src/main/java/com/asap/server/common/filter/CustomServletWrappingFilter.java rename to src/main/java/com/asap/server/presentation/config/filter/CustomServletWrappingFilter.java index 9bf7cea3..f2ecb3cb 100644 --- a/src/main/java/com/asap/server/common/filter/CustomServletWrappingFilter.java +++ b/src/main/java/com/asap/server/presentation/config/filter/CustomServletWrappingFilter.java @@ -1,5 +1,6 @@ -package com.asap.server.common.filter; +package com.asap.server.presentation.config.filter; +import com.asap.server.presentation.common.wrapper.CustomHttpServletRequestWrapper; import jakarta.servlet.Filter; import jakarta.servlet.FilterChain; import jakarta.servlet.ServletException; diff --git a/src/main/java/com/asap/server/config/filter/HttpRequestConfig.java b/src/main/java/com/asap/server/presentation/config/filter/HttpRequestConfig.java similarity index 84% rename from src/main/java/com/asap/server/config/filter/HttpRequestConfig.java rename to src/main/java/com/asap/server/presentation/config/filter/HttpRequestConfig.java index 3520a246..453babe2 100644 --- a/src/main/java/com/asap/server/config/filter/HttpRequestConfig.java +++ b/src/main/java/com/asap/server/presentation/config/filter/HttpRequestConfig.java @@ -1,6 +1,5 @@ -package com.asap.server.config.filter; +package com.asap.server.presentation.config.filter; -import com.asap.server.common.filter.CustomServletWrappingFilter; import org.springframework.boot.web.servlet.FilterRegistrationBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/src/main/java/com/asap/server/common/interceptor/DuplicatedInterceptor.java b/src/main/java/com/asap/server/presentation/config/interceptor/DuplicatedInterceptor.java similarity index 90% rename from src/main/java/com/asap/server/common/interceptor/DuplicatedInterceptor.java rename to src/main/java/com/asap/server/presentation/config/interceptor/DuplicatedInterceptor.java index ef65eb1a..b01a2e12 100644 --- a/src/main/java/com/asap/server/common/interceptor/DuplicatedInterceptor.java +++ b/src/main/java/com/asap/server/presentation/config/interceptor/DuplicatedInterceptor.java @@ -1,9 +1,9 @@ -package com.asap.server.common.interceptor; +package com.asap.server.presentation.config.interceptor; -import com.asap.server.common.filter.CustomHttpServletRequestWrapper; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.TooManyRequestException; +import com.asap.server.presentation.common.wrapper.CustomHttpServletRequestWrapper; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.TooManyRequestException; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/com/asap/server/config/resolver/meeting/MeetingPathVariable.java b/src/main/java/com/asap/server/presentation/config/resolver/meeting/MeetingPathVariable.java similarity index 81% rename from src/main/java/com/asap/server/config/resolver/meeting/MeetingPathVariable.java rename to src/main/java/com/asap/server/presentation/config/resolver/meeting/MeetingPathVariable.java index 26b75b8b..b8841030 100644 --- a/src/main/java/com/asap/server/config/resolver/meeting/MeetingPathVariable.java +++ b/src/main/java/com/asap/server/presentation/config/resolver/meeting/MeetingPathVariable.java @@ -1,4 +1,4 @@ -package com.asap.server.config.resolver.meeting; +package com.asap.server.presentation.config.resolver.meeting; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/src/main/java/com/asap/server/config/resolver/meeting/MeetingPathVariableResolver.java b/src/main/java/com/asap/server/presentation/config/resolver/meeting/MeetingPathVariableResolver.java similarity index 85% rename from src/main/java/com/asap/server/config/resolver/meeting/MeetingPathVariableResolver.java rename to src/main/java/com/asap/server/presentation/config/resolver/meeting/MeetingPathVariableResolver.java index 58c774f2..40e79606 100644 --- a/src/main/java/com/asap/server/config/resolver/meeting/MeetingPathVariableResolver.java +++ b/src/main/java/com/asap/server/presentation/config/resolver/meeting/MeetingPathVariableResolver.java @@ -1,7 +1,7 @@ -package com.asap.server.config.resolver.meeting; +package com.asap.server.presentation.config.resolver.meeting; -import com.asap.server.common.utils.SecureUrlUtil; -import com.asap.server.exception.model.BadRequestException; +import com.asap.server.presentation.common.secure.SecureUrlUtil; +import com.asap.server.common.exception.model.BadRequestException; import lombok.RequiredArgsConstructor; import org.springframework.core.MethodParameter; import org.springframework.stereotype.Component; @@ -14,7 +14,7 @@ import jakarta.servlet.http.HttpServletRequest; import java.util.Map; -import static com.asap.server.exception.Error.INVALID_MEETING_URL_EXCEPTION; +import static com.asap.server.common.exception.Error.INVALID_MEETING_URL_EXCEPTION; @Component @RequiredArgsConstructor diff --git a/src/main/java/com/asap/server/config/resolver/user/UserId.java b/src/main/java/com/asap/server/presentation/config/resolver/user/UserId.java similarity index 81% rename from src/main/java/com/asap/server/config/resolver/user/UserId.java rename to src/main/java/com/asap/server/presentation/config/resolver/user/UserId.java index 5bdf6108..5523fe59 100644 --- a/src/main/java/com/asap/server/config/resolver/user/UserId.java +++ b/src/main/java/com/asap/server/presentation/config/resolver/user/UserId.java @@ -1,4 +1,4 @@ -package com.asap.server.config.resolver.user; +package com.asap.server.presentation.config.resolver.user; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/src/main/java/com/asap/server/config/resolver/user/UserIdResolver.java b/src/main/java/com/asap/server/presentation/config/resolver/user/UserIdResolver.java similarity index 86% rename from src/main/java/com/asap/server/config/resolver/user/UserIdResolver.java rename to src/main/java/com/asap/server/presentation/config/resolver/user/UserIdResolver.java index 95c0a89b..f78fe526 100644 --- a/src/main/java/com/asap/server/config/resolver/user/UserIdResolver.java +++ b/src/main/java/com/asap/server/presentation/config/resolver/user/UserIdResolver.java @@ -1,9 +1,9 @@ -package com.asap.server.config.resolver.user; +package com.asap.server.presentation.config.resolver.user; -import com.asap.server.config.jwt.JwtService; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.BadRequestException; -import com.asap.server.exception.model.UnauthorizedException; +import com.asap.server.common.jwt.JwtService; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.BadRequestException; +import com.asap.server.common.exception.model.UnauthorizedException; import lombok.RequiredArgsConstructor; import org.springframework.core.MethodParameter; import org.springframework.stereotype.Component; diff --git a/src/main/java/com/asap/server/config/swagger/SwaggerConfig.java b/src/main/java/com/asap/server/presentation/config/swagger/SwaggerConfig.java similarity index 94% rename from src/main/java/com/asap/server/config/swagger/SwaggerConfig.java rename to src/main/java/com/asap/server/presentation/config/swagger/SwaggerConfig.java index 90561554..1914f453 100644 --- a/src/main/java/com/asap/server/config/swagger/SwaggerConfig.java +++ b/src/main/java/com/asap/server/presentation/config/swagger/SwaggerConfig.java @@ -1,4 +1,4 @@ -package com.asap.server.config.swagger; +package com.asap.server.presentation.config.swagger; import io.swagger.v3.oas.annotations.enums.SecuritySchemeType; import io.swagger.v3.oas.annotations.security.SecurityScheme; diff --git a/src/main/java/com/asap/server/controller/MeetingController.java b/src/main/java/com/asap/server/presentation/controller/MeetingController.java similarity index 92% rename from src/main/java/com/asap/server/controller/MeetingController.java rename to src/main/java/com/asap/server/presentation/controller/MeetingController.java index 53d1aaa7..cc01096a 100644 --- a/src/main/java/com/asap/server/controller/MeetingController.java +++ b/src/main/java/com/asap/server/presentation/controller/MeetingController.java @@ -1,18 +1,18 @@ -package com.asap.server.controller; +package com.asap.server.presentation.controller; -import com.asap.server.common.dto.ErrorResponse; -import com.asap.server.common.dto.SuccessResponse; -import com.asap.server.config.resolver.meeting.MeetingPathVariable; -import com.asap.server.config.resolver.user.UserId; -import com.asap.server.controller.dto.request.MeetingConfirmRequestDto; -import com.asap.server.controller.dto.request.MeetingSaveRequestDto; -import com.asap.server.controller.dto.response.BestMeetingTimeResponseDto; -import com.asap.server.controller.dto.response.FixedMeetingResponseDto; -import com.asap.server.controller.dto.response.MeetingSaveResponseDto; -import com.asap.server.controller.dto.response.MeetingScheduleResponseDto; -import com.asap.server.controller.dto.response.MeetingTitleResponseDto; -import com.asap.server.controller.dto.response.TimeTableResponseDto; -import com.asap.server.exception.Success; +import com.asap.server.presentation.common.dto.ErrorResponse; +import com.asap.server.presentation.common.dto.SuccessResponse; +import com.asap.server.presentation.config.resolver.meeting.MeetingPathVariable; +import com.asap.server.presentation.config.resolver.user.UserId; +import com.asap.server.presentation.controller.dto.request.MeetingConfirmRequestDto; +import com.asap.server.presentation.controller.dto.request.MeetingSaveRequestDto; +import com.asap.server.presentation.controller.dto.response.BestMeetingTimeResponseDto; +import com.asap.server.presentation.controller.dto.response.FixedMeetingResponseDto; +import com.asap.server.presentation.controller.dto.response.MeetingSaveResponseDto; +import com.asap.server.presentation.controller.dto.response.MeetingScheduleResponseDto; +import com.asap.server.presentation.controller.dto.response.MeetingTitleResponseDto; +import com.asap.server.presentation.controller.dto.response.TimeTableResponseDto; +import com.asap.server.common.exception.Success; import com.asap.server.service.MeetingService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; diff --git a/src/main/java/com/asap/server/controller/ServerProfileController.java b/src/main/java/com/asap/server/presentation/controller/ServerProfileController.java similarity index 92% rename from src/main/java/com/asap/server/controller/ServerProfileController.java rename to src/main/java/com/asap/server/presentation/controller/ServerProfileController.java index 15f42984..f831ab8f 100644 --- a/src/main/java/com/asap/server/controller/ServerProfileController.java +++ b/src/main/java/com/asap/server/presentation/controller/ServerProfileController.java @@ -1,4 +1,4 @@ -package com.asap.server.controller; +package com.asap.server.presentation.controller; import io.swagger.v3.oas.annotations.Hidden; diff --git a/src/main/java/com/asap/server/controller/UserController.java b/src/main/java/com/asap/server/presentation/controller/UserController.java similarity index 88% rename from src/main/java/com/asap/server/controller/UserController.java rename to src/main/java/com/asap/server/presentation/controller/UserController.java index e581e74e..1e5a5337 100644 --- a/src/main/java/com/asap/server/controller/UserController.java +++ b/src/main/java/com/asap/server/presentation/controller/UserController.java @@ -1,17 +1,16 @@ -package com.asap.server.controller; +package com.asap.server.presentation.controller; -import com.asap.server.common.dto.ErrorDataResponse; -import com.asap.server.common.dto.ErrorResponse; -import com.asap.server.common.dto.SuccessResponse; -import com.asap.server.config.resolver.meeting.MeetingPathVariable; -import com.asap.server.config.resolver.user.UserId; -import com.asap.server.controller.dto.request.AvailableTimeRequestDto; -import com.asap.server.controller.dto.request.HostLoginRequestDto; -import com.asap.server.controller.dto.request.UserMeetingTimeSaveRequestDto; -import com.asap.server.controller.dto.response.HostLoginResponseDto; -import com.asap.server.controller.dto.response.UserMeetingTimeResponseDto; -import com.asap.server.controller.dto.response.UserTimeResponseDto; -import com.asap.server.exception.Success; +import com.asap.server.presentation.common.dto.ErrorResponse; +import com.asap.server.presentation.common.dto.SuccessResponse; +import com.asap.server.presentation.config.resolver.meeting.MeetingPathVariable; +import com.asap.server.presentation.config.resolver.user.UserId; +import com.asap.server.presentation.controller.dto.request.AvailableTimeRequestDto; +import com.asap.server.presentation.controller.dto.request.HostLoginRequestDto; +import com.asap.server.presentation.controller.dto.request.UserMeetingTimeSaveRequestDto; +import com.asap.server.presentation.controller.dto.response.HostLoginResponseDto; +import com.asap.server.presentation.controller.dto.response.UserMeetingTimeResponseDto; +import com.asap.server.presentation.controller.dto.response.UserTimeResponseDto; +import com.asap.server.common.exception.Success; import com.asap.server.service.UserService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; diff --git a/src/main/java/com/asap/server/controller/dto/request/AvailableTimeRequestDto.java b/src/main/java/com/asap/server/presentation/controller/dto/request/AvailableTimeRequestDto.java similarity index 91% rename from src/main/java/com/asap/server/controller/dto/request/AvailableTimeRequestDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/request/AvailableTimeRequestDto.java index 0a9d6ef7..43e5c92d 100644 --- a/src/main/java/com/asap/server/controller/dto/request/AvailableTimeRequestDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/request/AvailableTimeRequestDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.request; +package com.asap.server.presentation.controller.dto.request; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Getter; diff --git a/src/main/java/com/asap/server/controller/dto/request/HostLoginRequestDto.java b/src/main/java/com/asap/server/presentation/controller/dto/request/HostLoginRequestDto.java similarity index 92% rename from src/main/java/com/asap/server/controller/dto/request/HostLoginRequestDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/request/HostLoginRequestDto.java index 5caf08b7..7549b713 100644 --- a/src/main/java/com/asap/server/controller/dto/request/HostLoginRequestDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/request/HostLoginRequestDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.request; +package com.asap.server.presentation.controller.dto.request; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Getter; diff --git a/src/main/java/com/asap/server/controller/dto/request/MeetingConfirmRequestDto.java b/src/main/java/com/asap/server/presentation/controller/dto/request/MeetingConfirmRequestDto.java similarity index 89% rename from src/main/java/com/asap/server/controller/dto/request/MeetingConfirmRequestDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/request/MeetingConfirmRequestDto.java index 2d03acc5..f8bf0122 100644 --- a/src/main/java/com/asap/server/controller/dto/request/MeetingConfirmRequestDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/request/MeetingConfirmRequestDto.java @@ -1,6 +1,6 @@ -package com.asap.server.controller.dto.request; +package com.asap.server.presentation.controller.dto.request; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.enums.TimeSlot; import java.util.List; import jakarta.validation.constraints.NotNull; import lombok.AccessLevel; diff --git a/src/main/java/com/asap/server/controller/dto/request/MeetingSaveRequestDto.java b/src/main/java/com/asap/server/presentation/controller/dto/request/MeetingSaveRequestDto.java similarity index 89% rename from src/main/java/com/asap/server/controller/dto/request/MeetingSaveRequestDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/request/MeetingSaveRequestDto.java index 4a1348e7..908c8a81 100644 --- a/src/main/java/com/asap/server/controller/dto/request/MeetingSaveRequestDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/request/MeetingSaveRequestDto.java @@ -1,7 +1,7 @@ -package com.asap.server.controller.dto.request; +package com.asap.server.presentation.controller.dto.request; -import com.asap.server.domain.enums.Duration; -import com.asap.server.domain.enums.PlaceType; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.PlaceType; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; @@ -18,8 +18,6 @@ public record MeetingSaveRequestDto( String title, @Schema(description = "회의 κ°€λŠ₯ λ‚ μ§œ", example = "[\"2024/7/9/MON\"]") List availableDates, - @Schema(description = "회의 μ„ ν˜Έ μ‹œκ°„") - List preferTimes, @NotNull(message = "회의 ν˜•μ‹μ΄ μž…λ ₯λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.") @Schema(description = "회의 방식", example = "ONLINE", allowableValues = {"ONLINE", "OFFLINE", "UNDEFINED"}) PlaceType place, diff --git a/src/main/java/com/asap/server/controller/dto/request/UserMeetingTimeSaveRequestDto.java b/src/main/java/com/asap/server/presentation/controller/dto/request/UserMeetingTimeSaveRequestDto.java similarity index 78% rename from src/main/java/com/asap/server/controller/dto/request/UserMeetingTimeSaveRequestDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/request/UserMeetingTimeSaveRequestDto.java index 437603f6..dcda1704 100644 --- a/src/main/java/com/asap/server/controller/dto/request/UserMeetingTimeSaveRequestDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/request/UserMeetingTimeSaveRequestDto.java @@ -1,13 +1,9 @@ -package com.asap.server.controller.dto.request; +package com.asap.server.presentation.controller.dto.request; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.enums.TimeSlot; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; -import jakarta.validation.constraints.Pattern; -import lombok.AccessLevel; -import lombok.Getter; -import lombok.NoArgsConstructor; @Schema(description = "회의 κ°€λŠ₯ μ‹œκ°„ DTO") public record UserMeetingTimeSaveRequestDto( diff --git a/src/main/java/com/asap/server/controller/dto/request/UserRequestDto.java b/src/main/java/com/asap/server/presentation/controller/dto/request/UserRequestDto.java similarity index 84% rename from src/main/java/com/asap/server/controller/dto/request/UserRequestDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/request/UserRequestDto.java index c439d096..b0b8110e 100644 --- a/src/main/java/com/asap/server/controller/dto/request/UserRequestDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/request/UserRequestDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.request; +package com.asap.server.presentation.controller.dto.request; import lombok.AccessLevel; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/controller/dto/response/AvailableDateResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/AvailableDateResponseDto.java similarity index 81% rename from src/main/java/com/asap/server/controller/dto/response/AvailableDateResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/AvailableDateResponseDto.java index 9ddc17e7..1cc83411 100644 --- a/src/main/java/com/asap/server/controller/dto/response/AvailableDateResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/AvailableDateResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/AvailableDatesDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/AvailableDatesDto.java similarity index 84% rename from src/main/java/com/asap/server/controller/dto/response/AvailableDatesDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/AvailableDatesDto.java index eef84ff0..e19efb9d 100644 --- a/src/main/java/com/asap/server/controller/dto/response/AvailableDatesDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/AvailableDatesDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/BestMeetingTimeResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/BestMeetingTimeResponseDto.java similarity index 91% rename from src/main/java/com/asap/server/controller/dto/response/BestMeetingTimeResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/BestMeetingTimeResponseDto.java index e34fa707..a80e6d48 100644 --- a/src/main/java/com/asap/server/controller/dto/response/BestMeetingTimeResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/BestMeetingTimeResponseDto.java @@ -1,6 +1,5 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; -import com.asap.server.service.vo.BestMeetingTimeVo; import com.asap.server.service.vo.BestMeetingTimeWithUsersVo; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/src/main/java/com/asap/server/controller/dto/response/FixedMeetingResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/FixedMeetingResponseDto.java similarity index 89% rename from src/main/java/com/asap/server/controller/dto/response/FixedMeetingResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/FixedMeetingResponseDto.java index 66690b38..5572a6d6 100644 --- a/src/main/java/com/asap/server/controller/dto/response/FixedMeetingResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/FixedMeetingResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import java.util.List; import lombok.AllArgsConstructor; diff --git a/src/main/java/com/asap/server/controller/dto/response/HostLoginResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/HostLoginResponseDto.java similarity index 78% rename from src/main/java/com/asap/server/controller/dto/response/HostLoginResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/HostLoginResponseDto.java index 8982c981..39436bb6 100644 --- a/src/main/java/com/asap/server/controller/dto/response/HostLoginResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/HostLoginResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/MeetingSaveResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/MeetingSaveResponseDto.java similarity index 79% rename from src/main/java/com/asap/server/controller/dto/response/MeetingSaveResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/MeetingSaveResponseDto.java index 66b44777..780b50f1 100644 --- a/src/main/java/com/asap/server/controller/dto/response/MeetingSaveResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/MeetingSaveResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/MeetingScheduleResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/MeetingScheduleResponseDto.java similarity index 65% rename from src/main/java/com/asap/server/controller/dto/response/MeetingScheduleResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/MeetingScheduleResponseDto.java index 9fb30641..bf3a7299 100644 --- a/src/main/java/com/asap/server/controller/dto/response/MeetingScheduleResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/MeetingScheduleResponseDto.java @@ -1,7 +1,7 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; -import com.asap.server.domain.enums.Duration; -import com.asap.server.domain.enums.PlaceType; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.PlaceType; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Getter; @@ -18,5 +18,4 @@ public class MeetingScheduleResponseDto { private PlaceType place; private String placeDetail; private List availableDates; - private List preferTimes; } diff --git a/src/main/java/com/asap/server/controller/dto/response/MeetingTimeResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/MeetingTimeResponseDto.java similarity index 94% rename from src/main/java/com/asap/server/controller/dto/response/MeetingTimeResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/MeetingTimeResponseDto.java index 6f3452d9..d2a7fcb4 100644 --- a/src/main/java/com/asap/server/controller/dto/response/MeetingTimeResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/MeetingTimeResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import com.asap.server.common.utils.DateUtil; import com.asap.server.service.vo.BestMeetingTimeWithUsersVo; diff --git a/src/main/java/com/asap/server/controller/dto/response/MeetingTitleResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/MeetingTitleResponseDto.java similarity index 77% rename from src/main/java/com/asap/server/controller/dto/response/MeetingTitleResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/MeetingTitleResponseDto.java index fd7c44a1..f5b2e1be 100644 --- a/src/main/java/com/asap/server/controller/dto/response/MeetingTitleResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/MeetingTitleResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/PreferTimeResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/PreferTimeResponseDto.java similarity index 80% rename from src/main/java/com/asap/server/controller/dto/response/PreferTimeResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/PreferTimeResponseDto.java index 51b6eb45..2d570616 100644 --- a/src/main/java/com/asap/server/controller/dto/response/PreferTimeResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/PreferTimeResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/TimeSlotDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/TimeSlotDto.java similarity index 92% rename from src/main/java/com/asap/server/controller/dto/response/TimeSlotDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/TimeSlotDto.java index 5c263078..71715ee4 100644 --- a/src/main/java/com/asap/server/controller/dto/response/TimeSlotDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/TimeSlotDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/TimeTableResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/TimeTableResponseDto.java similarity index 84% rename from src/main/java/com/asap/server/controller/dto/response/TimeTableResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/TimeTableResponseDto.java index 9eec3d0c..6e0bf1fc 100644 --- a/src/main/java/com/asap/server/controller/dto/response/TimeTableResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/TimeTableResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/UserMeetingTimeResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/UserMeetingTimeResponseDto.java similarity index 80% rename from src/main/java/com/asap/server/controller/dto/response/UserMeetingTimeResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/UserMeetingTimeResponseDto.java index e41bd67f..6c7d0f06 100644 --- a/src/main/java/com/asap/server/controller/dto/response/UserMeetingTimeResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/UserMeetingTimeResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/controller/dto/response/UserTimeResponseDto.java b/src/main/java/com/asap/server/presentation/controller/dto/response/UserTimeResponseDto.java similarity index 77% rename from src/main/java/com/asap/server/controller/dto/response/UserTimeResponseDto.java rename to src/main/java/com/asap/server/presentation/controller/dto/response/UserTimeResponseDto.java index f7bb0e07..9a7dd635 100644 --- a/src/main/java/com/asap/server/controller/dto/response/UserTimeResponseDto.java +++ b/src/main/java/com/asap/server/presentation/controller/dto/response/UserTimeResponseDto.java @@ -1,4 +1,4 @@ -package com.asap.server.controller.dto.response; +package com.asap.server.presentation.controller.dto.response; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/com/asap/server/repository/PreferTimeRepository.java b/src/main/java/com/asap/server/repository/PreferTimeRepository.java deleted file mode 100644 index 8961a7de..00000000 --- a/src/main/java/com/asap/server/repository/PreferTimeRepository.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.asap.server.repository; - -import com.asap.server.domain.Meeting; -import com.asap.server.domain.PreferTime; -import org.springframework.data.repository.Repository; - -import java.util.List; - -public interface PreferTimeRepository extends Repository { - - PreferTime save(final PreferTime preferTime); - - List findByMeeting(final Meeting meeting); -} diff --git a/src/main/java/com/asap/server/service/AvailableDateService.java b/src/main/java/com/asap/server/service/AvailableDateService.java index 19407a11..5f01f237 100644 --- a/src/main/java/com/asap/server/service/AvailableDateService.java +++ b/src/main/java/com/asap/server/service/AvailableDateService.java @@ -1,15 +1,15 @@ package com.asap.server.service; import com.asap.server.common.utils.DateUtil; -import com.asap.server.controller.dto.response.AvailableDateResponseDto; -import com.asap.server.controller.dto.response.AvailableDatesDto; -import com.asap.server.controller.dto.response.TimeSlotDto; -import com.asap.server.domain.AvailableDate; -import com.asap.server.domain.Meeting; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.BadRequestException; -import com.asap.server.exception.model.NotFoundException; -import com.asap.server.repository.AvailableDateRepository; +import com.asap.server.presentation.controller.dto.response.AvailableDateResponseDto; +import com.asap.server.presentation.controller.dto.response.AvailableDatesDto; +import com.asap.server.presentation.controller.dto.response.TimeSlotDto; +import com.asap.server.persistence.domain.AvailableDate; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.BadRequestException; +import com.asap.server.common.exception.model.NotFoundException; +import com.asap.server.persistence.repository.AvailableDateRepository; import java.util.List; import java.util.stream.Collectors; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/com/asap/server/service/MeetingService.java b/src/main/java/com/asap/server/service/MeetingService.java index bec47907..50098002 100644 --- a/src/main/java/com/asap/server/service/MeetingService.java +++ b/src/main/java/com/asap/server/service/MeetingService.java @@ -1,32 +1,32 @@ package com.asap.server.service; -import static com.asap.server.exception.Error.INVALID_MEETING_HOST_EXCEPTION; -import static com.asap.server.exception.Error.MEETING_VALIDATION_FAILED_EXCEPTION; +import static com.asap.server.common.exception.Error.INVALID_MEETING_HOST_EXCEPTION; +import static com.asap.server.common.exception.Error.MEETING_VALIDATION_FAILED_EXCEPTION; import com.asap.server.common.utils.DateUtil; -import com.asap.server.config.jwt.JwtService; -import com.asap.server.controller.dto.request.MeetingConfirmRequestDto; -import com.asap.server.controller.dto.request.MeetingSaveRequestDto; -import com.asap.server.controller.dto.response.AvailableDatesDto; -import com.asap.server.controller.dto.response.BestMeetingTimeResponseDto; -import com.asap.server.controller.dto.response.FixedMeetingResponseDto; -import com.asap.server.controller.dto.response.MeetingSaveResponseDto; -import com.asap.server.controller.dto.response.MeetingScheduleResponseDto; -import com.asap.server.controller.dto.response.MeetingTitleResponseDto; -import com.asap.server.controller.dto.response.TimeTableResponseDto; -import com.asap.server.domain.ConfirmedDateTime; -import com.asap.server.domain.Meeting; -import com.asap.server.domain.Place; -import com.asap.server.domain.User; -import com.asap.server.domain.enums.Role; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.ConflictException; -import com.asap.server.exception.model.ForbiddenException; -import com.asap.server.exception.model.NotFoundException; -import com.asap.server.exception.model.UnauthorizedException; -import com.asap.server.repository.meeting.MeetingRepository; -import com.asap.server.repository.timeblock.TimeBlockRepository; -import com.asap.server.repository.timeblock.dto.TimeBlockDto; +import com.asap.server.common.jwt.JwtService; +import com.asap.server.presentation.controller.dto.request.MeetingConfirmRequestDto; +import com.asap.server.presentation.controller.dto.request.MeetingSaveRequestDto; +import com.asap.server.presentation.controller.dto.response.AvailableDatesDto; +import com.asap.server.presentation.controller.dto.response.BestMeetingTimeResponseDto; +import com.asap.server.presentation.controller.dto.response.FixedMeetingResponseDto; +import com.asap.server.presentation.controller.dto.response.MeetingSaveResponseDto; +import com.asap.server.presentation.controller.dto.response.MeetingScheduleResponseDto; +import com.asap.server.presentation.controller.dto.response.MeetingTitleResponseDto; +import com.asap.server.presentation.controller.dto.response.TimeTableResponseDto; +import com.asap.server.persistence.domain.ConfirmedDateTime; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.Place; +import com.asap.server.persistence.domain.User; +import com.asap.server.persistence.domain.enums.Role; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.ConflictException; +import com.asap.server.common.exception.model.ForbiddenException; +import com.asap.server.common.exception.model.NotFoundException; +import com.asap.server.common.exception.model.UnauthorizedException; +import com.asap.server.persistence.repository.meeting.MeetingRepository; +import com.asap.server.persistence.repository.timeblock.TimeBlockRepository; +import com.asap.server.persistence.repository.timeblock.dto.TimeBlockDto; import com.asap.server.service.meeting.MeetingTimeRecommendService; import com.asap.server.service.vo.BestMeetingTimeVo; import com.asap.server.service.vo.BestMeetingTimeWithUsersVo; @@ -47,7 +47,6 @@ public class MeetingService { private final MeetingRepository meetingRepository; private final UserService userService; private final AvailableDateService availableDateService; - private final PreferTimeService preferTimeService; private final JwtService jwtService; private final MeetingTimeRecommendService meetingTimeRecommendService; private final TimeBlockRepository timeBlockRepository; @@ -72,7 +71,6 @@ public MeetingSaveResponseDto create(final MeetingSaveRequestDto meetingSaveRequ User host = userService.createUser(meeting, meetingSaveRequestDto.name(), Role.HOST); - preferTimeService.create(meeting, meetingSaveRequestDto.preferTimes()); availableDateService.create(meeting, meetingSaveRequestDto.availableDates()); meeting.setHost(host); @@ -122,7 +120,6 @@ public MeetingScheduleResponseDto getMeetingSchedule(Long meetingId) { .place(meeting.getPlace().getPlaceType()) .placeDetail(meeting.getPlace().getPlaceDetail()) .availableDates(availableDateService.getAvailableDates(meeting)) - .preferTimes(preferTimeService.getPreferTimes(meeting)) .build(); } diff --git a/src/main/java/com/asap/server/service/PreferTimeService.java b/src/main/java/com/asap/server/service/PreferTimeService.java deleted file mode 100644 index 8e40110e..00000000 --- a/src/main/java/com/asap/server/service/PreferTimeService.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.asap.server.service; - -import com.asap.server.controller.dto.request.PreferTimeSaveRequestDto; -import com.asap.server.controller.dto.response.PreferTimeResponseDto; -import com.asap.server.domain.Meeting; -import com.asap.server.domain.PreferTime; -import com.asap.server.domain.enums.TimeSlot; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.BadRequestException; -import com.asap.server.exception.model.NotFoundException; -import com.asap.server.repository.PreferTimeRepository; -import lombok.RequiredArgsConstructor; -import org.springframework.stereotype.Service; - -import java.util.Comparator; -import java.util.List; -import java.util.stream.Collectors; - -@Service -@RequiredArgsConstructor -public class PreferTimeService { - private final PreferTimeRepository preferTimeRepository; - - public void create(final Meeting meeting, - final List saveRequestDtos) { - if (isPreferTimeDuplicated(saveRequestDtos)) { - throw new BadRequestException(Error.DUPLICATED_TIME_EXCEPTION); - } - saveRequestDtos.stream() - .sorted(Comparator.comparing(preferTime -> preferTime.startTime().getTime())) - .map(preferTime -> preferTimeRepository.save( - PreferTime.builder() - .meeting(meeting) - .startTime(preferTime.startTime()) - .endTime(preferTime.endTime()).build())) - .collect(Collectors.toList()); - } - - public List getPreferTimes(final Meeting meeting) { - List preferTimes = preferTimeRepository.findByMeeting(meeting); - if (preferTimes.isEmpty()) throw new NotFoundException(Error.PREFER_TIME_NOT_FOUND_EXCEPTION); - - return preferTimes.stream() - .map(preferTime -> PreferTimeResponseDto.builder() - .startTime(preferTime.getStartTime().getTime()) - .endTime(preferTime.getEndTime().getTime()) - .build()) - .collect(Collectors.toList()); - } - - private boolean isPreferTimeDuplicated(List requestDtos) { - List timeSlots = requestDtos.stream() - .flatMap(requestDto -> TimeSlot.getTimeSlots(requestDto.startTime().ordinal(), requestDto.endTime().ordinal() - 1).stream()) - .collect(Collectors.toList()); - return timeSlots.size() != timeSlots.stream().distinct().count(); - } -} diff --git a/src/main/java/com/asap/server/service/TimeBlockService.java b/src/main/java/com/asap/server/service/TimeBlockService.java index e3b041fb..39e84578 100644 --- a/src/main/java/com/asap/server/service/TimeBlockService.java +++ b/src/main/java/com/asap/server/service/TimeBlockService.java @@ -1,12 +1,12 @@ package com.asap.server.service; -import com.asap.server.domain.AvailableDate; -import com.asap.server.domain.TimeBlock; -import com.asap.server.domain.enums.TimeSlot; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.NotFoundException; -import com.asap.server.repository.timeblock.TimeBlockRepository; +import com.asap.server.persistence.domain.AvailableDate; +import com.asap.server.persistence.domain.TimeBlock; +import com.asap.server.persistence.domain.enums.TimeSlot; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.NotFoundException; +import com.asap.server.persistence.repository.timeblock.TimeBlockRepository; import java.util.List; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; diff --git a/src/main/java/com/asap/server/service/TimeBlockUserService.java b/src/main/java/com/asap/server/service/TimeBlockUserService.java index e188e4d8..cf1babae 100644 --- a/src/main/java/com/asap/server/service/TimeBlockUserService.java +++ b/src/main/java/com/asap/server/service/TimeBlockUserService.java @@ -1,10 +1,10 @@ package com.asap.server.service; -import com.asap.server.controller.dto.response.TimeSlotDto; -import com.asap.server.domain.TimeBlock; -import com.asap.server.domain.TimeBlockUser; -import com.asap.server.domain.User; -import com.asap.server.repository.TimeBlockUserRepository; +import com.asap.server.presentation.controller.dto.response.TimeSlotDto; +import com.asap.server.persistence.domain.TimeBlock; +import com.asap.server.persistence.domain.TimeBlockUser; +import com.asap.server.persistence.domain.User; +import com.asap.server.persistence.repository.TimeBlockUserRepository; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; diff --git a/src/main/java/com/asap/server/service/UserService.java b/src/main/java/com/asap/server/service/UserService.java index eef004a3..9c1d67fe 100644 --- a/src/main/java/com/asap/server/service/UserService.java +++ b/src/main/java/com/asap/server/service/UserService.java @@ -1,26 +1,26 @@ package com.asap.server.service; -import com.asap.server.config.jwt.JwtService; -import com.asap.server.controller.dto.request.AvailableTimeRequestDto; -import com.asap.server.controller.dto.request.HostLoginRequestDto; -import com.asap.server.controller.dto.request.UserMeetingTimeSaveRequestDto; -import com.asap.server.controller.dto.request.UserRequestDto; -import com.asap.server.controller.dto.response.HostLoginResponseDto; -import com.asap.server.controller.dto.response.UserMeetingTimeResponseDto; -import com.asap.server.controller.dto.response.UserTimeResponseDto; -import com.asap.server.domain.AvailableDate; -import com.asap.server.domain.Meeting; -import com.asap.server.domain.User; -import com.asap.server.domain.enums.Role; -import com.asap.server.domain.enums.TimeSlot; -import com.asap.server.exception.Error; -import com.asap.server.exception.model.BadRequestException; -import com.asap.server.exception.model.ConflictException; -import com.asap.server.exception.model.HostTimeForbiddenException; -import com.asap.server.exception.model.NotFoundException; -import com.asap.server.exception.model.UnauthorizedException; -import com.asap.server.repository.meeting.MeetingRepository; -import com.asap.server.repository.user.UserRepository; +import com.asap.server.common.jwt.JwtService; +import com.asap.server.presentation.controller.dto.request.AvailableTimeRequestDto; +import com.asap.server.presentation.controller.dto.request.HostLoginRequestDto; +import com.asap.server.presentation.controller.dto.request.UserMeetingTimeSaveRequestDto; +import com.asap.server.presentation.controller.dto.request.UserRequestDto; +import com.asap.server.presentation.controller.dto.response.HostLoginResponseDto; +import com.asap.server.presentation.controller.dto.response.UserMeetingTimeResponseDto; +import com.asap.server.presentation.controller.dto.response.UserTimeResponseDto; +import com.asap.server.persistence.domain.AvailableDate; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.User; +import com.asap.server.persistence.domain.enums.Role; +import com.asap.server.persistence.domain.enums.TimeSlot; +import com.asap.server.common.exception.Error; +import com.asap.server.common.exception.model.BadRequestException; +import com.asap.server.common.exception.model.ConflictException; +import com.asap.server.common.exception.model.HostTimeForbiddenException; +import com.asap.server.common.exception.model.NotFoundException; +import com.asap.server.common.exception.model.UnauthorizedException; +import com.asap.server.persistence.repository.meeting.MeetingRepository; +import com.asap.server.persistence.repository.user.UserRepository; import com.asap.server.service.vo.BestMeetingTimeVo; import com.asap.server.service.vo.BestMeetingTimeWithUsersVo; import com.asap.server.service.vo.UserVo; @@ -34,9 +34,9 @@ import java.util.Map; import java.util.stream.Collectors; -import static com.asap.server.exception.Error.INVALID_MEETING_HOST_EXCEPTION; -import static com.asap.server.exception.Error.MEETING_VALIDATION_FAILED_EXCEPTION; -import static com.asap.server.exception.Error.USER_NOT_FOUND_EXCEPTION; +import static com.asap.server.common.exception.Error.INVALID_MEETING_HOST_EXCEPTION; +import static com.asap.server.common.exception.Error.MEETING_VALIDATION_FAILED_EXCEPTION; +import static com.asap.server.common.exception.Error.USER_NOT_FOUND_EXCEPTION; @Service diff --git a/src/main/java/com/asap/server/service/meeting/FindBestMeetingTimeCasesStrategy.java b/src/main/java/com/asap/server/service/meeting/FindBestMeetingTimeCasesStrategy.java index 9b3b4eaa..c6175eb0 100644 --- a/src/main/java/com/asap/server/service/meeting/FindBestMeetingTimeCasesStrategy.java +++ b/src/main/java/com/asap/server/service/meeting/FindBestMeetingTimeCasesStrategy.java @@ -1,6 +1,6 @@ package com.asap.server.service.meeting; -import com.asap.server.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.Duration; import com.asap.server.service.vo.PossibleTimeCaseVo; import org.springframework.stereotype.Component; diff --git a/src/main/java/com/asap/server/service/meeting/FindBestMeetingTimeStrategy.java b/src/main/java/com/asap/server/service/meeting/FindBestMeetingTimeStrategy.java index 5bed55ac..d5f3dcf2 100644 --- a/src/main/java/com/asap/server/service/meeting/FindBestMeetingTimeStrategy.java +++ b/src/main/java/com/asap/server/service/meeting/FindBestMeetingTimeStrategy.java @@ -1,7 +1,7 @@ package com.asap.server.service.meeting; -import com.asap.server.domain.enums.TimeSlot; -import com.asap.server.repository.timeblock.dto.TimeBlockDto; +import com.asap.server.persistence.domain.enums.TimeSlot; +import com.asap.server.persistence.repository.timeblock.dto.TimeBlockDto; import com.asap.server.service.vo.BestMeetingTimeVo; import com.asap.server.service.vo.PossibleTimeCaseVo; import java.util.ArrayList; diff --git a/src/main/java/com/asap/server/service/meeting/MeetingTimeRecommendService.java b/src/main/java/com/asap/server/service/meeting/MeetingTimeRecommendService.java index 3e7d17a7..32eb618b 100644 --- a/src/main/java/com/asap/server/service/meeting/MeetingTimeRecommendService.java +++ b/src/main/java/com/asap/server/service/meeting/MeetingTimeRecommendService.java @@ -1,7 +1,7 @@ package com.asap.server.service.meeting; -import com.asap.server.domain.enums.Duration; -import com.asap.server.repository.timeblock.dto.TimeBlockDto; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.repository.timeblock.dto.TimeBlockDto; import com.asap.server.service.vo.BestMeetingTimeVo; import com.asap.server.service.vo.PossibleTimeCaseVo; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/com/asap/server/service/vo/BestMeetingTimeVo.java b/src/main/java/com/asap/server/service/vo/BestMeetingTimeVo.java index 65167a26..18c1592e 100644 --- a/src/main/java/com/asap/server/service/vo/BestMeetingTimeVo.java +++ b/src/main/java/com/asap/server/service/vo/BestMeetingTimeVo.java @@ -1,6 +1,6 @@ package com.asap.server.service.vo; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.enums.TimeSlot; import java.time.LocalDate; diff --git a/src/main/java/com/asap/server/service/vo/BestMeetingTimeWithUsersVo.java b/src/main/java/com/asap/server/service/vo/BestMeetingTimeWithUsersVo.java index de73a4d9..9b46afe2 100644 --- a/src/main/java/com/asap/server/service/vo/BestMeetingTimeWithUsersVo.java +++ b/src/main/java/com/asap/server/service/vo/BestMeetingTimeWithUsersVo.java @@ -1,6 +1,6 @@ package com.asap.server.service.vo; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.persistence.domain.enums.TimeSlot; import java.time.LocalDate; import java.util.List; diff --git a/src/main/java/com/asap/server/service/vo/PossibleTimeCaseVo.java b/src/main/java/com/asap/server/service/vo/PossibleTimeCaseVo.java index e8f2c0d2..2d92e5af 100644 --- a/src/main/java/com/asap/server/service/vo/PossibleTimeCaseVo.java +++ b/src/main/java/com/asap/server/service/vo/PossibleTimeCaseVo.java @@ -1,6 +1,6 @@ package com.asap.server.service.vo; -import com.asap.server.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.Duration; import lombok.AllArgsConstructor; import lombok.EqualsAndHashCode; import lombok.Getter; diff --git a/src/test/java/com/asap/server/common/utils/SecureUrlUtilTest.java b/src/test/java/com/asap/server/common/utils/SecureUrlUtilTest.java index e7e57bcf..28f4eb3f 100644 --- a/src/test/java/com/asap/server/common/utils/SecureUrlUtilTest.java +++ b/src/test/java/com/asap/server/common/utils/SecureUrlUtilTest.java @@ -1,5 +1,6 @@ package com.asap.server.common.utils; +import com.asap.server.presentation.common.secure.SecureUrlUtil; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; diff --git a/src/test/java/com/asap/server/concurrency/DuplicatedInterceptorTest.java b/src/test/java/com/asap/server/concurrency/DuplicatedInterceptorTest.java index 65522b4b..9575eef9 100644 --- a/src/test/java/com/asap/server/concurrency/DuplicatedInterceptorTest.java +++ b/src/test/java/com/asap/server/concurrency/DuplicatedInterceptorTest.java @@ -1,11 +1,9 @@ package com.asap.server.concurrency; -import com.asap.server.ServerApplication; -import com.asap.server.controller.dto.request.MeetingSaveRequestDto; -import com.asap.server.controller.dto.request.PreferTimeSaveRequestDto; -import com.asap.server.domain.enums.Duration; -import com.asap.server.domain.enums.PlaceType; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.presentation.controller.dto.request.MeetingSaveRequestDto; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.PlaceType; +import com.asap.server.persistence.domain.enums.TimeSlot; import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; @@ -14,7 +12,6 @@ import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.MvcResult; @@ -47,7 +44,6 @@ public void multipleRequestTest() throws Exception { MeetingSaveRequestDto bodyDto = new MeetingSaveRequestDto( "title", List.of("2024/07/09/MON", "2024/07/10/TUE"), - List.of(new PreferTimeSaveRequestDto(TimeSlot.SLOT_6_00, TimeSlot.SLOT_6_30)), PlaceType.OFFLINE, "회의 μž₯μ†Œ μ„€λͺ…", Duration.HOUR, diff --git a/src/test/java/com/asap/server/repository/MeetingRepositoryCustomTest.java b/src/test/java/com/asap/server/persistence/repository/MeetingRepositoryCustomTest.java similarity index 77% rename from src/test/java/com/asap/server/repository/MeetingRepositoryCustomTest.java rename to src/test/java/com/asap/server/persistence/repository/MeetingRepositoryCustomTest.java index d9e6161d..c2c81cec 100644 --- a/src/test/java/com/asap/server/repository/MeetingRepositoryCustomTest.java +++ b/src/test/java/com/asap/server/persistence/repository/MeetingRepositoryCustomTest.java @@ -1,13 +1,13 @@ -package com.asap.server.repository; +package com.asap.server.persistence.repository; -import com.asap.server.config.querydsl.QueryDslConfig; -import com.asap.server.domain.Meeting; -import com.asap.server.domain.Place; -import com.asap.server.domain.User; -import com.asap.server.domain.enums.Duration; -import com.asap.server.domain.enums.PlaceType; -import com.asap.server.domain.enums.Role; -import com.asap.server.repository.meeting.MeetingRepository; +import com.asap.server.persistence.config.querydsl.QueryDslConfig; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.Place; +import com.asap.server.persistence.domain.User; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.PlaceType; +import com.asap.server.persistence.domain.enums.Role; +import com.asap.server.persistence.repository.meeting.MeetingRepository; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; diff --git a/src/test/java/com/asap/server/repository/timeblock/TimeBlockRepositoryImplTest.java b/src/test/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryImplTest.java similarity index 83% rename from src/test/java/com/asap/server/repository/timeblock/TimeBlockRepositoryImplTest.java rename to src/test/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryImplTest.java index 718a0d2d..adaf127b 100644 --- a/src/test/java/com/asap/server/repository/timeblock/TimeBlockRepositoryImplTest.java +++ b/src/test/java/com/asap/server/persistence/repository/timeblock/TimeBlockRepositoryImplTest.java @@ -1,12 +1,18 @@ -package com.asap.server.repository.timeblock; +package com.asap.server.persistence.repository.timeblock; -import com.asap.server.config.querydsl.QueryDslConfig; -import com.asap.server.domain.*; -import com.asap.server.domain.enums.Duration; -import com.asap.server.domain.enums.PlaceType; -import com.asap.server.domain.enums.Role; -import com.asap.server.domain.enums.TimeSlot; -import com.asap.server.repository.timeblock.dto.TimeBlockDto; +import com.asap.server.persistence.config.querydsl.QueryDslConfig; +import com.asap.server.persistence.domain.AvailableDate; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.Place; +import com.asap.server.persistence.domain.TimeBlock; +import com.asap.server.persistence.domain.TimeBlockUser; +import com.asap.server.persistence.domain.User; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.PlaceType; +import com.asap.server.persistence.domain.enums.Role; +import com.asap.server.persistence.domain.enums.TimeSlot; +import com.asap.server.persistence.repository.timeblock.TimeBlockRepository; +import com.asap.server.persistence.repository.timeblock.dto.TimeBlockDto; import jakarta.persistence.EntityManager; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; diff --git a/src/test/java/com/asap/server/persistence/repository/user/UserRepositoryImplTest.java b/src/test/java/com/asap/server/persistence/repository/user/UserRepositoryImplTest.java new file mode 100644 index 00000000..500642a2 --- /dev/null +++ b/src/test/java/com/asap/server/persistence/repository/user/UserRepositoryImplTest.java @@ -0,0 +1,97 @@ +package com.asap.server.persistence.repository.user; + +import static org.assertj.core.api.AssertionsForClassTypes.assertThat; + +import com.asap.server.persistence.config.querydsl.QueryDslConfig; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.Place; +import com.asap.server.persistence.domain.User; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.PlaceType; +import com.asap.server.persistence.domain.enums.Role; +import jakarta.persistence.EntityManager; +import java.util.List; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.context.annotation.Import; + +@DataJpaTest +@Import(QueryDslConfig.class) +@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE) +class UserRepositoryImplTest { + @Autowired + private EntityManager em; + @Autowired + private UserRepository userRepository; + + @Test + @DisplayName("KWY, DSY, LJH, SES 쀑 KWY, DSY만 ν™•μ •λœ νšŒμ˜μ— μ°Έμ—¬ν•œλ‹€λ©΄, KWY, DSY의 is_fixed μΉΌλŸΌμ„ 1둜 μˆ˜μ •ν•œλ‹€.") + void updateUserIsFixedByMeetingTest() { + // given + Place place = Place.builder() + .placeType(PlaceType.OFFLINE) + .build(); + Meeting meeting = Meeting.builder() + .title("회의 ν…ŒμŠ€νŠΈ") + .password("0000") + .additionalInfo("") + .duration(Duration.HALF) + .place(place) + .build(); + em.persist(meeting); + + User user = User.builder() + .meeting(meeting) + .name("KWY") + .isFixed(false) + .role(Role.HOST) + .build(); + User user2 = User.builder() + .meeting(meeting) + .name("DSY") + .isFixed(false) + .role(Role.MEMBER) + .build(); + User user3 = User.builder() + .meeting(meeting) + .name("LJH") + .isFixed(false) + .role(Role.MEMBER) + .build(); + User user4 = User.builder() + .meeting(meeting) + .name("SES") + .isFixed(false) + .role(Role.MEMBER) + .build(); + em.persist(user); + em.persist(user2); + em.persist(user3); + em.persist(user4); + em.flush(); + em.clear(); + + // when + userRepository.updateUserIsFixedByMeeting( + meeting, + List.of( + user.getId(), + user2.getId() + ) + ); + + // then + User result = em.find(User.class, user.getId()); + User result2 = em.find(User.class, user2.getId()); + User result3 = em.find(User.class, user3.getId()); + User result4 = em.find(User.class, user4.getId()); + + assertThat(result.getIsFixed()).isTrue(); + assertThat(result2.getIsFixed()).isTrue(); + assertThat(result3.getIsFixed()).isFalse(); + assertThat(result4.getIsFixed()).isFalse(); + } +} \ No newline at end of file diff --git a/src/test/java/com/asap/server/controller/MeetingControllerTest.java b/src/test/java/com/asap/server/presentation/controller/MeetingControllerTest.java similarity index 94% rename from src/test/java/com/asap/server/controller/MeetingControllerTest.java rename to src/test/java/com/asap/server/presentation/controller/MeetingControllerTest.java index 27db86c1..d9e54c2b 100644 --- a/src/test/java/com/asap/server/controller/MeetingControllerTest.java +++ b/src/test/java/com/asap/server/presentation/controller/MeetingControllerTest.java @@ -1,5 +1,6 @@ -package com.asap.server.controller; +package com.asap.server.presentation.controller; +import com.asap.server.presentation.controller.MeetingController; import com.asap.server.service.MeetingService; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; diff --git a/src/test/java/com/asap/server/service/meeting/ConfirmMeetingMethodTest.java b/src/test/java/com/asap/server/service/meeting/ConfirmMeetingMethodTest.java index bb101d73..f7373b00 100644 --- a/src/test/java/com/asap/server/service/meeting/ConfirmMeetingMethodTest.java +++ b/src/test/java/com/asap/server/service/meeting/ConfirmMeetingMethodTest.java @@ -1,14 +1,14 @@ package com.asap.server.service.meeting; -import com.asap.server.controller.dto.request.MeetingConfirmRequestDto; -import com.asap.server.controller.dto.request.UserRequestDto; -import com.asap.server.domain.Meeting; -import com.asap.server.domain.Place; -import com.asap.server.domain.User; -import com.asap.server.domain.enums.Duration; -import com.asap.server.domain.enums.PlaceType; -import com.asap.server.domain.enums.Role; -import com.asap.server.domain.enums.TimeSlot; +import com.asap.server.presentation.controller.dto.request.MeetingConfirmRequestDto; +import com.asap.server.presentation.controller.dto.request.UserRequestDto; +import com.asap.server.persistence.domain.Meeting; +import com.asap.server.persistence.domain.Place; +import com.asap.server.persistence.domain.User; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.PlaceType; +import com.asap.server.persistence.domain.enums.Role; +import com.asap.server.persistence.domain.enums.TimeSlot; import com.asap.server.service.MeetingService; import jakarta.persistence.EntityManager; import jakarta.transaction.Transactional; diff --git a/src/test/java/com/asap/server/service/meeting/FindBestMeetingTimeCasesStrategyTest.java b/src/test/java/com/asap/server/service/meeting/FindBestMeetingTimeCasesStrategyTest.java index 08791b48..416ff861 100644 --- a/src/test/java/com/asap/server/service/meeting/FindBestMeetingTimeCasesStrategyTest.java +++ b/src/test/java/com/asap/server/service/meeting/FindBestMeetingTimeCasesStrategyTest.java @@ -1,12 +1,12 @@ package com.asap.server.service.meeting; -import static com.asap.server.domain.enums.Duration.HALF; -import static com.asap.server.domain.enums.Duration.HOUR; -import static com.asap.server.domain.enums.Duration.HOUR_HALF; -import static com.asap.server.domain.enums.Duration.TWO_HOUR; +import static com.asap.server.persistence.domain.enums.Duration.HALF; +import static com.asap.server.persistence.domain.enums.Duration.HOUR; +import static com.asap.server.persistence.domain.enums.Duration.HOUR_HALF; +import static com.asap.server.persistence.domain.enums.Duration.TWO_HOUR; import static org.assertj.core.api.AssertionsForClassTypes.assertThat; -import com.asap.server.domain.enums.Duration; +import com.asap.server.persistence.domain.enums.Duration; import com.asap.server.service.vo.PossibleTimeCaseVo; import java.util.List; import org.junit.jupiter.api.BeforeEach; diff --git a/src/test/java/com/asap/server/service/meeting/FindBestMeetingTimeStrategyTest.java b/src/test/java/com/asap/server/service/meeting/FindBestMeetingTimeStrategyTest.java index e5475895..7531dbfb 100644 --- a/src/test/java/com/asap/server/service/meeting/FindBestMeetingTimeStrategyTest.java +++ b/src/test/java/com/asap/server/service/meeting/FindBestMeetingTimeStrategyTest.java @@ -1,8 +1,7 @@ package com.asap.server.service.meeting; -import com.asap.server.repository.timeblock.dto.TimeBlockDto; -import com.asap.server.service.meeting.FindBestMeetingTimeStrategy; -import com.asap.server.domain.enums.Duration; +import com.asap.server.persistence.repository.timeblock.dto.TimeBlockDto; +import com.asap.server.persistence.domain.enums.Duration; import com.asap.server.service.vo.*; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; @@ -13,18 +12,18 @@ import java.util.Arrays; import java.util.List; -import static com.asap.server.domain.enums.TimeSlot.SLOT_11_00; -import static com.asap.server.domain.enums.TimeSlot.SLOT_11_30; -import static com.asap.server.domain.enums.TimeSlot.SLOT_12_00; -import static com.asap.server.domain.enums.TimeSlot.SLOT_12_30; -import static com.asap.server.domain.enums.TimeSlot.SLOT_13_00; -import static com.asap.server.domain.enums.TimeSlot.SLOT_13_30; -import static com.asap.server.domain.enums.TimeSlot.SLOT_14_00; -import static com.asap.server.domain.enums.TimeSlot.SLOT_14_30; -import static com.asap.server.domain.enums.TimeSlot.SLOT_20_00; -import static com.asap.server.domain.enums.TimeSlot.SLOT_20_30; -import static com.asap.server.domain.enums.TimeSlot.SLOT_21_00; -import static com.asap.server.domain.enums.TimeSlot.SLOT_21_30; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_11_00; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_11_30; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_12_00; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_12_30; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_13_00; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_13_30; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_14_00; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_14_30; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_20_00; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_20_30; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_21_00; +import static com.asap.server.persistence.domain.enums.TimeSlot.SLOT_21_30; import static org.assertj.core.api.AssertionsForClassTypes.assertThat; class FindBestMeetingTimeStrategyTest { diff --git a/src/test/java/com/asap/server/service/meeting/MeetingTimeRecommendServiceTest.java b/src/test/java/com/asap/server/service/meeting/MeetingTimeRecommendServiceTest.java index 2b53f818..ca65e1ea 100644 --- a/src/test/java/com/asap/server/service/meeting/MeetingTimeRecommendServiceTest.java +++ b/src/test/java/com/asap/server/service/meeting/MeetingTimeRecommendServiceTest.java @@ -1,7 +1,7 @@ package com.asap.server.service.meeting; -import com.asap.server.domain.enums.Duration; -import com.asap.server.repository.timeblock.dto.TimeBlockDto; +import com.asap.server.persistence.domain.enums.Duration; +import com.asap.server.persistence.repository.timeblock.dto.TimeBlockDto; import com.asap.server.service.vo.BestMeetingTimeVo; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; @@ -12,7 +12,7 @@ import java.util.Arrays; import java.util.List; -import static com.asap.server.domain.enums.TimeSlot.*; +import static com.asap.server.persistence.domain.enums.TimeSlot.*; import static org.assertj.core.api.AssertionsForClassTypes.assertThat; class MeetingTimeRecommendServiceTest {