From 7a7123cddc1f0b9bbb2bf662fe14dc9b3257a287 Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Thu, 9 Nov 2023 01:41:21 +0900 Subject: [PATCH 01/13] =?UTF-8?q?[conf]=20:=20Docker=20=EC=84=A4=EC=A0=95?= =?UTF-8?q?=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 1 - 1 file changed, 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index eefc8898..b4e42c9b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,6 @@ # node 16 이미지를 기반으로 함 FROM krmp-d2hub-idock.9rum.cc/goorm/node:16 -ENV REACT_APP_REST_API_KEY=bd3e8c1b259f545078e29a64ccbb3828 ENV REACT_APP_BASE_URL=https://ka8d1b2b62898a.user-app.krampoline.com # 작업 디렉토리 설정 From 5116e7900722340944667a0f05daf31194e3d619 Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Thu, 9 Nov 2023 23:24:47 +0900 Subject: [PATCH 02/13] =?UTF-8?q?[conf]=20:=20Docker=20=ED=8C=8C=EC=9D=BC?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 2 +- src/index.js | 20 +++++++++++++------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/Dockerfile b/Dockerfile index b4e42c9b..f3e6c513 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ # node 16 이미지를 기반으로 함 FROM krmp-d2hub-idock.9rum.cc/goorm/node:16 -ENV REACT_APP_BASE_URL=https://ka8d1b2b62898a.user-app.krampoline.com +ENV REACT_APP_BASE_URL=https://k0d01653e1a11a.user-app.krampoline.com/api # 작업 디렉토리 설정 WORKDIR /usr/src/app diff --git a/src/index.js b/src/index.js index bb32d5d3..3ea84720 100644 --- a/src/index.js +++ b/src/index.js @@ -18,13 +18,19 @@ async function deferRender() { const queryClient = new QueryClient(); const root = ReactDOM.createRoot(document.getElementById('root')); -deferRender().then(() => { - root.render( - - - , - ); -}); +root.render( + + + , +); + +// deferRender().then(() => { +// root.render( +// +// +// , +// ); +// }); // If you want to start measuring performance in your app, pass a function // to log results (for example: reportWebVitals(console.log)) From 4ad1c508afa61f89ed406fe83f8cb2802941a04a Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 00:13:01 +0900 Subject: [PATCH 03/13] =?UTF-8?q?[conf]=20:=20Docker=20=ED=8C=8C=EC=9D=BC?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index f3e6c513..d533e77b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ # node 16 이미지를 기반으로 함 FROM krmp-d2hub-idock.9rum.cc/goorm/node:16 -ENV REACT_APP_BASE_URL=https://k0d01653e1a11a.user-app.krampoline.com/api +ENV REACT_APP_API_URL = https://k0d01653e1a11a.user-app.krampoline.com/api # 작업 디렉토리 설정 WORKDIR /usr/src/app From 9fe4b0d0767ca91986602bc3a88394a441a00ca7 Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 02:12:02 +0900 Subject: [PATCH 04/13] =?UTF-8?q?[conf]=20:=20Docker=20=ED=8C=8C=EC=9D=BC?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index d533e77b..7b5089d8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,8 @@ # node 16 이미지를 기반으로 함 FROM krmp-d2hub-idock.9rum.cc/goorm/node:16 -ENV REACT_APP_API_URL = https://k0d01653e1a11a.user-app.krampoline.com/api +ENV REACT_APP_API_URL = https://k0d01653e1a11a.user-app.krampoline.com +ENV REACT_APP_PATH = https://k0d01653e1a11a.user-app.krampoline.com/api # 작업 디렉토리 설정 WORKDIR /usr/src/app From b860955355a7a2551c241023bf8999c58336d768 Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 02:26:58 +0900 Subject: [PATCH 05/13] =?UTF-8?q?[conf]=20:=20Docker=20=ED=8C=8C=EC=9D=BC?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7b5089d8..d533e77b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,7 @@ # node 16 이미지를 기반으로 함 FROM krmp-d2hub-idock.9rum.cc/goorm/node:16 -ENV REACT_APP_API_URL = https://k0d01653e1a11a.user-app.krampoline.com -ENV REACT_APP_PATH = https://k0d01653e1a11a.user-app.krampoline.com/api +ENV REACT_APP_API_URL = https://k0d01653e1a11a.user-app.krampoline.com/api # 작업 디렉토리 설정 WORKDIR /usr/src/app From 589c5cde25615ce8599a5e62239a001a1775614a Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 03:09:46 +0900 Subject: [PATCH 06/13] =?UTF-8?q?[conf]=20:=20Docker=20=ED=8C=8C=EC=9D=BC?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index d533e77b..450aa8bf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ # node 16 이미지를 기반으로 함 FROM krmp-d2hub-idock.9rum.cc/goorm/node:16 -ENV REACT_APP_API_URL = https://k0d01653e1a11a.user-app.krampoline.com/api +ENV REACT_APP_API_URL=api # 작업 디렉토리 설정 WORKDIR /usr/src/app From 41f514ffdb056010d24a64eb8c24b4da0b35224a Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 04:46:59 +0900 Subject: [PATCH 07/13] =?UTF-8?q?[refactor]=20:=20axios=20=EC=9A=94?= =?UTF-8?q?=EC=B2=AD=20=EC=BD=94=EB=93=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/molecules/BankForm.jsx | 50 +++++++++++++++-------- src/pages/KakaoOuathPage.jsx | 59 +++++++++++++++++++-------- 2 files changed, 74 insertions(+), 35 deletions(-) diff --git a/src/components/molecules/BankForm.jsx b/src/components/molecules/BankForm.jsx index 2c2173bb..2dfc360d 100644 --- a/src/components/molecules/BankForm.jsx +++ b/src/components/molecules/BankForm.jsx @@ -1,11 +1,12 @@ import React, { useState, useEffect } from 'react'; import { Link, useNavigate } from 'react-router-dom'; import Swal from 'sweetalert2'; -import { useMutation } from '@tanstack/react-query'; +// import { useMutation } from '@tanstack/react-query'; import Button from '@components/atoms/button/Button'; +import axios from 'axios'; import banks from '@/constant/bank'; import routes from '@/constant/routes'; -import registerBank from '@/apis/register'; +// import registerBank from '@/apis/register'; import { bankInvalidMessage, unknownErrorMessage, loginSuccessMessage } from '@/utils/alert'; const BankForm = () => { @@ -15,18 +16,18 @@ const BankForm = () => { const navigate = useNavigate(); - const { mutate } = useMutation({ - mutationFn: registerBank, - onSuccess: (response) => { - localStorage.setItem('userAuth', response.data.response.userAuth); - Swal.fire(loginSuccessMessage); - navigate(routes.home); // 회원가입 이후 로그인을 할 수 있도록 로그인 페이지로 이동시킴 - }, - onError: () => { - Swal.fire(unknownErrorMessage); - navigate(routes.error); - }, - }); + // const { mutate } = useMutation({ + // mutationFn: registerBank, + // onSuccess: (response) => { + // localStorage.setItem('userAuth', response.data.response.userAuth); + // Swal.fire(loginSuccessMessage); + // navigate(routes.home); // 회원가입 이후 로그인을 할 수 있도록 로그인 페이지로 이동시킴 + // }, + // onError: () => { + // Swal.fire(unknownErrorMessage); + // navigate(routes.error); + // }, + // }); // 계좌 은행을 선택할 때 호출될 함수 const handleBankChange = (e) => { @@ -42,10 +43,23 @@ const BankForm = () => { const handleSubmit = () => { if (formValid) { // 입력 정보 post 처리 이후 홈 페이지 이동(회원가입 완료) - mutate({ - bankName: accountBank, - accountNum: accountNumber, - }); + axios + .post('/api/signup', { + bankName: accountBank, + accountNum: accountNumber, + }) + .then((response) => { + // 성공적으로 회원가입 처리가 되면 로컬 스토리지에 인증정보를 저장하고 홈으로 이동 + localStorage.setItem('userAuth', response.data.response.userAuth); + Swal.fire(loginSuccessMessage); + navigate(routes.home); + }) + .catch((error) => { + // 에러가 발생하면 알림을 띄우고 에러 페이지로 이동 + console.log(error); + Swal.fire(unknownErrorMessage); + navigate(routes.error); + }); } else { Swal.fire(bankInvalidMessage); } diff --git a/src/pages/KakaoOuathPage.jsx b/src/pages/KakaoOuathPage.jsx index 8e915e45..6205a568 100644 --- a/src/pages/KakaoOuathPage.jsx +++ b/src/pages/KakaoOuathPage.jsx @@ -1,16 +1,17 @@ import React, { useEffect } from 'react'; import { useNavigate } from 'react-router-dom'; import Swal from 'sweetalert2'; -import { useQuery } from '@tanstack/react-query'; +// import { useQuery } from '@tanstack/react-query'; import Loader from '@components/atoms/Loader'; +import axios from 'axios'; import routes from '@/constant/routes'; import { loginSuccessMessage } from '@/utils/alert'; -import getLoginInfo from '@/apis/login'; +// import getLoginInfo from '@/apis/login'; // 리다이렉팅 처리 화면 const KakaoOuathPage = () => { const navigate = useNavigate(); - const { data } = useQuery(['getLoginInfo'], getLoginInfo); + // const { data } = useQuery(['getLoginInfo'], getLoginInfo); // 로그인 완료시 로그인 성공 메시지를 띄우고 유저 정보를 받아옴(토큰 등) // 그리고 로그인 완료 처리를 하고, 액세스 토큰을 계속 담아 보냄 // 로그인 완료되면 홈 페이지로 이동시킴 @@ -19,21 +20,45 @@ const KakaoOuathPage = () => { // 회원가입 O - 토큰을 저장하고 바로 로그인 처리하고 홈페이지 이동 // 회원가입 X - 토큰을 저장하고 계좌정보 입력 페이지 이동 - 계좌정보를 입력하고 나면 바로 로그인 처리하고 홈페이지 이동 useEffect(() => { - if (data) { - const status = data.data.success; - if (status) { - const userInfo = data.data.response; - const { userAuth, AccessToken } = userInfo; - localStorage.setItem('accessToken', AccessToken); - localStorage.setItem('userAuth', userAuth); - if (localStorage.getItem('userAuth') === 'GUEST') { - navigate(routes.registerBank); - } else { - Swal.fire(loginSuccessMessage).then(routes.home); + axios + .get('/api/login/callback') + .then((response) => { + const status = response.data.success; + if (status) { + const userInfo = response.data.response; + const { userAuth, AccessToken } = userInfo; + localStorage.setItem('accessToken', AccessToken); + localStorage.setItem('userAuth', userAuth); + if (userAuth === 'GUEST') { + navigate(routes.registerBank); // GUEST인 경우 은행 등록 페이지로 이동 + } else { + Swal.fire(loginSuccessMessage).then(() => { + navigate(routes.home); // 로그인 성공 메시지 후 홈으로 이동 + }); + } } - } - } - }, [data]); + }) + .catch((error) => { + // 요청 중 오류가 발생한 경우 처리 + console.error('Login Callback Error:', error); + // 에러 처리 로직 추가 가능 + }); + }, []); + + // if (data) { + // const status = data.data.success; + // if (status) { + // const userInfo = data.data.response; + // const { userAuth, AccessToken } = userInfo; + // localStorage.setItem('accessToken', AccessToken); + // localStorage.setItem('userAuth', userAuth); + // if (localStorage.getItem('userAuth') === 'GUEST') { + // navigate(routes.registerBank); + // } else { + // Swal.fire(loginSuccessMessage).then(routes.home); + // } + // } + // } return (
From c318fa536e4d54c20be6660f32a8162d2671312d Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 05:33:43 +0900 Subject: [PATCH 08/13] =?UTF-8?q?[fix]=20:=20response=20=EB=B0=9B=EC=95=84?= =?UTF-8?q?=EC=84=9C=20=EC=B2=98=EB=A6=AC=ED=95=98=EB=8A=94=20=EA=B0=92=20?= =?UTF-8?q?=EC=88=98=EC=A0=95=20&=20msw=20=EC=A3=BC=EC=84=9D=20=EC=B2=98?= =?UTF-8?q?=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/molecules/BankForm.jsx | 2 +- src/index.js | 14 +++++++------- src/pages/KakaoOuathPage.jsx | 10 +++++----- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/components/molecules/BankForm.jsx b/src/components/molecules/BankForm.jsx index 2dfc360d..02a1af1f 100644 --- a/src/components/molecules/BankForm.jsx +++ b/src/components/molecules/BankForm.jsx @@ -50,7 +50,7 @@ const BankForm = () => { }) .then((response) => { // 성공적으로 회원가입 처리가 되면 로컬 스토리지에 인증정보를 저장하고 홈으로 이동 - localStorage.setItem('userAuth', response.data.response.userAuth); + localStorage.setItem('userAuth', response.response.userAuth); Swal.fire(loginSuccessMessage); navigate(routes.home); }) diff --git a/src/index.js b/src/index.js index 3ea84720..73d31b12 100644 --- a/src/index.js +++ b/src/index.js @@ -5,15 +5,15 @@ import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import App from './App'; import reportWebVitals from './reportWebVitals'; -async function deferRender() { - if (process.env.NODE_ENV !== 'development') { - return; - } +// async function deferRender() { +// if (process.env.NODE_ENV !== 'development') { +// return; +// } - const { worker } = await import('./mocks/browser'); +// const { worker } = await import('./mocks/browser'); - return worker.start(); -} +// return worker.start(); +// } const queryClient = new QueryClient(); const root = ReactDOM.createRoot(document.getElementById('root')); diff --git a/src/pages/KakaoOuathPage.jsx b/src/pages/KakaoOuathPage.jsx index 6205a568..94435e2b 100644 --- a/src/pages/KakaoOuathPage.jsx +++ b/src/pages/KakaoOuathPage.jsx @@ -1,11 +1,11 @@ import React, { useEffect } from 'react'; import { useNavigate } from 'react-router-dom'; import Swal from 'sweetalert2'; -// import { useQuery } from '@tanstack/react-query'; import Loader from '@components/atoms/Loader'; import axios from 'axios'; import routes from '@/constant/routes'; -import { loginSuccessMessage } from '@/utils/alert'; +import { loginSuccessMessage, unknownErrorMessage } from '@/utils/alert'; +// import { useQuery } from '@tanstack/react-query'; // import getLoginInfo from '@/apis/login'; // 리다이렉팅 처리 화면 @@ -23,9 +23,9 @@ const KakaoOuathPage = () => { axios .get('/api/login/callback') .then((response) => { - const status = response.data.success; + const status = response.success; if (status) { - const userInfo = response.data.response; + const userInfo = response.response; const { userAuth, AccessToken } = userInfo; localStorage.setItem('accessToken', AccessToken); localStorage.setItem('userAuth', userAuth); @@ -41,7 +41,7 @@ const KakaoOuathPage = () => { .catch((error) => { // 요청 중 오류가 발생한 경우 처리 console.error('Login Callback Error:', error); - // 에러 처리 로직 추가 가능 + Swal.fire(unknownErrorMessage).then(routes.error); }); }, []); From cc140333e0e8b97af08ca1ff9d3312492de660e7 Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 05:35:03 +0900 Subject: [PATCH 09/13] =?UTF-8?q?[fix]=20:=20=EB=B2=84=EA=B7=B8=20?= =?UTF-8?q?=EC=88=98=EC=A0=95=EC=9D=84=20=EC=9C=84=ED=95=9C=20console.log?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/molecules/BankForm.jsx | 1 + src/pages/KakaoOuathPage.jsx | 1 + 2 files changed, 2 insertions(+) diff --git a/src/components/molecules/BankForm.jsx b/src/components/molecules/BankForm.jsx index 02a1af1f..6c93a263 100644 --- a/src/components/molecules/BankForm.jsx +++ b/src/components/molecules/BankForm.jsx @@ -49,6 +49,7 @@ const BankForm = () => { accountNum: accountNumber, }) .then((response) => { + console.log('response 값 : ', response); // 성공적으로 회원가입 처리가 되면 로컬 스토리지에 인증정보를 저장하고 홈으로 이동 localStorage.setItem('userAuth', response.response.userAuth); Swal.fire(loginSuccessMessage); diff --git a/src/pages/KakaoOuathPage.jsx b/src/pages/KakaoOuathPage.jsx index 94435e2b..acc137e6 100644 --- a/src/pages/KakaoOuathPage.jsx +++ b/src/pages/KakaoOuathPage.jsx @@ -23,6 +23,7 @@ const KakaoOuathPage = () => { axios .get('/api/login/callback') .then((response) => { + console.log('response 값 : ', response); const status = response.success; if (status) { const userInfo = response.response; From b3eb50ac8911a7f332b65e24679a7c89b183788f Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 06:09:57 +0900 Subject: [PATCH 10/13] =?UTF-8?q?[refactor]=20:=20same=20->=20isRequester?= =?UTF-8?q?=EB=A1=9C=20=EB=B3=80=EC=88=98=EB=AA=85=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/ArticleDetailPage.jsx | 58 ++++++++++++++++----------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/src/pages/ArticleDetailPage.jsx b/src/pages/ArticleDetailPage.jsx index 1ad1b39e..0f342987 100644 --- a/src/pages/ArticleDetailPage.jsx +++ b/src/pages/ArticleDetailPage.jsx @@ -10,44 +10,44 @@ import { getArticleDetail } from '@/apis/articleDetail.js'; const ArticleDetailPage = () => { // 샘플데이터 - const sample = { - boardId: 1, - shopName: '스타벅스 전대후문점', - destination: '공과대학 7호관', - beverage: [ - { - name: '아이스 아메리카노 1잔', - }, - { - name: '핫 아메리카노 1잔', - }, - ], - tip: 3000, - request: '1층 도착하시면 연락주세요!', - finishedAt: 15468965196, - pickerBank: '농협', - pickerAccount: '00000000000000', - arriveTime: '14시 20분 도착예정', - pickerPhoneNumber: '010-1234-1234', - isMatch: false, - same: false, - }; + // const sample = { + // boardId: 1, + // shopName: '스타벅스 전대후문점', + // destination: '공과대학 7호관', + // beverage: [ + // { + // name: '아이스 아메리카노 1잔', + // }, + // { + // name: '핫 아메리카노 1잔', + // }, + // ], + // tip: 3000, + // request: '1층 도착하시면 연락주세요!', + // finishedAt: 15468965196, + // pickerBank: '농협', + // pickerAccount: '00000000000000', + // arriveTime: '14시 20분 도착예정', + // pickerPhoneNumber: '010-1234-1234', + // isRequester: false, + // same: false, + // }; - // const { id } = useParams(); - // const { data } = useQuery([`article/${id}`], () => getArticleDetail(id)); - // const article = data?.data.response; - const article = sample; + const { id } = useParams(); + const { data } = useQuery([`article/${id}`], () => getArticleDetail(id)); + const article = data?.data.response; + // const article = sample; /* eslint no-else-return: "error" */ const showDetailPage = (article) => { // 작성자이고 매칭됐을 때 - if (article.same && article.isMatch) { + if (article.isRequester && article.isMatch) { return ; // 작성자이고 매칭 안됐을 때 - } else if (article.same && !article.isMatch) { + } else if (article.isRequester && !article.isMatch) { return ; // 피커이고 매칭 됐을 때 - } else if (!article.same && article.isMatch) { + } else if (!article.isRequester && article.isMatch) { return ; } // 피커이고 매칭 안됐을 때 From 90d841584fcacfe17efd19a25a0df695b0c0dcaf Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 06:10:18 +0900 Subject: [PATCH 11/13] =?UTF-8?q?[fix]=20:=20=EB=A1=9C=EA=B7=B8=EC=9D=B8?= =?UTF-8?q?=20&=20=EA=B3=84=EC=A2=8C=EC=A0=95=EB=B3=B4=20=EC=9E=85?= =?UTF-8?q?=EB=A0=A5=20response=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/molecules/BankForm.jsx | 6 +++--- src/pages/KakaoOuathPage.jsx | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/components/molecules/BankForm.jsx b/src/components/molecules/BankForm.jsx index 6c93a263..2ef3acba 100644 --- a/src/components/molecules/BankForm.jsx +++ b/src/components/molecules/BankForm.jsx @@ -1,13 +1,13 @@ import React, { useState, useEffect } from 'react'; import { Link, useNavigate } from 'react-router-dom'; import Swal from 'sweetalert2'; -// import { useMutation } from '@tanstack/react-query'; import Button from '@components/atoms/button/Button'; import axios from 'axios'; import banks from '@/constant/bank'; import routes from '@/constant/routes'; -// import registerBank from '@/apis/register'; import { bankInvalidMessage, unknownErrorMessage, loginSuccessMessage } from '@/utils/alert'; +// import { useMutation } from '@tanstack/react-query'; +// import registerBank from '@/apis/register'; const BankForm = () => { const [accountBank, setAccountBank] = useState(''); @@ -51,7 +51,7 @@ const BankForm = () => { .then((response) => { console.log('response 값 : ', response); // 성공적으로 회원가입 처리가 되면 로컬 스토리지에 인증정보를 저장하고 홈으로 이동 - localStorage.setItem('userAuth', response.response.userAuth); + localStorage.setItem('userAuth', 'USER'); Swal.fire(loginSuccessMessage); navigate(routes.home); }) diff --git a/src/pages/KakaoOuathPage.jsx b/src/pages/KakaoOuathPage.jsx index acc137e6..4e665b6a 100644 --- a/src/pages/KakaoOuathPage.jsx +++ b/src/pages/KakaoOuathPage.jsx @@ -24,9 +24,9 @@ const KakaoOuathPage = () => { .get('/api/login/callback') .then((response) => { console.log('response 값 : ', response); - const status = response.success; - if (status) { - const userInfo = response.response; + const { status } = response; + if (status === 200) { + const userInfo = response.data.response; const { userAuth, AccessToken } = userInfo; localStorage.setItem('accessToken', AccessToken); localStorage.setItem('userAuth', userAuth); From 26d7da072807f89c4090ede3b2a71f9f9ec9fff5 Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 06:41:36 +0900 Subject: [PATCH 12/13] =?UTF-8?q?[comment]=20:=20=ED=95=84=EC=9A=94?= =?UTF-8?q?=EC=97=86=EB=8A=94=20=EC=A3=BC=EC=84=9D=20=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/molecules/BankForm.jsx | 15 --------------- src/pages/KakaoOuathPage.jsx | 21 --------------------- 2 files changed, 36 deletions(-) diff --git a/src/components/molecules/BankForm.jsx b/src/components/molecules/BankForm.jsx index 2ef3acba..27685637 100644 --- a/src/components/molecules/BankForm.jsx +++ b/src/components/molecules/BankForm.jsx @@ -6,8 +6,6 @@ import axios from 'axios'; import banks from '@/constant/bank'; import routes from '@/constant/routes'; import { bankInvalidMessage, unknownErrorMessage, loginSuccessMessage } from '@/utils/alert'; -// import { useMutation } from '@tanstack/react-query'; -// import registerBank from '@/apis/register'; const BankForm = () => { const [accountBank, setAccountBank] = useState(''); @@ -16,19 +14,6 @@ const BankForm = () => { const navigate = useNavigate(); - // const { mutate } = useMutation({ - // mutationFn: registerBank, - // onSuccess: (response) => { - // localStorage.setItem('userAuth', response.data.response.userAuth); - // Swal.fire(loginSuccessMessage); - // navigate(routes.home); // 회원가입 이후 로그인을 할 수 있도록 로그인 페이지로 이동시킴 - // }, - // onError: () => { - // Swal.fire(unknownErrorMessage); - // navigate(routes.error); - // }, - // }); - // 계좌 은행을 선택할 때 호출될 함수 const handleBankChange = (e) => { setAccountBank(e.target.value); diff --git a/src/pages/KakaoOuathPage.jsx b/src/pages/KakaoOuathPage.jsx index 4e665b6a..fa0eb1fc 100644 --- a/src/pages/KakaoOuathPage.jsx +++ b/src/pages/KakaoOuathPage.jsx @@ -5,16 +5,10 @@ import Loader from '@components/atoms/Loader'; import axios from 'axios'; import routes from '@/constant/routes'; import { loginSuccessMessage, unknownErrorMessage } from '@/utils/alert'; -// import { useQuery } from '@tanstack/react-query'; -// import getLoginInfo from '@/apis/login'; // 리다이렉팅 처리 화면 const KakaoOuathPage = () => { const navigate = useNavigate(); - // const { data } = useQuery(['getLoginInfo'], getLoginInfo); - // 로그인 완료시 로그인 성공 메시지를 띄우고 유저 정보를 받아옴(토큰 등) - // 그리고 로그인 완료 처리를 하고, 액세스 토큰을 계속 담아 보냄 - // 로그인 완료되면 홈 페이지로 이동시킴 // 회원가입 유무에 따라 2가지로 분기됨 // 회원가입 O - 토큰을 저장하고 바로 로그인 처리하고 홈페이지 이동 @@ -46,21 +40,6 @@ const KakaoOuathPage = () => { }); }, []); - // if (data) { - // const status = data.data.success; - // if (status) { - // const userInfo = data.data.response; - // const { userAuth, AccessToken } = userInfo; - // localStorage.setItem('accessToken', AccessToken); - // localStorage.setItem('userAuth', userAuth); - // if (localStorage.getItem('userAuth') === 'GUEST') { - // navigate(routes.registerBank); - // } else { - // Swal.fire(loginSuccessMessage).then(routes.home); - // } - // } - // } - return (
From 59dad031587c59ff8d83bece1acbdec907f97354 Mon Sep 17 00:00:00 2001 From: rktdnjs Date: Fri, 10 Nov 2023 06:57:07 +0900 Subject: [PATCH 13/13] =?UTF-8?q?[comment]=20:=20MyPage=20=EC=9E=91?= =?UTF-8?q?=EC=84=B1=20&=20=EC=88=98=EB=9D=BD=ED=95=9C=20=EA=B3=B5?= =?UTF-8?q?=EA=B3=A0=EA=B8=80=20=EC=A3=BC=EC=84=9D=20&=20=EB=8D=94?= =?UTF-8?q?=EB=AF=B8=EB=8D=B0=EC=9D=B4=ED=84=B0=20=EC=82=AD=EC=A0=9C=20?= =?UTF-8?q?=EB=B0=8F=20=EB=94=94=EB=B2=84=EA=B9=85=EC=9A=A9=20useEffect=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - MyPage 작성 & 수락한 공고글 + 상세페이지 - 공고상세페이지에도 디버깅용 useEffect 추가 --- src/pages/ArticleDetailPage.jsx | 30 ++----- .../mypage/MyPagePickupArticleDetailPage.jsx | 41 +++------ .../mypage/MyPagePickupArticleListPage.jsx | 88 ++----------------- .../mypage/MyPageWritenArticleDetailPage.jsx | 65 +++----------- .../mypage/MyPageWritenArticleListPage.jsx | 88 ++----------------- 5 files changed, 49 insertions(+), 263 deletions(-) diff --git a/src/pages/ArticleDetailPage.jsx b/src/pages/ArticleDetailPage.jsx index 0f342987..87f23766 100644 --- a/src/pages/ArticleDetailPage.jsx +++ b/src/pages/ArticleDetailPage.jsx @@ -9,34 +9,14 @@ import { useQuery } from '@tanstack/react-query'; import { getArticleDetail } from '@/apis/articleDetail.js'; const ArticleDetailPage = () => { - // 샘플데이터 - // const sample = { - // boardId: 1, - // shopName: '스타벅스 전대후문점', - // destination: '공과대학 7호관', - // beverage: [ - // { - // name: '아이스 아메리카노 1잔', - // }, - // { - // name: '핫 아메리카노 1잔', - // }, - // ], - // tip: 3000, - // request: '1층 도착하시면 연락주세요!', - // finishedAt: 15468965196, - // pickerBank: '농협', - // pickerAccount: '00000000000000', - // arriveTime: '14시 20분 도착예정', - // pickerPhoneNumber: '010-1234-1234', - // isRequester: false, - // same: false, - // }; - const { id } = useParams(); const { data } = useQuery([`article/${id}`], () => getArticleDetail(id)); const article = data?.data.response; - // const article = sample; + + // useQuery data 디버깅용 + useEffect(() => { + console.log(data); + }, [data]); /* eslint no-else-return: "error" */ const showDetailPage = (article) => { diff --git a/src/pages/mypage/MyPagePickupArticleDetailPage.jsx b/src/pages/mypage/MyPagePickupArticleDetailPage.jsx index 56d22df1..ba256f88 100644 --- a/src/pages/mypage/MyPagePickupArticleDetailPage.jsx +++ b/src/pages/mypage/MyPagePickupArticleDetailPage.jsx @@ -1,39 +1,24 @@ -import React from 'react'; +import React, { useEffect } from 'react'; import PickerMatchTemplate from '@components/templates/articleDetail/PickerMatchTemplate'; -// import { getMyPagePickupArticleDetail } from '@/apis/ArticleDetail'; -// import { useQuery } from '@tanstack/react-query'; -// import { useParams } from 'react-router-dom'; +import { useQuery } from '@tanstack/react-query'; +import { useParams } from 'react-router-dom'; +import { getMyPagePickupArticleDetail } from '@/apis/ArticleDetail'; const MyPagePickupArticleDetailPage = () => { - const data = { - success: true, - response: { - shopName: '스타벅스 전대후문점', - destination: '공과대학 7호관', - beverage: [ - { - name: '아이스 아메리카노 1잔', - }, - { - name: '핫 아메리카노 1잔', - }, - ], - tip: 3000, - request: '1층 도착하시면 연락주세요!', - finishedAt: 15468965196, - }, - error: null, - }; - // useParams + useQuery로 데이터를 받아와서 // data를 data?.response로 받아서 PickerMatchTemplate으로 보내주면 됨 - // const { id } = useParams(); - // const { data } = useQuery(['getMyPagePickupArticleDetail'], () => getMyPagePickupArticleDetail(id)); - // const article = data?.response; + const { id } = useParams(); + const { data } = useQuery(['getMyPagePickupArticleDetail'], () => getMyPagePickupArticleDetail(id)); + const articles = data?.response?.content; + + // useQuery data 디버깅용 + useEffect(() => { + console.log(data); + }, [data]); return (
- +
); }; diff --git a/src/pages/mypage/MyPagePickupArticleListPage.jsx b/src/pages/mypage/MyPagePickupArticleListPage.jsx index 59242174..f5ad2185 100644 --- a/src/pages/mypage/MyPagePickupArticleListPage.jsx +++ b/src/pages/mypage/MyPagePickupArticleListPage.jsx @@ -1,90 +1,20 @@ -import React from 'react'; +import React, { useEffect } from 'react'; import OtherNav from '@components/atoms/nav/OtherNav'; import MyPagePickupArticleCards from '@components/molecules/MyPagePickupArticleCards'; -// import { useQuery } from '@tanstack/react-query'; -// import { getPickupArticles } from '@/apis/article'; +import { useQuery } from '@tanstack/react-query'; +import { getPickupArticles } from '@/apis/article'; const PickupArticlePage = () => { // 픽업한 공고글 목록 조회(마이페이지) 요청 // 데이터를 받아와서 공고글 목록을 articles 변수에 담고 // MyPagePickupArticleCards로 articles를 props로 넘겨주면 끝 - // const { data } = useQuery(['getPickerArticles'], () => getPickerArticles()); - // const articles = data?.response?.content; + const { data } = useQuery(['getPickupArticles'], () => getPickupArticles()); + const articles = data?.response?.content; - const articles = [ - { - boardId: 9, - shopName: '전남대 후문 더벤티', - destination: '공과대학 7호관', - finishedAt: 1696992289, - tip: 1500, - isMatch: true, - }, - { - boardId: 8, - shopName: '전남대 후문 스타벅스', - destination: '공과대학 7호관', - finishedAt: 1696992289, - tip: 1500, - isMatch: true, - }, - { - boardId: 7, - shopName: '전남대 후문 더벤티', - destination: '공과대학 6호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: true, - }, - { - boardId: 6, - shopName: '전남대 후문 이디야', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1500, - isMatch: true, - }, - { - boardId: 5, - shopName: '전남대 후문 공차', - destination: '공과대학 7호관', - finishedAt: 1696992289, - tip: 1000, - isMatch: true, - }, - { - boardId: 4, - shopName: '전남대 후문 스타벅스', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: true, - }, - { - boardId: 3, - shopName: '전남대 후문 스타벅스', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: true, - }, - { - boardId: 2, - shopName: '전남대 후문 이디야', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: true, - }, - { - boardId: 1, - shopName: '전남대 후문 공차', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: true, - }, - ]; + // useQuery data 디버깅용 + useEffect(() => { + console.log(data); + }, [data]); return (
diff --git a/src/pages/mypage/MyPageWritenArticleDetailPage.jsx b/src/pages/mypage/MyPageWritenArticleDetailPage.jsx index 39c0cb92..dcabbf35 100644 --- a/src/pages/mypage/MyPageWritenArticleDetailPage.jsx +++ b/src/pages/mypage/MyPageWritenArticleDetailPage.jsx @@ -1,61 +1,22 @@ -import React from 'react'; +import React, { useEffect } from 'react'; import WriterMatchTemplate from '@components/templates/articleDetail/WriterMatchTemplate'; import WriterNoMatchTemplate from '@components/templates/articleDetail/WriterNoMatchTemplate'; -// import { getMyPageWritenArticleDetail } from '@/apis/articleDetail'; -// import { useQuery } from '@tanstack/react-query'; -// import { useParams } from 'react-router-dom'; +import { useQuery } from '@tanstack/react-query'; +import { useParams } from 'react-router-dom'; +import { getMyPageWritenArticleDetail } from '@/apis/articleDetail'; const MyPageWritenArticleDetailPage = () => { // 상세 페이지 API 요청을 통해 받아온 데이터 - // 매칭 안된 경우 - const data = { - success: true, - response: { - boardId: 6, - shopName: '메가MGC', - destination: '전남대 공대7 222호관', - beverage: [ - { - name: '카페라떼', - }, - ], - tip: 2000, - request: '빨리 와주세요6', - finishedAt: 1699201131, - isMatch: false, - }, - error: null, - }; - - // 매칭 된 경우 - // const data = { - // success: true, - // response: { - // boardId: 3, - // shopName: '더벤티', - // destination: '전남대 공대7 219호관', - // beverage: [ - // { - // name: '아메리카노', - // }, - // ], - // tip: 2000, - // request: '빨리 와주세요3', - // finishedAt: 1699201132, - // isMatch: true, - // pickerBank: '신한은행', - // pickerAccount: '000-0000-0000', - // arrivalTime: 1708820452, - // pickerPhoneNumber: '010-0000-0000', - // }, - // error: null, - // }; - // useParams + useQuery로 데이터를 받아와서 // data를 data?.response로 받아서 WriterMatchTemplate & WriterNoMatchTemplate으로 보내주면 됨 - // const { id } = useParams(); - // const { data } = useQuery(['getMyPageWritenArticleDetail'], () => getMyPageWritenArticleDetail(id)); - // const post = data?.response; + const { id } = useParams(); + const { data } = useQuery(['getMyPageWritenArticleDetail'], () => getMyPageWritenArticleDetail(id)); + const articleData = data?.response; + + // useQuery data 디버깅용 + useEffect(() => { + console.log(data); + }, [data]); const showDetailPage = (article) => { // 작성자이고 매칭됐을 때 @@ -68,7 +29,7 @@ const MyPageWritenArticleDetailPage = () => { return (
-
{showDetailPage(data?.response)}
+
{showDetailPage(articleData)}
); }; diff --git a/src/pages/mypage/MyPageWritenArticleListPage.jsx b/src/pages/mypage/MyPageWritenArticleListPage.jsx index 397952b0..526a0dde 100644 --- a/src/pages/mypage/MyPageWritenArticleListPage.jsx +++ b/src/pages/mypage/MyPageWritenArticleListPage.jsx @@ -1,90 +1,20 @@ -import React from 'react'; +import React, { useEffect } from 'react'; import OtherNav from '@components/atoms/nav/OtherNav'; import MyPageWritenArticleCards from '@components/molecules/MyPageWritenArticleCards'; -// import { useQuery } from '@tanstack/react-query'; -// import { getWritenArticles } from '@/apis/article'; +import { useQuery } from '@tanstack/react-query'; +import { getWritenArticles } from '@/apis/article'; const WritenArticlePage = () => { // 작성한 공고글 목록 조회(마이페이지) 요청 // 데이터를 받아와서 공고글 목록을 articles 변수에 담고 // MyPagePickupArticleCards로 articles를 props로 넘겨주면 끝 - // const { data } = useQuery(['getWritenArticles'], () => getWritenArticles()); - // const articles = data?.response?.content; + const { data } = useQuery(['getWritenArticles'], () => getWritenArticles()); + const articles = data?.response?.content; - const articles = [ - { - boardId: 9, - shopName: '전남대 후문 더벤티', - destination: '공과대학 7호관', - finishedAt: 1696992289, - tip: 1500, - isMatch: true, - }, - { - boardId: 8, - shopName: '전남대 후문 스타벅스', - destination: '공과대학 7호관', - finishedAt: 1696992289, - tip: 1500, - isMatch: true, - }, - { - boardId: 7, - shopName: '전남대 후문 더벤티', - destination: '공과대학 6호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: false, - }, - { - boardId: 6, - shopName: '전남대 후문 이디야', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1500, - isMatch: true, - }, - { - boardId: 5, - shopName: '전남대 후문 공차', - destination: '공과대학 7호관', - finishedAt: 1696992289, - tip: 1000, - isMatch: false, - }, - { - boardId: 4, - shopName: '전남대 후문 스타벅스', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: false, - }, - { - boardId: 3, - shopName: '전남대 후문 스타벅스', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: false, - }, - { - boardId: 2, - shopName: '전남대 후문 이디야', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: false, - }, - { - boardId: 1, - shopName: '전남대 후문 공차', - destination: '공과대학 7호관', - finishedAt: 1696040640, - tip: 1000, - isMatch: false, - }, - ]; + // useQuery data 디버깅용 + useEffect(() => { + console.log(data); + }, [data]); return (