Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package konkuk.thip.attendanceCheck.adapter.in.web;

import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequiredArgsConstructor
public class AttendanceCheckCommandController {

}
Comment on lines +6 to +10
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

빈 컨트롤러 클래스 구현 완성 필요

현재 AttendanceCheckCommandController는 빈 상태입니다. 기본적인 엔드포인트 구조를 추가하거나, 향후 구현 예정이라면 TODO 주석을 추가하는 것을 권장합니다.

🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/attendanceCheck/adapter/in/web/AttendanceCheckCommandController.java
around lines 6 to 10, the AttendanceCheckCommandController class is currently
empty. To address this, either implement a basic endpoint structure appropriate
for the controller's purpose or, if the implementation is planned for later, add
a clear TODO comment indicating that the controller will be implemented in the
future.

Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package konkuk.thip.attendanceCheck.adapter.in.web;

import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequiredArgsConstructor
public class AttendanceCheckQuerydController {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

클래스명 오타 수정 필요

클래스명에 오타가 있습니다. AttendanceCheckQuerydController에서 AttendanceCheckQueryController로 수정해야 합니다.

-public class AttendanceCheckQuerydController {
+public class AttendanceCheckQueryController {
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
public class AttendanceCheckQuerydController {
public class AttendanceCheckQueryController {
🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/attendanceCheck/adapter/in/web/AttendanceCheckQuerydController.java
at line 8, the class name contains a typo. Rename the class from
AttendanceCheckQuerydController to AttendanceCheckQueryController to correct the
spelling.


}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package konkuk.thip.attendanceCheck.adapter.in.web.request;

import lombok.Getter;

@Getter
public class UserSignupRequest {
}
Comment on lines +5 to +7
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

빈 DTO는 의미가 없습니다
UserSignupRequest가 필드 없이 선언되어 있어 실제 요청 데이터 바인딩이 불가능합니다. 최소한 회원 가입에 필요한 속성(예: email, password, nickname 등)을 정의하고, 역직렬화를 위해 @NoArgsConstructor(access = AccessLevel.PROTECTED) 정도를 추가하는 것이 좋습니다. 사용 계획이 없다면 클래스를 제거해 불필요한 노이즈를 줄여주세요.

 @Getter
-public class UserSignupRequest {
-}
+@NoArgsConstructor(access = AccessLevel.PROTECTED)
+@AllArgsConstructor
+@Builder
+public class UserSignupRequest {
+    @NotBlank
+    private String email;
+
+    @NotBlank
+    private String password;
+
+    @NotBlank
+    private String nickname;
+}
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
@Getter
public class UserSignupRequest {
}
@Getter
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@AllArgsConstructor
@Builder
public class UserSignupRequest {
@NotBlank
private String email;
@NotBlank
private String password;
@NotBlank
private String nickname;
}
🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/attendanceCheck/adapter/in/web/request/UserSignupRequest.java
around lines 5 to 7, the UserSignupRequest class is empty and cannot bind any
request data. Add necessary fields like email, password, and nickname to
represent the signup data, and include a protected no-args constructor annotated
with @NoArgsConstructor(access = AccessLevel.PROTECTED) to support
deserialization. If this DTO is not intended for use, remove the class entirely
to avoid unnecessary code.

Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package konkuk.thip.attendanceCheck.adapter.in.web.response;

import lombok.Getter;

@Getter
public class DummyResponse {
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
package konkuk.thip.user.adapter.out.jpa;
package konkuk.thip.attendanceCheck.adapter.out.jpa;

import jakarta.persistence.*;
import konkuk.thip.common.entity.BaseJpaEntity;
import konkuk.thip.room.adapter.out.jpa.RoomJpaEntity;
import konkuk.thip.user.adapter.out.jpa.UserJpaEntity;
import lombok.*;

@Entity
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package konkuk.thip.user.adapter.out.mapper;
package konkuk.thip.attendanceCheck.adapter.out.mapper;

import konkuk.thip.attendanceCheck.adapter.out.jpa.AttendanceCheckJpaEntity;
import konkuk.thip.attendanceCheck.domain.AttendanceCheck;
import konkuk.thip.room.adapter.out.jpa.RoomJpaEntity;
import konkuk.thip.user.adapter.out.jpa.AttendanceCheckJpaEntity;
import konkuk.thip.user.adapter.out.jpa.UserJpaEntity;
import konkuk.thip.user.domain.AttendanceCheck;
import org.springframework.stereotype.Component;

@Component
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package konkuk.thip.attendanceCheck.adapter.out.persistence;

import konkuk.thip.attendanceCheck.adapter.out.mapper.AttendanceCheckMapper;
import konkuk.thip.attendanceCheck.application.port.out.AttendanceCheckCommandPort;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Repository;
Comment on lines +3 to +6
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

필수: 누락된 import 문을 추가해야 합니다.

AttendanceCheckRepository가 12번째 줄에서 필드로 사용되고 있지만 import 문이 누락되어 컴파일 오류가 발생합니다.

다음 import 문을 추가해주세요:

 import konkuk.thip.attendanceCheck.adapter.out.mapper.AttendanceCheckMapper;
 import konkuk.thip.attendanceCheck.application.port.out.AttendanceCheckCommandPort;
+import konkuk.thip.attendanceCheck.adapter.out.persistence.AttendanceCheckRepository;
 import lombok.RequiredArgsConstructor;
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
import konkuk.thip.attendanceCheck.adapter.out.mapper.AttendanceCheckMapper;
import konkuk.thip.attendanceCheck.application.port.out.AttendanceCheckCommandPort;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Repository;
import konkuk.thip.attendanceCheck.adapter.out.mapper.AttendanceCheckMapper;
import konkuk.thip.attendanceCheck.application.port.out.AttendanceCheckCommandPort;
import konkuk.thip.attendanceCheck.adapter.out.persistence.AttendanceCheckRepository;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Repository;
🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/attendanceCheck/adapter/out/persistence/AttendanceCheckCommandPersistenceAdapter.java
around lines 3 to 6, the import statement for AttendanceCheckRepository is
missing, causing a compilation error. Add the appropriate import statement for
AttendanceCheckRepository to resolve the issue.


@Repository
@RequiredArgsConstructor
public class AttendanceCheckCommandPersistenceAdapter implements AttendanceCheckCommandPort {

private final AttendanceCheckRepository attendanceCheckRepository;
private final AttendanceCheckMapper attendanceCheckMapper;

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package konkuk.thip.attendanceCheck.adapter.out.persistence;

import konkuk.thip.attendanceCheck.adapter.out.mapper.AttendanceCheckMapper;
import konkuk.thip.attendanceCheck.application.port.out.AttendnaceCheckQueryPort;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Repository;

@Repository
@RequiredArgsConstructor
public class AttendanceCheckQueryPersistenceAdapter implements AttendnaceCheckQueryPort {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

인터페이스명 오타 수정 필요

구현하고 있는 인터페이스명에 오타가 있습니다. AttendnaceCheckQueryPort에서 AttendanceCheckQueryPort로 수정해야 합니다.

-public class AttendanceCheckQueryPersistenceAdapter implements AttendnaceCheckQueryPort {
+public class AttendanceCheckQueryPersistenceAdapter implements AttendanceCheckQueryPort {
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
public class AttendanceCheckQueryPersistenceAdapter implements AttendnaceCheckQueryPort {
-public class AttendanceCheckQueryPersistenceAdapter implements AttendnaceCheckQueryPort {
+public class AttendanceCheckQueryPersistenceAdapter implements AttendanceCheckQueryPort {
🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/attendanceCheck/adapter/out/persistence/AttendanceCheckQueryPersistenceAdapter.java
at line 10, there is a typo in the implemented interface name. Change the
interface name from AttendnaceCheckQueryPort to AttendanceCheckQueryPort to
correctly match the intended interface.


private final AttendanceCheckRepository jpaRepository;
private final AttendanceCheckMapper attendanceCheckMapper;

}
Comment on lines +8 to +15
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

빈 어댑터 구현 완성 필요

현재 퍼시스턴스 어댑터가 빈 상태입니다. 인터페이스의 메소드들을 구현하거나, 향후 구현 예정이라면 TODO 주석을 추가하는 것을 권장합니다.

🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/attendanceCheck/adapter/out/persistence/AttendanceCheckQueryPersistenceAdapter.java
around lines 8 to 15, the persistence adapter class is currently empty and does
not implement any methods from the AttendnaceCheckQueryPort interface. To fix
this, implement the required interface methods with appropriate logic using the
jpaRepository and attendanceCheckMapper, or if the implementation is pending,
add TODO comments indicating the planned work to clarify the class's incomplete
status.

Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package konkuk.thip.attendanceCheck.adapter.out.persistence;

import konkuk.thip.attendanceCheck.adapter.out.jpa.AttendanceCheckJpaEntity;
import org.springframework.data.jpa.repository.JpaRepository;

public interface AttendanceCheckRepository extends JpaRepository<AttendanceCheckJpaEntity, Long> {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package konkuk.thip.attendanceCheck.application.port.in;

public interface DummyUseCase {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package konkuk.thip.attendanceCheck.application.port.in.dto;

import lombok.Builder;
import lombok.Getter;

@Builder
@Getter
public class DummyCommand {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package konkuk.thip.attendanceCheck.application.port.in.dto;

import lombok.Builder;
import lombok.Getter;

@Builder
@Getter
public class DummyQuery {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package konkuk.thip.attendanceCheck.application.port.in.dto;

import lombok.Builder;
import lombok.Getter;

@Getter
@Builder
public class DummyResult {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package konkuk.thip.attendanceCheck.application.port.out;


public interface AttendanceCheckCommandPort {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package konkuk.thip.attendanceCheck.application.port.out;

public interface AttendnaceCheckQueryPort {
Comment on lines +1 to +3
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

타이핑 오류: AttendnaceAttendance

파일명·패키지 경로·인터페이스 명칭 모두 오탈자입니다. 오탈자는 컴파일 오류 및 IDE 검색 실패를 야기하므로 즉시 수정이 필요합니다.

-package konkuk.thip.attendanceCheck.application.port.out;
-
-public interface AttendnaceCheckQueryPort {
+package konkuk.thip.attendanceCheck.application.port.out;
+
+public interface AttendanceCheckQueryPort {
 }

또한 구현체(AttendanceCheckQueryPersistenceAdapter) 및 의존 주입부에 동일하게 반영해 주세요.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
package konkuk.thip.attendanceCheck.application.port.out;
public interface AttendnaceCheckQueryPort {
package konkuk.thip.attendanceCheck.application.port.out;
public interface AttendanceCheckQueryPort {
}
🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/attendanceCheck/application/port/out/AttendnaceCheckQueryPort.java
at lines 1 to 3, there is a typo in the interface name
"AttendnaceCheckQueryPort" which should be corrected to
"AttendanceCheckQueryPort". Rename the interface, update the filename and
package declarations accordingly, and ensure all implementations and dependency
injection points, including AttendanceCheckQueryPersistenceAdapter, reflect this
corrected spelling to avoid compilation errors and improve IDE navigation.


}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package konkuk.thip.attendanceCheck.application.service;

import konkuk.thip.attendanceCheck.application.port.in.DummyUseCase;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

@Service
@RequiredArgsConstructor
public class AttendanceCheckService implements DummyUseCase {

}
Comment on lines +7 to +11
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

빈 서비스 클래스 구현 완성 필요

현재 AttendanceCheckServiceDummyUseCase를 구현하고 있지만 실제 메소드가 구현되어 있지 않습니다. 인터페이스의 추상 메소드들을 구현하거나, 향후 구현 예정이라면 TODO 주석을 추가하는 것을 권장합니다.

🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/attendanceCheck/application/service/AttendanceCheckService.java
between lines 7 and 11, the AttendanceCheckService class implements DummyUseCase
but does not provide implementations for its abstract methods. To fix this,
implement all required methods from DummyUseCase in this class or, if the
implementation is pending, add TODO comments inside the class to indicate that
method implementations will be added later.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package konkuk.thip.user.domain;
package konkuk.thip.attendanceCheck.domain;

import konkuk.thip.common.entity.BaseDomainEntity;
import lombok.Getter;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package konkuk.thip.comment.adapter.out.jpa;

import jakarta.persistence.*;
import konkuk.thip.room.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.user.adapter.out.jpa.UserJpaEntity;
import konkuk.thip.common.entity.BaseJpaEntity;
import konkuk.thip.post.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.user.adapter.out.jpa.UserJpaEntity;
import lombok.*;

@Entity
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import konkuk.thip.comment.adapter.out.jpa.CommentJpaEntity;
import konkuk.thip.comment.domain.Comment;
import konkuk.thip.room.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.post.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.user.adapter.out.jpa.UserJpaEntity;
import org.springframework.stereotype.Component;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,12 @@

import jakarta.persistence.*;
import konkuk.thip.book.adapter.out.jpa.BookJpaEntity;
import konkuk.thip.room.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.post.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.user.adapter.out.jpa.UserJpaEntity;
import lombok.*;
import lombok.AccessLevel;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;

@Entity
@Table(name = "feeds")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package konkuk.thip.feed.adapter.out.jpa;

import jakarta.persistence.*;
import konkuk.thip.book.adapter.out.jpa.CategoryJpaEntity;
import konkuk.thip.room.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.common.entity.BaseJpaEntity;
import konkuk.thip.post.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.room.adapter.out.jpa.CategoryJpaEntity;
import lombok.*;

@Entity
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package konkuk.thip.feed.adapter.out.mapper;

import konkuk.thip.book.adapter.out.jpa.CategoryJpaEntity;
import konkuk.thip.feed.adapter.out.jpa.TagJpaEntity;
import konkuk.thip.feed.domain.Tag;
import konkuk.thip.room.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.post.adapter.out.jpa.PostJpaEntity;
import konkuk.thip.room.adapter.out.jpa.CategoryJpaEntity;
import org.springframework.stereotype.Component;

@Component
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package konkuk.thip.notification.adapter.in.web;

import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequiredArgsConstructor
public class NotificationCommandController {

}
Comment on lines +6 to +10
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Command용 엔드포인트 정의 필요

Query 컨트롤러와 동일하게, 실제 커맨드(등록·수정·삭제 등)를 처리할 메서드가 없습니다.
기본적인 POST/PUT/DELETE 매핑과 요청 DTO(예: UserSignupRequest)를 연결해 주셔야 전체 흐름이 완성됩니다.

🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/notification/adapter/in/web/NotificationCommandController.java
around lines 6 to 10, the controller class lacks methods to handle command
operations like create, update, and delete. Add methods with appropriate POST,
PUT, and DELETE mappings and connect them to request DTOs (e.g.,
UserSignupRequest) to implement the command endpoints and complete the flow.

Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package konkuk.thip.notification.adapter.in.web;

import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequiredArgsConstructor
public class NotificationQueryController {

}
Comment on lines +6 to +10
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

매핑 정보가 없는 Controller

@RestController 선언만 있고 @RequestMapping(혹은 @GetMapping, @PostMapping 등) 메서드가 전혀 없어 스프링 MVC에서 호출될 엔드포인트가 생성되지 않습니다.
초기 스켈레톤이라면 최소한 클래스 레벨의 @RequestMapping("/notifications") 정도는 지정해 두는 것이 좋습니다. 그렇지 않으면 이후 팀원이 URL 구조를 파악하기 어렵습니다.

🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/notification/adapter/in/web/NotificationQueryController.java
around lines 6 to 10, the controller class lacks any request mapping
annotations, so no endpoints are exposed in Spring MVC. Add a class-level
@RequestMapping annotation with a base path like "/notifications" to define the
URL structure and make the controller discoverable for HTTP requests.

Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package konkuk.thip.notification.adapter.in.web.request;

import lombok.Getter;

@Getter
public class UserSignupRequest {
}
Comment on lines +5 to +7
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

❓ Verification inconclusive

빈 DTO 클래스로는 실질적 요청 데이터 전달이 어려움

@Getter만 붙어 있고 필드가 하나도 정의되지 않아 실제로는 아무 데이터도 전달되지 않습니다.
실제 회원가입 요청에 필요한 필드(예: email, password, nickname 등)를 정의하거나, 아직 미정이라면 최소한 // TODO 주석으로 명시하여 추후 추가 계획을 나타내 주세요. 그렇지 않으면 불필요한 클래스가 되어 유지보수 부담만 늘어납니다.


빈 DTO 클래스로는 실질적 요청 데이터 전달이 어려움

@Getter만 붙어 있고 필드가 하나도 정의되지 않아 실제로는 아무 데이터도 전달되지 않습니다.
실제 회원가입 요청에 필요한 필드(예: email, password, nickname 등)를 정의하거나, 아직 미정이라면 최소한 // TODO 주석으로 명시하여 추후 추가 계획을 나타내 주세요. 그렇지 않으면 불필요한 클래스가 되어 유지보수 부담만 늘어납니다.

🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/notification/adapter/in/web/request/UserSignupRequest.java
around lines 5 to 7, the class is an empty DTO with only @Getter and no fields,
so it cannot carry any signup data. Add the necessary fields such as email,
password, and nickname to represent the signup request data, or if the fields
are not decided yet, add a clear TODO comment indicating that fields will be
added later to avoid having an empty, unused class.

Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package konkuk.thip.notification.adapter.in.web.response;

import lombok.Getter;

@Getter
public class DummyResponse {
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
package konkuk.thip.user.adapter.out.jpa;
package konkuk.thip.notification.adapter.out.jpa;

import jakarta.persistence.*;
import konkuk.thip.common.entity.BaseJpaEntity;
import konkuk.thip.user.adapter.out.jpa.UserJpaEntity;
import lombok.*;

@Entity
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package konkuk.thip.user.adapter.out.mapper;
package konkuk.thip.notification.adapter.out.mapper;

import konkuk.thip.user.adapter.out.jpa.NotificationJpaEntity;
import konkuk.thip.notification.adapter.out.jpa.NotificationJpaEntity;
import konkuk.thip.notification.domain.Notification;
import konkuk.thip.user.adapter.out.jpa.UserJpaEntity;
import konkuk.thip.user.domain.Notification;
import org.springframework.stereotype.Component;

@Component
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package konkuk.thip.notification.adapter.out.persistence;

import konkuk.thip.notification.adapter.out.mapper.NotificationMapper;
import konkuk.thip.notification.application.port.out.NotificationCommandPort;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Repository;

@Repository
@RequiredArgsConstructor
public class NotificationCommandPersistenceAdapter implements NotificationCommandPort {

private final NotificationJpaRepository notificationJpaRepository;
private final NotificationMapper notificationMapper;

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package konkuk.thip.notification.adapter.out.persistence;

import konkuk.thip.notification.adapter.out.jpa.NotificationJpaEntity;
import org.springframework.data.jpa.repository.JpaRepository;

public interface NotificationJpaRepository extends JpaRepository<NotificationJpaEntity, Long> {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package konkuk.thip.notification.adapter.out.persistence;

import konkuk.thip.notification.adapter.out.mapper.NotificationMapper;
import konkuk.thip.notification.application.port.out.NotificationQueryPort;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Repository;

@Repository
@RequiredArgsConstructor
public class NotificationQueryPersistenceAdapter implements NotificationQueryPort {

private final NotificationJpaRepository jpaRepository;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

필드명 일관성 문제

NotificationCommandPersistenceAdapter에서는 notificationJpaRepository로 명명되어 있는데, 여기서는 jpaRepository로 명명되어 있습니다. 코드 일관성을 위해 통일해주세요.

다음과 같이 수정하는 것을 권장합니다:

-    private final NotificationJpaRepository jpaRepository;
+    private final NotificationJpaRepository notificationJpaRepository;
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
private final NotificationJpaRepository jpaRepository;
private final NotificationJpaRepository notificationJpaRepository;
🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/notification/adapter/out/persistence/NotificationQueryPersistenceAdapter.java
at line 12, the field name jpaRepository is inconsistent with
NotificationCommandPersistenceAdapter which uses notificationJpaRepository.
Rename the field jpaRepository to notificationJpaRepository to maintain naming
consistency across the codebase.

private final NotificationMapper notificationMapper;

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package konkuk.thip.notification.application.port.in;

public interface DummyUseCase {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package konkuk.thip.notification.application.port.in.dto;

import lombok.Builder;
import lombok.Getter;

@Builder
@Getter
public class DummyCommand {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package konkuk.thip.notification.application.port.in.dto;

import lombok.Builder;
import lombok.Getter;

@Builder
@Getter
public class DummyQuery {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package konkuk.thip.notification.application.port.in.dto;

import lombok.Builder;
import lombok.Getter;

@Getter
@Builder
public class DummyResult {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package konkuk.thip.notification.application.port.out;


public interface NotificationCommandPort {

}
Comment on lines +4 to +6
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Port 인터페이스에 계약(메서드)을 정의하세요

NotificationCommandPort도 메서드가 전혀 없습니다. “Command” 용도를 명시하기 위해서라도 최소한 저장·수정·삭제 등에 대한 시그니처를 선언해 두어야 어댑터 구현체(NotificationCommandPersistenceAdapter)가 준수해야 할 계약이 분명해집니다.

🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/notification/application/port/out/NotificationCommandPort.java
around lines 4 to 6, the interface is empty without any method signatures.
Define method signatures for basic command operations such as save, update, and
delete notifications to clearly specify the contract that the adapter
implementation NotificationCommandPersistenceAdapter must follow.

Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package konkuk.thip.notification.application.port.out;

public interface NotificationQueryPort {

}
Comment on lines +3 to +5
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

❓ Verification inconclusive

빈 인터페이스만 존재 – 계약(Contract) 정의가 필요합니다

아직 쿼리용 메서드 시그니처가 전혀 없어서, 실제 어댑터·서비스 계층과의 계약이 명확하지 않습니다. 최소한 예상되는 조회 기능(예: List<Notification> findByUserId(Long userId);)에 대한 시그너처를 작성하거나, 향후 추가 계획임을 명시하는 주석(TODO)을 남겨 주세요.


빈 인터페이스만 존재 – 계약(Contract) 정의가 필요합니다

아직 쿼리용 메서드 시그니처가 전혀 없어서, 실제 어댑터·서비스 계층과의 계약이 명확하지 않습니다. 최소한 예상되는 조회 기능(예: List<Notification> findByUserId(Long userId);)에 대한 시그너처를 작성하거나, 향후 추가 계획임을 명시하는 주석(TODO)을 남겨 주세요.

🤖 Prompt for AI Agents
In
src/main/java/konkuk/thip/notification/application/port/out/NotificationQueryPort.java
at lines 3 to 5, the interface is currently empty without any method signatures,
making the contract unclear. Add at least one method signature representing
expected query functionality, such as a method to find notifications by user ID,
or include a TODO comment indicating planned methods to clarify the intended
contract for adapters and service layers.

Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package konkuk.thip.notification.application.service;

import konkuk.thip.notification.application.port.in.DummyUseCase;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

@Service
@RequiredArgsConstructor
public class NotificationService implements DummyUseCase {

}
Loading