From 4c6ad774cbb4be9a28af066c9667bd9765826a75 Mon Sep 17 00:00:00 2001 From: "HATEC\\SPVDEV001" Date: Mon, 18 Sep 2023 11:08:27 +0700 Subject: migrasi category home page ke solr --- src/lib/home/api/categoryHomeApi.js | 7 ++++-- src/lib/home/components/CategoryHome.jsx | 10 ++++---- src/pages/api/shop/product-homepage.js | 43 ++++++++++++++++++++++++++++++++ 3 files changed, 53 insertions(+), 7 deletions(-) create mode 100644 src/pages/api/shop/product-homepage.js (limited to 'src') diff --git a/src/lib/home/api/categoryHomeApi.js b/src/lib/home/api/categoryHomeApi.js index 44b77daa..9e7d1402 100644 --- a/src/lib/home/api/categoryHomeApi.js +++ b/src/lib/home/api/categoryHomeApi.js @@ -1,8 +1,11 @@ import odooApi from '@/core/api/odooApi' +import axios from 'axios' const categoryHomeIdApi = async ({ id }) => { - const dataCategoryHomeId = await odooApi('GET', `/api/v1/product/category-homepage?id=${id}`) - return dataCategoryHomeId + // const dataCategoryHomeIdO = await odooApi('GET', `/api/v1/product/category-homepage?id=${id}`) + // console.log('ini adalah odoo', dataCategoryHomeIdO) + const dataCategoryHomeId = await axios(`${process.env.NEXT_PUBLIC_SELF_HOST}/api/shop/product-homepage?id=` + id) + return dataCategoryHomeId.data } export default categoryHomeIdApi diff --git a/src/lib/home/components/CategoryHome.jsx b/src/lib/home/components/CategoryHome.jsx index 34c28728..9e992640 100644 --- a/src/lib/home/components/CategoryHome.jsx +++ b/src/lib/home/components/CategoryHome.jsx @@ -7,14 +7,14 @@ const CategoryHome = ({ id }) => { return (
- {categoryHome?.data?.length > 0 ? ( + {categoryHome.data ? ( { + let product = await axios( + `${process.env.NEXT_PUBLIC_SELF_HOST}/api/shop/product-detail?id=${id}` + ) + if (product && product.data.length > 0) { + products.push(product.data[0]) + } + }) + ) + let result = respoonseMap(productHomepage, products) + res.status(200).json(result) + } catch (error) { + console.error('Error fetching data from Solr:', error) + res.status(500).json({ error: 'Internal Server Error' }) + } +} + +const respoonseMap = (productHomepage, products) => { + let productMapped ={ + id: productHomepage.id, + sequence: productHomepage.sequence_i, + categoryId: productHomepage.category_id_i, + name: productHomepage.name_s, + image: productHomepage.image_s, + url: productHomepage.url_s, + products: products + } + + return productMapped +} -- cgit v1.2.3