|
1 |
| -import mongoose, { Document } from "mongoose"; |
2 |
| -import { IComment } from "../interfaces/IComment"; |
3 |
| -import { IUser } from "../interfaces/IUser"; |
4 |
| -import { IConcert } from "../interfaces/IConcert"; |
5 |
| -import { IChallenge } from "../interfaces/IChallenge"; |
6 |
| -import { IChallengeDTO } from "./challengeDTO"; |
7 |
| -import { IConcertDTO } from "./concertDTO"; |
8 |
| - |
9 |
| -export interface userHeaderDTO { |
10 |
| - _id?: mongoose.Schema.Types.ObjectId; |
11 |
| - nickname?: string; |
12 |
| - img?: string; |
13 |
| -} |
| 1 | +import { DateDataType } from "sequelize/types"; |
| 2 | +import { commentDTO } from "."; |
14 | 3 |
|
15 |
| -export interface registerReqDTO { |
16 |
| - challengeCNT: number; |
17 |
| -} |
| 4 | +namespace userDTO { |
| 5 | + // 합치면 challengeDTO 및 concertDTO 에서 받아와서 써도 될 듯! |
| 6 | + // 일단 여기 써놓고 씁니다아 |
| 7 | + export interface challengeResDTO { |
| 8 | + id: number; |
| 9 | + generation: number; |
| 10 | + createdAt: Date; |
| 11 | + updatedAt: Date; |
| 12 | + userID: number; |
| 13 | + nickname: string; |
| 14 | + img: string; |
| 15 | + good: string; |
| 16 | + bad: string; |
| 17 | + learn: string; |
| 18 | + interest: string[]; |
| 19 | + likeNum: number; |
| 20 | + scrapNum: number; |
| 21 | + commentNum: number; |
| 22 | + comment: commentDTO.IComment[]; |
| 23 | + isLike?: Boolean; |
| 24 | + isScrap?: Boolean; |
| 25 | + } |
18 | 26 |
|
19 |
| -export interface ILearnMySelfAchieve { |
20 |
| - percent: number; |
21 |
| - totalNum: number; |
22 |
| - completeNum: number; |
23 |
| - startDT: Date; |
24 |
| - endDT: Date; |
25 |
| - generation: Number; |
26 |
| -} |
| 27 | + export interface challengeScrapResDTO { |
| 28 | + mypageChallengeScrap: challengeResDTO[]; |
| 29 | + totalScrapNum: number; |
| 30 | + } |
27 | 31 |
|
28 |
| -export interface IShareTogether { |
29 |
| - _id: mongoose.Schema.Types.ObjectId; |
30 |
| - title: string; |
31 |
| -} |
| 32 | + export interface concertResDTO { |
| 33 | + id: number; |
| 34 | + createdAt: Date; |
| 35 | + updatedAt: Date; |
| 36 | + userID: number; |
| 37 | + nickname: string; |
| 38 | + authorNickname: string; |
| 39 | + title: string; |
| 40 | + videoLink: string; |
| 41 | + img: string; |
| 42 | + imgThumbnail: string; |
| 43 | + text: string; |
| 44 | + interest: string[]; |
| 45 | + hashtag: string[]; |
| 46 | + isDeleted: Boolean; |
| 47 | + isNotice: Boolean; |
| 48 | + likeNum: number; |
| 49 | + scrapNum: number; |
| 50 | + commentNum: number; |
| 51 | + comment: commentDTO.IComment[]; |
| 52 | + isLike?: Boolean; |
| 53 | + isScrap?: Boolean; |
| 54 | + } |
32 | 55 |
|
33 |
| -export interface ICouponBook { |
34 |
| - welcomeBadge: Boolean; |
35 |
| - firstJoinBadge: Boolean; |
36 |
| - firstWriteBadge: Boolean; |
37 |
| - oneCommentBadge: Boolean; |
38 |
| - fiveCommentBadge: Boolean; |
39 |
| - oneLikeBadge: Boolean; |
40 |
| - fiveLikeBadge: Boolean; |
41 |
| - loginBadge: Boolean; |
42 |
| - marketingBadge: Boolean; |
43 |
| - learnMySelfScrapBadge: Boolean; |
44 |
| - firstReplyBadge: Boolean; |
45 |
| - concertScrapBadge: Boolean; |
46 |
| - challengeBadge: Number; |
47 |
| -} |
| 56 | + export interface concertScrapResDTO { |
| 57 | + mypageConcertScrap: concertResDTO[]; |
| 58 | + totalScrapNum: number; |
| 59 | + } |
48 | 60 |
|
49 |
| -export interface mypageInfoResDTO { |
50 |
| - nickname?: string; |
51 |
| - learnMyselfAchieve: ILearnMySelfAchieve | null; |
52 |
| - shareTogether: IShareTogether[] | null; |
53 |
| - couponBook: ICouponBook; |
54 |
| -} |
| 61 | + export interface commentResDTO { |
| 62 | + id: number; |
| 63 | + text: string; |
| 64 | + post: string; |
| 65 | + createdAt: Date; |
| 66 | + } |
55 | 67 |
|
56 |
| -export interface concertScrapResDTO { |
57 |
| - mypageConcertScrap: IConcertDTO[]; |
58 |
| - totalScrapNum: number; |
59 |
| -} |
| 68 | + export interface myCommentsResDTO { |
| 69 | + comments: commentResDTO[]; |
| 70 | + commentNum: number; |
| 71 | + } |
60 | 72 |
|
61 |
| -export interface challengeScrapResDTO { |
62 |
| - mypageChallengeScrap: IChallengeDTO[]; |
63 |
| - totalScrapNum: number; |
64 |
| -} |
| 73 | + export interface newPwReqDTO { |
| 74 | + password: string; |
| 75 | + newPassword: string; |
| 76 | + } |
65 | 77 |
|
66 |
| -export interface myWritingsResDTO { |
67 |
| - mypageChallengeScrap: (IChallenge & |
68 |
| - Document<IUser, mongoose.Schema.Types.ObjectId> & |
69 |
| - Document<IComment, mongoose.Schema.Types.ObjectId>)[]; |
70 |
| - totalScrapNum: number; |
71 |
| -} |
| 78 | + export interface deleteCommentsReqDTO { |
| 79 | + commentID: number[]; |
| 80 | + } |
72 | 81 |
|
73 |
| -export interface myCommentsResDTO { |
74 |
| - comments: IComment[]; |
75 |
| - commentNum: number; |
76 |
| -} |
| 82 | + export interface registerReqDTO { |
| 83 | + challengeNum: number; |
| 84 | + } |
77 | 85 |
|
78 |
| -export interface delMyCommentReqDTO { |
79 |
| - userID: { id: mongoose.Schema.Types.ObjectId }; |
80 |
| - commentID: mongoose.Schema.Types.ObjectId[]; |
81 |
| -} |
| 86 | + export interface userInfoReqDTO { |
| 87 | + nickname: string; |
| 88 | + interest: string[]; |
| 89 | + isMarketing: Boolean; |
| 90 | + img?: File; |
| 91 | + } |
82 | 92 |
|
83 |
| -export interface userInfoResDTO { |
84 |
| - interest: string[]; |
85 |
| - marpolicy: Boolean; |
86 |
| - img?: string; |
87 |
| - _id: mongoose.Schema.Types.ObjectId; |
88 |
| - email: string; |
89 |
| - nickname?: string; |
90 |
| -} |
| 93 | + export interface mypageInfoChallengeResDTO { |
| 94 | + percent: number; |
| 95 | + totalNum: number; |
| 96 | + completeNum: number; |
| 97 | + startDT: Date; |
| 98 | + endDT: Date; |
| 99 | + generation: number; |
| 100 | + } |
91 | 101 |
|
92 |
| -export interface userInfoReqDTO { |
93 |
| - interest: string; |
94 |
| - marpolicy: string; |
95 |
| - img?: File; |
96 |
| - nickname?: string; |
97 |
| -} |
| 102 | + export interface mypageInfoConcertResDTO { |
| 103 | + id: number; |
| 104 | + title: string; |
| 105 | + } |
98 | 106 |
|
99 |
| -export interface newPwReqDTO { |
100 |
| - password: string; |
101 |
| - newPassword: string; |
102 |
| - userID: { id: mongoose.Schema.Types.ObjectId }; |
| 107 | + export interface mypageInfoBadgeResDTO { |
| 108 | + welcomeBadge: Boolean; |
| 109 | + firstJoinBadge: Boolean; |
| 110 | + firstWriteBadge: Boolean; |
| 111 | + oneCommentBadge: Boolean; |
| 112 | + fiveCommentBadge: Boolean; |
| 113 | + oneLikeBadge: Boolean; |
| 114 | + fiveLikeBadge: Boolean; |
| 115 | + loginBadge: Boolean; |
| 116 | + marketingBadge: Boolean; |
| 117 | + learnMySelfScrapBadge: Boolean; |
| 118 | + firstReplyBadge: Boolean; |
| 119 | + concertScrapBadge: Boolean; |
| 120 | + challengeBadge: number; |
| 121 | + } |
| 122 | + |
| 123 | + export interface mypageInfoResDTO { |
| 124 | + nickname: string; |
| 125 | + learnMyselfAchieve: mypageInfoChallengeResDTO | null; |
| 126 | + shareTogether: mypageInfoConcertResDTO[] | null; |
| 127 | + couponBook: mypageInfoBadgeResDTO; |
| 128 | + } |
| 129 | + |
| 130 | + export interface userInfoResDTO { |
| 131 | + interest: string[]; |
| 132 | + isMarketing: Boolean; |
| 133 | + img: string; |
| 134 | + id: number; |
| 135 | + email: string; |
| 136 | + nickname: string; |
| 137 | + } |
| 138 | + |
| 139 | + export interface mypageConcertResDTO {} |
103 | 140 | }
|
| 141 | + |
| 142 | +export default userDTO; |
0 commit comments