From df4cccb8dcf2cde7fa9d9ccd525682d5edc09d87 Mon Sep 17 00:00:00 2001 From: keeprok Date: Wed, 28 Feb 2024 15:45:55 +0900 Subject: [PATCH 1/4] =?UTF-8?q?PR:review=20api=20=EC=83=9D=EC=84=B1?= =?UTF-8?q?=ED=96=88=EC=8A=B5=EB=8B=88=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/libs/axios/base/review.js | 176 ++++++++++++++++++++++++++++++++++ 1 file changed, 176 insertions(+) create mode 100644 src/libs/axios/base/review.js diff --git a/src/libs/axios/base/review.js b/src/libs/axios/base/review.js new file mode 100644 index 0000000..05e18f0 --- /dev/null +++ b/src/libs/axios/base/review.js @@ -0,0 +1,176 @@ +import { axiosInstance } from "."; + +/** + * 리뷰등록 + * @function + * @parameter payList_idx : number - 리뷰등록 idx + * @parameter title : string - 제목 + * @parameter content: string - 내용 + * @parameter ondo : number - 온도 + * @parameter images : File[] - 이미지 + * @returns {Promise} + * @description 리뷰 등록을 위한 API + * - 온도는 전체 온도 나누기 상품 판매의 갯수입니다. + ex) 전체 온도 70도 / 판매갯수 2 => 35도 + - 요청결과 200("success") || 400("failure") + */ +export const postReviewByIndex = async ({ + payList_idx, + title, + content, + ondo, + images, +}) => { + const response = await axiosInstance.post( + `/review?payList_idx=${payList_idx}`, + { title, content, ondo, images } + ); + + return response; +}; + +/** + * 2.리뷰 목록 조회 + * @function + * @parameter page: number - 조회할 리뷰들의 page + * @description 리뷰들의 목록을 보여주는 api + * - 리뷰 목록을 조회 합니다 + * - { + reviewList: PayList[] +} + +--- 구매 내역 -- +PayList: { + idx: number (payList_idx) + created_at: Date + Product : { + idx: prod_idx + title: stirng + price: number + img_url: string + User: { + nicK_name: string + profile_url: string + socket: string + Ondo: { + ondo: string + } + } + } + Review: Reveiw | null (null 이어야만 리뷰 작성 가능) +} + +-- 리뷰 상세 -- + +Review: { + "title": string, + "content": string, + "ondo": number, + "img_url": string, + "nick_name": string, + "profile_url": string + }, + ReviewImages: [ + { + "img_url":string + } + ] + } + + */ + +export const getReviewList = async ({ page }) => { + const response = await axiosInstance.get("/review", { params: { page } }); + console.log(response.data); + return response.data; +}; + +/** + * 3.리뷰 상세 + * @function + * @parameter review_idx: number - 조회할 리뷰의 idx + * @description 특정한 하나의 review를 나타내는 API + * - 요청한 특정 리뷰가 상세히 조회됩니다 + * - +-- 리뷰상세 -- + +Review: { + "title": string, + "content": string, + "ondo": number, + "img_url": string, + "nick_name": string, + "profile_url": string + }, + ReviewImages: [ + { + "img_url":string + } + ] + } + + +-- 구매내역 -- + +PayList: { + idx: number (payList_idx) + created_at: Date + Product : { + idx: prod_idx + title: stirng + price: numbe + img_url: string + User: { + nicK_name: string + profile_url: string + socket: string + Ondo: { + ondo: string + } + } + } +} + + + */ + +export const getReviewByIndex = async ({ review_idx }) => { + const response = await axiosInstance.get( + `/review/get?review_idx=${review_idx}` + ); + return response.data; +}; +/** + * 4.리뷰 수정 + * @function + * @parameter review_idx : number - 수정할 리뷰의 idx + * @parameter title : string - 새로운 제목 + * @parameter content : string - 새로운 내용 + * @parameter ondo : number - 새로운 온도 + * @parameter img_url: string[] - 새로운 서브 기존 이미지 url[] + * @parameter main_url: stirng - 새로운 메인 기존 이미지 url + * @parameter images: File[] - 새로운 이미지 파일 목록 + * @description 등록 물품 검색을 위한 API + * - images 는 main_url이 있다면 [0]~[3]sub, main_url이 없다면 [0]main, [1~3]sub + * - 요청결과 200("success") || 400("failure") + */ + +export const patchReviewByIndex = async ({ review_idx }) => { + const response = await axiosInstance.patch( + `/review?review_idx=${review_idx}` + ); + return response; +}; +/** + * 5.리뷰 삭제 + * @function + * @parameter review_idx : number - 삭제할 리뷰의 idx + * @description 등록 물품 검색을 위한 API + * - 요청결과 200("success") || 400("failure") + */ +export const deleteReviewByIndex = async ({ review_idx }) => { + const response = await axiosInstance.delete( + `/review?review_idx=${review_idx}` + ); + return response; +}; From 2050637ee2708100b617565a3f3892d2b50e60b7 Mon Sep 17 00:00:00 2001 From: keeprok Date: Thu, 29 Feb 2024 23:03:59 +0900 Subject: [PATCH 2/4] =?UTF-8?q?fix=20:=20=EC=BB=A8=EB=B2=A4=EC=85=98=20?= =?UTF-8?q?=EB=A7=9E=EC=B6=B0=EC=84=9C=20=EC=88=98=EC=A0=95=ED=96=88?= =?UTF-8?q?=EC=8A=B5=EB=8B=88=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/libs/axios/base/review.js | 116 +++++----------------------------- 1 file changed, 17 insertions(+), 99 deletions(-) diff --git a/src/libs/axios/base/review.js b/src/libs/axios/base/review.js index 05e18f0..cd832d1 100644 --- a/src/libs/axios/base/review.js +++ b/src/libs/axios/base/review.js @@ -14,15 +14,16 @@ import { axiosInstance } from "."; ex) 전체 온도 70도 / 판매갯수 2 => 35도 - 요청결과 200("success") || 400("failure") */ -export const postReviewByIndex = async ({ - payList_idx, +export const postReviewByPayListIndex = async ({ + payListIdx, title, content, ondo, images, }) => { const response = await axiosInstance.post( - `/review?payList_idx=${payList_idx}`, + "/review", + { params: { payList_idx: payListIdx } }, { title, content, ondo, images } ); @@ -34,54 +35,10 @@ export const postReviewByIndex = async ({ * @function * @parameter page: number - 조회할 리뷰들의 page * @description 리뷰들의 목록을 보여주는 api - * - 리뷰 목록을 조회 합니다 - * - { - reviewList: PayList[] -} - ---- 구매 내역 -- -PayList: { - idx: number (payList_idx) - created_at: Date - Product : { - idx: prod_idx - title: stirng - price: number - img_url: string - User: { - nicK_name: string - profile_url: string - socket: string - Ondo: { - ondo: string - } - } - } - Review: Reveiw | null (null 이어야만 리뷰 작성 가능) -} - --- 리뷰 상세 -- - -Review: { - "title": string, - "content": string, - "ondo": number, - "img_url": string, - "nick_name": string, - "profile_url": string - }, - ReviewImages: [ - { - "img_url":string - } - ] - } - */ export const getReviewList = async ({ page }) => { const response = await axiosInstance.get("/review", { params: { page } }); - console.log(response.data); return response.data; }; @@ -91,59 +48,18 @@ export const getReviewList = async ({ page }) => { * @parameter review_idx: number - 조회할 리뷰의 idx * @description 특정한 하나의 review를 나타내는 API * - 요청한 특정 리뷰가 상세히 조회됩니다 - * - --- 리뷰상세 -- - -Review: { - "title": string, - "content": string, - "ondo": number, - "img_url": string, - "nick_name": string, - "profile_url": string - }, - ReviewImages: [ - { - "img_url":string - } - ] - } - - --- 구매내역 -- - -PayList: { - idx: number (payList_idx) - created_at: Date - Product : { - idx: prod_idx - title: stirng - price: numbe - img_url: string - User: { - nicK_name: string - profile_url: string - socket: string - Ondo: { - ondo: string - } - } - } -} - - */ -export const getReviewByIndex = async ({ review_idx }) => { - const response = await axiosInstance.get( - `/review/get?review_idx=${review_idx}` - ); +export const getReviewGetByReviewIdx = async ({ reviewIdx }) => { + const response = await axiosInstance.get("/review/get", { + params: { review_idx: reviewIdx }, + }); return response.data; }; /** * 4.리뷰 수정 * @function - * @parameter review_idx : number - 수정할 리뷰의 idx + * @parameter reviewIdx : number - 수정할 리뷰의 idx * @parameter title : string - 새로운 제목 * @parameter content : string - 새로운 내용 * @parameter ondo : number - 새로운 온도 @@ -155,9 +71,11 @@ export const getReviewByIndex = async ({ review_idx }) => { * - 요청결과 200("success") || 400("failure") */ -export const patchReviewByIndex = async ({ review_idx }) => { +export const patchReviewByReviewIdx = async ({ reviewIdx }) => { const response = await axiosInstance.patch( - `/review?review_idx=${review_idx}` + "/review", + { params: { review_idx: reviewIdx } }, + { title, content, ondo, img_url, main_url, images } ); return response; }; @@ -168,9 +86,9 @@ export const patchReviewByIndex = async ({ review_idx }) => { * @description 등록 물품 검색을 위한 API * - 요청결과 200("success") || 400("failure") */ -export const deleteReviewByIndex = async ({ review_idx }) => { - const response = await axiosInstance.delete( - `/review?review_idx=${review_idx}` - ); +export const deleteReviewByReviewIdx = async ({ reviewIdx }) => { + const response = await axiosInstance.delete("/review", { + params: { review_idx: reviewIdx }, + }); return response; }; From 7680a2040470f79244322e0030df2e59526aa90a Mon Sep 17 00:00:00 2001 From: keeprok Date: Fri, 1 Mar 2024 16:03:51 +0900 Subject: [PATCH 3/4] =?UTF-8?q?fix=20:=20=EC=BB=A8=EB=B2=A4=EC=85=98=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/libs/axios/base/review.js | 42 ++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 15 deletions(-) diff --git a/src/libs/axios/base/review.js b/src/libs/axios/base/review.js index cd832d1..e337440 100644 --- a/src/libs/axios/base/review.js +++ b/src/libs/axios/base/review.js @@ -3,18 +3,19 @@ import { axiosInstance } from "."; /** * 리뷰등록 * @function - * @parameter payList_idx : number - 리뷰등록 idx + * @parameter payListIdx : number - 리뷰등록 idx * @parameter title : string - 제목 * @parameter content: string - 내용 * @parameter ondo : number - 온도 * @parameter images : File[] - 이미지 * @returns {Promise} - * @description 리뷰 등록을 위한 API - * - 온도는 전체 온도 나누기 상품 판매의 갯수입니다. + * @description + * - 리뷰 등록을 위한 API + * - 온도는 전체 온도 나누기 상품 판매의 갯수입니다. ex) 전체 온도 70도 / 판매갯수 2 => 35도 - - 요청결과 200("success") || 400("failure") + - 요청결과 200("success") || 400("failure") */ -export const postReviewByPayListIndex = async ({ +export const postReviewByPayListIdx = async ({ payListIdx, title, content, @@ -37,7 +38,7 @@ export const postReviewByPayListIndex = async ({ * @description 리뷰들의 목록을 보여주는 api */ -export const getReviewList = async ({ page }) => { +export const getReviewByPage = async ({ page }) => { const response = await axiosInstance.get("/review", { params: { page } }); return response.data; }; @@ -45,8 +46,9 @@ export const getReviewList = async ({ page }) => { /** * 3.리뷰 상세 * @function - * @parameter review_idx: number - 조회할 리뷰의 idx - * @description 특정한 하나의 review를 나타내는 API + * @parameter reviewIdx: number - 조회할 리뷰의 idx + * @description + * - 특정한 하나의 review를 나타내는 API * - 요청한 특정 리뷰가 상세히 조회됩니다 */ @@ -63,27 +65,37 @@ export const getReviewGetByReviewIdx = async ({ reviewIdx }) => { * @parameter title : string - 새로운 제목 * @parameter content : string - 새로운 내용 * @parameter ondo : number - 새로운 온도 - * @parameter img_url: string[] - 새로운 서브 기존 이미지 url[] - * @parameter main_url: stirng - 새로운 메인 기존 이미지 url + * @parameter imgUrl: string[] - 새로운 서브 기존 이미지 url[] + * @parameter mainUrl: stirng - 새로운 메인 기존 이미지 url * @parameter images: File[] - 새로운 이미지 파일 목록 - * @description 등록 물품 검색을 위한 API + * @description + * - 등록 물품 검색을 위한 API * - images 는 main_url이 있다면 [0]~[3]sub, main_url이 없다면 [0]main, [1~3]sub * - 요청결과 200("success") || 400("failure") */ -export const patchReviewByReviewIdx = async ({ reviewIdx }) => { +export const patchReviewByReviewIdx = async ({ + reviewIdx, + title, + content, + ondo, + img_url: imgUrl, + main_url: mainUrl, + images, +}) => { const response = await axiosInstance.patch( "/review", { params: { review_idx: reviewIdx } }, - { title, content, ondo, img_url, main_url, images } + { title, content, ondo, img_url: imgUrl, main_url: mainUrl, images } ); return response; }; /** * 5.리뷰 삭제 * @function - * @parameter review_idx : number - 삭제할 리뷰의 idx - * @description 등록 물품 검색을 위한 API + * @parameter reviewIdx : number - 삭제할 리뷰의 idx + * @description + * - 등록 물품 검색을 위한 API * - 요청결과 200("success") || 400("failure") */ export const deleteReviewByReviewIdx = async ({ reviewIdx }) => { From c904b2c4b65e6d0963b01c8123256fe72b4dce74 Mon Sep 17 00:00:00 2001 From: keeprok <140785214+keeprok@users.noreply.github.com> Date: Sun, 10 Mar 2024 01:11:36 +0900 Subject: [PATCH 4/4] =?UTF-8?q?fix=20:=20=EC=BB=A8=EB=B2=A4=EC=85=98=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/libs/axios/base/review.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libs/axios/base/review.js b/src/libs/axios/base/review.js index e337440..0219b27 100644 --- a/src/libs/axios/base/review.js +++ b/src/libs/axios/base/review.js @@ -79,8 +79,8 @@ export const patchReviewByReviewIdx = async ({ title, content, ondo, - img_url: imgUrl, - main_url: mainUrl, + imgUrl, + mainUrl, images, }) => { const response = await axiosInstance.patch(