Skip to content

Commit

Permalink
Feat/socialink optional #139 (#141)
Browse files Browse the repository at this point in the history
* 💡 [Docs]: update api-docs

* ✨ [Feat]: social link optional 처리

1. update시 social link없으면 프로필 hide하는 라인 삭제
2. activation시 sociallink 검증 삭제
  • Loading branch information
koreanddinghwan authored Oct 11, 2023
1 parent 2c1b734 commit 7a1f079
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 21 deletions.
21 changes: 10 additions & 11 deletions api-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -327,12 +327,9 @@ paths:
patch:
summary: Update mentor profile
description: |
update mentor profiles.
**NOTE**: **hashtags** and **categories** are replaced with the new ones
**NOTE**: 프로필 활성화 조건에 위배되는 경우 isHide가 해제됩니다.
**사용법**: **description/shortDescription**
description이 **missing** **property** 인 경우, 무시(제외하고 업데이트)
description이 **""** 인 경우, ""로 업데이트됩니다.
**NOTE**: **hashtags** and **categories** are replaced with the new ones
**NOTE**: 프로필 활성화 조건에 위배되는 경우 isHide가 해제됩니다.
**프로필 활성화 조건**: 해시태그와 카테고리가 1개 이상.
tags:
- Mentor Profiles
security:
Expand Down Expand Up @@ -369,7 +366,8 @@ paths:
patch:
summary: Activate or Deactivate mentorProfiles
description: |
mentorProfiled을 활성화/비활성화합니다.
mentorProfile을 활성화/비활성화합니다.
활성화 하기 위해선 category/hashtag가 각각 1개 이상 등록되어있어야합니다.
tags:
- Mentor Profiles
security:
Expand All @@ -396,11 +394,12 @@ paths:
schema:
$ref: '#/components/schemas/MentorProfileGet'
'400':
description: Invalid request parameter
description: |
activation: 카테고리는 최소 1개 이상 선택해주세요.
activation: 해시태그는 최소 1개 이상 선택해주세요.
'404':
description: Mentor profile not found


description: |
업데이트할 프로필이 없습니다.
/reservations:
get:
Expand Down
10 changes: 0 additions & 10 deletions src/database/repository/mentorProfile.repository.ts
Original file line number Diff line number Diff line change
Expand Up @@ -128,11 +128,6 @@ export class MentorProfileRepository {
if (data.categories.length == 0) isHide = true;
// 업데이트할 해시태그가 0개인 경우
if (data.hashtags.length == 0) isHide = true;
// 업데이트할 소셜링크가 null인 경우
if (!data.socialLink) {
isHide = true;
data.socialLink = '';
}

return prisma.mentorProfile.update({
where: {
Expand Down Expand Up @@ -162,7 +157,6 @@ export class MentorProfileRepository {
* @detail 멘토 프로필을 활성화 시키는 함수입니다.
* - 멘토 프로필 활성화위해선 카테고리가 최소 1개 이상 존재해야합니다.
* - 멘토 프로필 활성화위해선 해시태그가 최소 1개 이상 존재해야합니다.
* - 멘토 프로필 활성화위해선 소셜링크가 최소 1개 이상 존재해야합니다.
*/
async activateMentorProfile(userId: number) {
return this.prisma.$transaction(async (prisma) => {
Expand All @@ -173,7 +167,6 @@ export class MentorProfileRepository {
select: {
hashtags: true,
categories: true,
socialLink: true,
},
});

Expand All @@ -187,9 +180,6 @@ export class MentorProfileRepository {
if (profile.hashtags.length === 0)
throw new BadRequestException('해시태그는 최소 1개 이상 선택해주세요.');

// 현재 프로필에 소셜링크가 없는 경우
if (profile.socialLink.length === 0)
throw new BadRequestException('소셜 링크를 입력해주세요.');
return prisma.mentorProfile.update({
where: {
userId: userId,
Expand Down

0 comments on commit 7a1f079

Please sign in to comment.