File tree Expand file tree Collapse file tree 8 files changed +48
-84
lines changed Expand file tree Collapse file tree 8 files changed +48
-84
lines changed Original file line number Diff line number Diff line change 11import client from './client' ;
22
3- export interface DraftLetter {
4- letterId : number ;
5- matchingId : number ;
6- receiverId : number ;
7- parentLetterId : number ;
8- title : string ;
9- content : string ;
10- category : string ;
11- paperType : string ;
12- fontType : string ;
13- }
14-
153export const getDraftLetters = async ( ) : Promise < DraftLetter [ ] > => {
164 try {
175 const { data } = await client . get ( '/api/letters?status=draft' ) ;
Original file line number Diff line number Diff line change 11import client from './client' ;
22
3- //공유 게시글 상세 페이지 편지
4- interface ShareLetter {
5- id : number ;
6- content : string ;
7- writerZipCode : string ;
8- receiverZipCode : string ;
9- }
10-
11- // 공유 게시글 목록 조회 타입
12- export interface SharePost {
13- writerZipCode : string ;
14- receiverZipCode : string ;
15- content : string ;
16- createdAt : string ;
17- active : boolean ;
18- sharePostId : number ;
19- sharePostContent : string ;
20- zipCode : string ;
21- letters : ShareLetter [ ] ;
22- }
23-
24- // 공유 게시글 목록 조회 - 페이징 포함
25- export interface SharePostResponse {
26- content : SharePost [ ] ;
27- currentPage : number ;
28- size : number ;
29- totalElements : number ;
30- totalPages : number ;
31- }
32-
33- // 편지 공유 요청 수신 조회
34- export interface ShareProposal {
35- shareProposalId : number ;
36- requesterZipCode : string ;
37- recipientZipCode : string ;
38- message : string ;
39- status : 'REJECTED' | 'APPROVED' | 'PENDING' ;
40- }
41-
42- //편지 공유 요청 상세 조회
43- export interface ShareProposalLetter {
44- id : number ;
45- content : string ;
46- writerZipCode : string ;
47- receiverZipCode : string ;
48- createdAt : string ;
49- }
50-
51- export interface ShareProposalDetail {
52- shareProposalId : number ;
53- requesterZipCode : string ;
54- recipientZipCode : string ;
55- message : string ;
56- status : 'PENDING' | 'ACCEPTED' | 'REJECTED' ;
57- letters : ShareProposalLetter [ ] ;
58- }
59-
60- // 편지 공유 수락 / 거절
61- export interface ShareProposalApproval {
62- shareProposalId : number ;
63- status : 'APPROVED' | 'REJECTED' ;
64- sharePostId : number ;
65- }
66-
673// 공유 게시글 목록 조회
684export const getSharePostList = async ( page : number = 1 , size : number = 10 ) => {
695 try {
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ import DeleteOutlineRoundedIcon from '@mui/icons-material/DeleteOutlineRounded';
22import React , { useEffect , useState } from 'react' ;
33import { useNavigate } from 'react-router' ;
44
5- import { DraftLetter , getDraftLetters , deleteDraftLetters } from '@/apis/draftLetters' ;
5+ import { getDraftLetters , deleteDraftLetters } from '@/apis/draftLetters' ;
66import ModalBackgroundWrapper from '@/components/ModalBackgroundWrapper' ;
77import ModalOverlay from '@/components/ModalOverlay' ;
88
Original file line number Diff line number Diff line change @@ -3,7 +3,6 @@ import { useNavigate } from 'react-router';
33
44import { getShareProposalDetail } from '@/apis/share' ;
55import { getShareProposalList } from '@/apis/share' ;
6- import { ShareProposal } from '@/apis/share' ;
76
87import ModalBackgroundWrapper from '@/components/ModalBackgroundWrapper' ;
98import ModalOverlay from '@/components/ModalOverlay' ;
Original file line number Diff line number Diff line change @@ -3,7 +3,6 @@ import { twMerge } from 'tailwind-merge';
33
44import {
55 getSharePostDetail ,
6- SharePost ,
76 getSharePostLikeCount ,
87 postSharePostLike ,
98 deleteSharePost ,
@@ -24,9 +23,6 @@ const LetterBoardDetailPage = () => {
2423 const [ isWriter , setIsWriter ] = useState ( false ) ;
2524 const [ postDetail , setPostDetail ] = useState < SharePost > ( ) ;
2625 const [ activeReportModal , setActiveReportModal ] = useState ( false ) ;
27- // const location = useLocation();
28- // const sharePostId: string = location.pathname.split('/')[3];
29- // const isShareLetterPreview = location.state?.isShareLetterPreview || false;
3026
3127 const { id } = useParams ( ) ;
3228 const myZipCode = useAuthStore . getState ( ) . zipCode ;
Original file line number Diff line number Diff line change @@ -2,7 +2,7 @@ import { useEffect, useState } from 'react';
22import { useNavigate , useParams } from 'react-router' ;
33
44import { getShareProposalDetail } from '@/apis/share' ;
5- import { postShareProposalApproval , ShareProposalDetail } from '@/apis/share' ;
5+ import { postShareProposalApproval } from '@/apis/share' ;
66
77import useToastStore from '@/stores/toastStore' ;
88
Original file line number Diff line number Diff line change 1+ interface DraftLetter {
2+ letterId : number ;
3+ matchingId : number ;
4+ receiverId : number ;
5+ parentLetterId : number ;
6+ title : string ;
7+ content : string ;
8+ category : string ;
9+ paperType : string ;
10+ fontType : string ;
11+ }
Original file line number Diff line number Diff line change @@ -15,15 +15,49 @@ interface SharePost {
1515 active : boolean ;
1616 sharePostId : number ;
1717 sharePostContent : string ;
18+ zipCode : string ;
1819 letters : ShareLetter [ ] ;
1920}
2021
2122// 페이징 포함
2223interface SharePostResponse {
23- // data: any;
2424 content : SharePost [ ] ;
2525 currentPage : number ;
2626 size : number ;
2727 totalElements : number ;
2828 totalPages : number ;
2929}
30+
31+ // 편지 공유 요청 수신 조회
32+ interface ShareProposal {
33+ shareProposalId : number ;
34+ requesterZipCode : string ;
35+ recipientZipCode : string ;
36+ message : string ;
37+ status : 'REJECTED' | 'APPROVED' | 'PENDING' ;
38+ }
39+
40+ //편지 공유 요청 상세 조회
41+ interface ShareProposalLetter {
42+ id : number ;
43+ content : string ;
44+ writerZipCode : string ;
45+ receiverZipCode : string ;
46+ createdAt : string ;
47+ }
48+
49+ interface ShareProposalDetail {
50+ shareProposalId : number ;
51+ requesterZipCode : string ;
52+ recipientZipCode : string ;
53+ message : string ;
54+ status : 'PENDING' | 'ACCEPTED' | 'REJECTED' ;
55+ letters : ShareProposalLetter [ ] ;
56+ }
57+
58+ // 편지 공유 수락 / 거절
59+ interface ShareProposalApproval {
60+ shareProposalId : number ;
61+ status : 'APPROVED' | 'REJECTED' ;
62+ sharePostId : number ;
63+ }
You can’t perform that action at this time.
0 commit comments