Skip to content

Conversation

@infiniment
Copy link
Collaborator

@infiniment infiniment commented Jan 16, 2026

Feat/team/team-init 팀 프로세스, 워크스페이스 관련 엔티티 설계 및 DTO 정의

🎯 작업 내용

  • Process 및 Workspace 관련 Entity를 설계했습니다.
  • ProcessController 및 관련 Repository를 생성했습니다.
  • 프로세스 생성 요청/응답의 DTO를 정의했습니다.

주요 변경사항

  • 프로세스 엔티티 추가/정리했습니다.
  • ProcessController 생성 및 POST /projects/{projectId}/processes 엔드포인트 추가했습니다.
  • ProcessCreateReqDTO, ProcessCreateResDTO 등 DTO 정의했습니다.
  • Process 관련 Repository 추가했습니다.

상세 내용

  • 멀티 모듈 구조에서 nect-api는 요청/응답 및 서비스 레이어를 nect-core는 엔티티/리포지토리를 담당하도록 구성했습니다.

✅ 체크리스트

  • 코드 빌드가 정상적으로 완료되었나요?
  • 테스트(API 명세)를 추가/수정했나요?
  • 코드 리뷰 요청 전 self-review를 진행했나요?

💬 리뷰 요청사항

  • 멀티 모듈 구조가 처음이라 api/core 역할 분리 및 패키지 위치가 적절한지 피드백 부탁드립니다.

import java.time.LocalDate;
import java.util.List;

public record ProcessCreateReqDTO(
Copy link
Collaborator

Choose a reason for hiding this comment

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

기존 DTO들이 Dto처럼 소문자 형태를 띄고 있어서 이 부분 통일되면 좋을 듯 합니다

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

네 통일 시켜놓겠습니다

@@ -0,0 +1,5 @@
package com.nect.core.entity.team;

public class ProjectUser {
Copy link
Collaborator

Choose a reason for hiding this comment

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

엔티티인듯 한데, 최소한의 어노테이션이나 필드는 달아주세요

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

넵 지금 수정하겠습니다!

private String fileName;

@Column(name = "file_ext", length = 10, nullable = false)
private String fileExt; // jpg, png, pdf, zip
Copy link
Collaborator

Choose a reason for hiding this comment

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

확장자는 enum으로 두고 관리하는건 어떨까요

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

네 그게 좋을 것 같네요. 이것도 수정해 놓겠습니다

// @JoinColumn(name = "created_by", nullable = false)
// private User createdBy;

@Lob
Copy link
Collaborator

Choose a reason for hiding this comment

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

TEXT로 안 두고 Lob으로 둔 이유가 있을까요

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

columnDefinition="TEXT"으로 수정했어야 됐는데 수정을 못했습니다 수정해놓겠습니다

this.status = ProcessFeedbackStatus.OPEN;
}

void setProcess(Process process) {
Copy link
Collaborator

Choose a reason for hiding this comment

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

여기는 기본 접근제어자로 두는건가요?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

넵 기본 접근제어자로 두고 addTaskItem 메소드 같은 편의 메서드 내에서만 호출되도록 제한했습니다!

Copy link
Collaborator

@ggamnunq ggamnunq left a comment

Choose a reason for hiding this comment

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

👍

@infiniment infiniment merged commit dd7c8eb into develop Jan 22, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants