From 5b0d95b461685ca2d1aadc7d0139a5f1222611e8 Mon Sep 17 00:00:00 2001 From: overthestream Date: Fri, 2 Feb 2024 12:42:01 +0100 Subject: [PATCH 1/2] =?UTF-8?q?=ED=95=B4=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/blurting/blurting.service.ts | 2 +- src/blurting/dtos/replyRequest.dto.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/blurting/blurting.service.ts b/src/blurting/blurting.service.ts index f76fac6..f9a7587 100644 --- a/src/blurting/blurting.service.ts +++ b/src/blurting/blurting.service.ts @@ -609,7 +609,7 @@ export class BlurtingService { const newReply = this.replyRepository.create({ user: { id: userId }, answer: { id: answerId }, - content, + content: content, }); await this.replyRepository.save(newReply); } diff --git a/src/blurting/dtos/replyRequest.dto.ts b/src/blurting/dtos/replyRequest.dto.ts index ae0254b..78fee19 100644 --- a/src/blurting/dtos/replyRequest.dto.ts +++ b/src/blurting/dtos/replyRequest.dto.ts @@ -1,6 +1,8 @@ import { ApiProperty } from '@nestjs/swagger'; +import { IsString } from 'class-validator'; export class ReplyRequestDto { @ApiProperty({ description: '답글 내용' }) + @IsString({ message: '문자열을 입력해주세요' }) content: string; } From d7dde811338758c8eb67d3f51846a4f4e017f942 Mon Sep 17 00:00:00 2001 From: overthestream Date: Tue, 6 Feb 2024 07:49:12 +0100 Subject: [PATCH 2/2] Refactor blurting service and add new questions --- src/blurting/blurting.service.ts | 45 ++++++++++++++++++++++++++++---- 1 file changed, 40 insertions(+), 5 deletions(-) diff --git a/src/blurting/blurting.service.ts b/src/blurting/blurting.service.ts index 0982868..3248789 100644 --- a/src/blurting/blurting.service.ts +++ b/src/blurting/blurting.service.ts @@ -77,7 +77,6 @@ export class BlurtingService { await this.notificationRepository.insert(newEntity); }), ); - const questions = [ '연인을 볼 때 가장 중요한 외적 요소 1가지는?', '연인을 볼 때 가장 중요한 내적 요소 1가지는?', @@ -85,10 +84,28 @@ export class BlurtingService { '본인의 현재 플레이리스트에 있는 곡 세 개로 자신을 소개해주세요!', '본인의 인생 영화와 그 이유를 알려주세요', '본인이 연인과 공유하고 싶은 취미는?', - '2024년 상반기에 달성하고 싶은 목표3가지를 공유해주세요!', - '애인의 남사친/여사친은 어디까지 허용 가능하시나요?', + '2024년 상반기에 달성하고 싶은 목표 3가지를 공유해주세요!', + '애인의 남사친/여사친과의 행동 어디까지 허용 가능하시나요?', '연인에게서 절대 용납할 수 없는 잘못이 있다면 무엇인가요?', '지금 현재 연애하고 싶다고 느끼는 이유가 무엇인가요?', + + '연인과 공유하고 싶은 취미가 있다면 알려주세요', + + '운명적인 만남은 존재한다고 생각하시나요?', + + '썸남/썸녀가 이렇게 고백해줬으면 좋겠어!', + + '본인 스스로를 연애 하수/중수/고수 중 어디에 속한다고 생각하시나요?', + + '나만의 플러팅 스킬을 하나 알려주세요.', + + '자신의 성격을 mbti와 함께 알려주세요!', + + '사귀기 전에 가능한 스킨십 정도에 대해 알려주세요.', + + '친구사이에서 연인으로 발전 하는 것이 가능하다고 생각하시나요?', + + '나의 1주년을 준비하기 위해 여사친/남사친과 함께 한 달간 준비한 연인. 당신의 대처는?', '본인이 선호하는 연인의 옷 스타일을 설명해주세요!', '소개팅을 받을 때 상대에 대해 가장 궁금한 부분은 어떤 것인가요?', '연인을 볼 때 가장 중요한 것을 순서대로 말해주세요: 인성, 학력, 궁합, 재력, 얼굴', @@ -100,6 +117,12 @@ export class BlurtingService { '데이트 비용은 어떻게 정산하는 것을 선호하시나요?', '내 맞춤법이 틀렸을 때 애인이 어떻게 반응하면 좋을 것 같나요?', '본인의 옷 스타일을 설명해주세요!', + + '연인과 함께 간 노래방에서 연인이 내 노래를 듣지 않고, 다음곡을 찾고 있다면 서운한가요?', + + '이성에게 설레는 나만의 설렘 포인트가 있다면 알려주세요', + + '연인과 재결합을 하였는데, 헤어졌을때 클럽을 간 남친/여친 용납 가능한가요?', '내가 아플 때 애인에게 바라는 것이 있나요?', '기념일은 어디까지 챙기고 싶은가요?', '이별에도 지켜야 한다고 생각하는 예의가 있다면 무엇인가요?', @@ -136,6 +159,8 @@ export class BlurtingService { '좋아하는 영화 장르와 그 이유를 설명해주세요!', '최근 재미있게 본 드라마를 이야기해주세요!', '좋아하는 배우가 있다면 누구인가요?', + + '당신의 첫사랑에 대해서 설명해주세요', '내가 가진 가장 쓸모 없는 물건과 얻게 된 경로를 알려주세요!', '나만의 스트레스 해소법은 무엇인가요?', '요즘 고민이 있다면 어떤 고민인가요?', @@ -155,16 +180,16 @@ export class BlurtingService { '주말에 주로 무엇을 하면서 시간을 보내나요?', '아침에 일어나면 가장 먼저 하는 일은 무엇인가요?', '자기전에 마지막으로 하는 일은 무엇인가요?', - '하루에 평균 몇시간동안 수면을 취하나요?', '넷플릭스에서 추천하는 드라마나 영화가 있나요?', '주량이 어느 정도인가요? 술을 좋아하시나요?', '좋아하는 술이 있나요?', + + '내 앞에서는 한 없이 순수한 연인의 문란한 과거를 알았다면 당신의 대처는?', '나의 버킷리스트 중 하나를 알려주세요!', '남기고 싶은 유언이 있다면 무엇인가요?', '내가 가진 것 중 가장 소중한 것을 말해주세요!', '지금 당신의 TMI 하나를 알려주세요!', ]; - const selected = []; for (let i = 0; i < 9; ++i) { let rand = 0; @@ -658,5 +683,15 @@ export class BlurtingService { content: content, }); await this.replyRepository.save(newReply); + await this.fcmService.sendPush( + userId, + '내가 작성한 답변에 댓글이 달렸습니다! 확인해보세요.', + 'blurting', + ); + const newEntity = this.notificationRepository.create({ + user: { id: userId }, + body: '내가 작성한 답변에 댓글이 달렸습니다!', + }); + await this.notificationRepository.insert(newEntity); } }