improvement: 서비스명 중복 확인 API 및 ID 정책 보강 (#210) #211

Merged
seonkyu.kim merged 1 commits from improvement/#210-service-name-check into develop 2026-02-25 03:17:42 +00:00
Owner

📋 작업 요약

  • 서비스명 중복 확인 전용 API (POST /v1/in/service/name/check) 추가
  • 서비스 도메인 전용 에러코드 ServiceNameDuplicate(134) 추가
  • CreateAsync/UpdateAsync 서비스명 중복 에러코드를 범용 Conflict에서 전용 코드로 변경
  • CreateServiceRequestDto 서비스명 최소길이 검증(2자) 추가

Closes #210

🛠️ 작업 내용 (Changes)

  • SPMS.Domain/Common/ErrorCodes.csServiceNameDuplicate = "134" 추가
  • SPMS.Application/DTOs/Service/ServiceNameCheckRequestDto.cs — 신규 요청 DTO
  • SPMS.Application/DTOs/Service/ServiceNameCheckResponseDto.cs — 신규 응답 DTO
  • SPMS.Application/Interfaces/IServiceManagementService.csCheckServiceNameAsync 메서드 추가
  • SPMS.Application/Services/ServiceManagementService.cs — 구현 + CreateAsync/UpdateAsync 에러코드 변경
  • SPMS.API/Controllers/ServiceController.csPOST name/check 엔드포인트 추가
  • SPMS.Application/DTOs/Service/CreateServiceRequestDto.cs — MinimumLength=2 추가

📢 리뷰어 참고 사항 (To Reviewers)

  • ServiceCode는 기존대로 서버 자동생성(8자 alphanumeric) 유지, immutable 정책 이미 보장됨
  • CheckEmailAsync(AuthService)와 동일한 check 패턴 적용
  • DB 스키마 변경 없음

체크리스트 (Self Checklist)

  • 빌드(Build)가 성공적으로 수행되었는가?
  • 모든 단위 테스트(Unit Test)를 통과하였는가?
  • 불필요한 로그나 주석을 제거하였는가?
  • 컨벤션(Clean Architecture, Naming)을 준수하였는가?
  • 기밀 정보(비밀번호, 키 등)가 하드코딩 되어있지 않은가?

📸 스크린샷 / 테스트 로그 (Screenshots/Logs)

dotnet build → 경고 0개, 오류 0개
## 📋 작업 요약 - 서비스명 중복 확인 전용 API (`POST /v1/in/service/name/check`) 추가 - 서비스 도메인 전용 에러코드 `ServiceNameDuplicate(134)` 추가 - CreateAsync/UpdateAsync 서비스명 중복 에러코드를 범용 Conflict에서 전용 코드로 변경 - CreateServiceRequestDto 서비스명 최소길이 검증(2자) 추가 ## 🔗 관련 이슈 (Related Issues) Closes #210 ## 🛠️ 작업 내용 (Changes) - [x] `SPMS.Domain/Common/ErrorCodes.cs` — `ServiceNameDuplicate = "134"` 추가 - [x] `SPMS.Application/DTOs/Service/ServiceNameCheckRequestDto.cs` — 신규 요청 DTO - [x] `SPMS.Application/DTOs/Service/ServiceNameCheckResponseDto.cs` — 신규 응답 DTO - [x] `SPMS.Application/Interfaces/IServiceManagementService.cs` — `CheckServiceNameAsync` 메서드 추가 - [x] `SPMS.Application/Services/ServiceManagementService.cs` — 구현 + CreateAsync/UpdateAsync 에러코드 변경 - [x] `SPMS.API/Controllers/ServiceController.cs` — `POST name/check` 엔드포인트 추가 - [x] `SPMS.Application/DTOs/Service/CreateServiceRequestDto.cs` — MinimumLength=2 추가 ## 📢 리뷰어 참고 사항 (To Reviewers) - ServiceCode는 기존대로 서버 자동생성(8자 alphanumeric) 유지, immutable 정책 이미 보장됨 - CheckEmailAsync(AuthService)와 동일한 check 패턴 적용 - DB 스키마 변경 없음 ## ✅ 체크리스트 (Self Checklist) - [x] 빌드(Build)가 성공적으로 수행되었는가? - [x] 모든 단위 테스트(Unit Test)를 통과하였는가? - [x] 불필요한 로그나 주석을 제거하였는가? - [x] 컨벤션(Clean Architecture, Naming)을 준수하였는가? - [x] 기밀 정보(비밀번호, 키 등)가 하드코딩 되어있지 않은가? ## 📸 스크린샷 / 테스트 로그 (Screenshots/Logs) ``` dotnet build → 경고 0개, 오류 0개 ```
seonkyu.kim added 1 commit 2026-02-25 03:16:01 +00:00
- POST /v1/in/service/name/check 엔드포인트 추가
- ServiceNameDuplicate(134) 에러코드 추가
- CreateAsync/UpdateAsync 서비스명 중복 에러코드 변경
- CreateServiceRequestDto MinimumLength=2 검증 추가

Closes #210
seonkyu.kim added the
Priority
Medium
Status
In Progress
Type
Improvement
labels 2026-02-25 03:16:11 +00:00
seonkyu.kim self-assigned this 2026-02-25 03:16:13 +00:00
seonkyu.kim added this to the Phase 1: 서비스 도메인 milestone 2026-02-25 03:16:18 +00:00
seonkyu.kim requested review from Owners 2026-02-25 03:16:30 +00:00
seonkyu.kim merged commit a44f023027 into develop 2026-02-25 03:17:42 +00:00
seonkyu.kim deleted branch improvement/#210-service-name-check 2026-02-25 03:17:56 +00:00
seonkyu.kim added
Status
Done
and removed
Status
In Progress
labels 2026-02-25 03:18:22 +00:00
Sign in to join this conversation.
No description provided.