summaryrefslogtreecommitdiff
path: root/src/lib/home/api/categoryManagementApi.js
diff options
context:
space:
mode:
authortrisusilo48 <tri.susilo@altama.co.id>2024-09-26 11:33:58 +0700
committertrisusilo48 <tri.susilo@altama.co.id>2024-09-26 11:33:58 +0700
commit8fe167e2e03efcd3d7058c22f4efc6db961de71f (patch)
tree9734734660e6088cebd1738d8ac161834630937f /src/lib/home/api/categoryManagementApi.js
parentd4cb977d050a54b9daa1658b6de6e82878ca4c9b (diff)
parent1c56a76f979a6e433d70634b92b1887fb1f19509 (diff)
Merge branch 'new-release' into CR/product_detail
# Conflicts: # package.json # src/utils/solrMapping.js
Diffstat (limited to 'src/lib/home/api/categoryManagementApi.js')
-rw-r--r--src/lib/home/api/categoryManagementApi.js78
1 files changed, 41 insertions, 37 deletions
diff --git a/src/lib/home/api/categoryManagementApi.js b/src/lib/home/api/categoryManagementApi.js
index 0aeb2aac..2ff4fdfc 100644
--- a/src/lib/home/api/categoryManagementApi.js
+++ b/src/lib/home/api/categoryManagementApi.js
@@ -1,40 +1,44 @@
export const fetchCategoryManagementSolr = async () => {
- let sort ='sort=sequence_i asc';
- try {
- const response = await fetch(`/solr/category_management/query?q=*:*&q.op=OR&indent=true&${sort}&&rows=20`);
- if (!response.ok) {
- throw new Error(`HTTP error! status: ${response.status}`);
- }
- const data = await response.json();
- const promotions = await map(data.response.docs);
- return promotions;
- } catch (error) {
- console.error("Error fetching promotion data:", error);
- return [];
+ let sort = 'sort=sequence_i asc';
+ try {
+ const response = await fetch(
+ `/solr/category_management/query?q=*:*&q.op=OR&indent=true&${sort}&&rows=20`
+ );
+ if (!response.ok) {
+ throw new Error(`HTTP error! status: ${response.status}`);
+ }
+ const data = await response.json();
+ const promotions = await map(data.response.docs);
+ return promotions;
+ } catch (error) {
+ console.error('Error fetching promotion data:', error);
+ return [];
+ }
+};
+
+const map = async (promotions) => {
+ return promotions.map((promotion) => {
+ let parsedCategories = promotion.categories.map((category) => {
+ // Parse string JSON utama
+ let parsedCategory = JSON.parse(category);
+
+ // Parse setiap elemen di child_frontend_id_i jika ada
+ if (parsedCategory.child_frontend_id_i) {
+ parsedCategory.child_frontend_id_i =
+ parsedCategory.child_frontend_id_i.map((child) => JSON.parse(child));
}
+
+ return parsedCategory;
+ });
+ let productMapped = {
+ id: promotion.id,
+ name: promotion.name_s,
+ image: promotion.image_s,
+ sequence: promotion.sequence_i,
+ numFound: promotion.numFound_i,
+ categories: parsedCategories,
+ category_id: promotion.category_id_i,
};
-
- const map = async (promotions) => {
- return promotions.map((promotion) =>{
- let parsedCategories = promotion.categories.map(category => {
- // Parse string JSON utama
- let parsedCategory = JSON.parse(category);
-
- // Parse setiap elemen di child_frontend_id_i jika ada
- if (parsedCategory.child_frontend_id_i) {
- parsedCategory.child_frontend_id_i = parsedCategory.child_frontend_id_i.map(child => JSON.parse(child));
- }
-
- return parsedCategory;
- });
- let productMapped = {
- id: promotion.id,
- name: promotion.name_s,
- image: promotion.image_s,
- sequence: promotion.sequence_i,
- numFound: promotion.numFound_i,
- categories: parsedCategories
- };
- return productMapped;
- })
- }; \ No newline at end of file
+ return productMapped;
+ });
+};