summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pages/api/shop/promo.js6
-rw-r--r--src/pages/shop/promo/[slug].jsx27
-rw-r--r--src/utils/solrMapping.js6
3 files changed, 30 insertions, 9 deletions
diff --git a/src/pages/api/shop/promo.js b/src/pages/api/shop/promo.js
index 61fff4e5..57635958 100644
--- a/src/pages/api/shop/promo.js
+++ b/src/pages/api/shop/promo.js
@@ -49,8 +49,8 @@ export default async function handler(req, res) {
let offset = (page - 1) * limit;
let parameter = [
- // 'facet.field=manufacture_name_s',
- // 'facet.field=category_name',
+ 'facet.field=manufacture_name_s',
+ 'facet.field=category_name',
'facet=true',
'indent=true',
// `facet.query=${escapeSolrQuery(q)}`,
@@ -108,7 +108,9 @@ export default async function handler(req, res) {
let result = await axios(
process.env.SOLR_HOST + '/solr/promotion_program_lines/select?' + parameter.join('&')
);
+ console.log("result",result.data)
try {
+ console.log("result.data.response.docs",result.data.response.docs)
result.data.response.products = promoMappingSolr(
result.data.response.docs
);
diff --git a/src/pages/shop/promo/[slug].jsx b/src/pages/shop/promo/[slug].jsx
index 71ce8344..169ea0b5 100644
--- a/src/pages/shop/promo/[slug].jsx
+++ b/src/pages/shop/promo/[slug].jsx
@@ -38,14 +38,14 @@ export default function PromoDetail() {
const [loading, setLoading] = useState(true);
const { isMobile, isDesktop } = useDevice()
// const [brands, setBrands] = useState([]);
- const [categories, setCategories] = useState([]);
+ // const [categories, setCategories] = useState([]);
const [brandValues, setBrandValues] = useState([]);
const [categoryValues, setCategoryValues] = useState([]);
const [orderBy, setOrderBy] = useState(router.query?.orderBy);
const popup = useActive();
const prefixUrl = `/shop/promo/${slug}`
const [queryFinal, setQueryFinal] = useState({});
- const [limit, setLimit] = useState(30);
+ const [limit, setLimit] = useState(22);
const [q, setQ] = useState('*');
const [finalQuery, setFinalQuery] = useState({fq: `type_value_s:${slug}`});
const [products, setProducts] = useState(null);
@@ -78,18 +78,35 @@ export default function PromoDetail() {
const brands = [];
for (
let i = 0;
- i < productSearch.data?.facetCounts?.facetFields?.manufactureNameS.length;
+ i < productSearch.data?.facet_counts?.facet_fields?.manufacture_name_s.length;
i += 2
) {
const brand =
- productSearch.data?.facetCounts?.facetFields?.manufactureNameS[i];
+ productSearch.data?.facet_counts?.facet_fields?.manufacture_name_s[i];
const qty =
- productSearch.data?.facetCounts?.facetFields?.manufactureNameS[i + 1];
+ productSearch.data?.facet_counts?.facet_fields?.manufacture_name_s[i + 1];
if (qty > 0) {
brands.push({ brand, qty });
}
}
+ console.log("brands",brands)
+
+ const categories = [];
+ for (
+ let i = 0;
+ i < productSearch.data?.facet_counts?.facet_fields?.category_name.length;
+ i += 2
+ ) {
+ const name = productSearch.data?.facet_counts?.facet_fields?.category_name[i];
+ const qty =
+ productSearch.data?.facet_counts?.facet_fields?.category_name[i + 1];
+ if (qty > 0) {
+ categories.push({ name, qty });
+ }
+ }
+
+
diff --git a/src/utils/solrMapping.js b/src/utils/solrMapping.js
index 637d7c09..15bf3afb 100644
--- a/src/utils/solrMapping.js
+++ b/src/utils/solrMapping.js
@@ -14,11 +14,13 @@ export const promoMappingSolr = (promotions) => {
price: promotion.price_f,
sequence: promotion.sequence_i,
total_qty: promotion.total_qty_i,
- products: JSON.parse(promotion.products_s),
+ products: JSON.parse(promotion.products_s) || '',
product_id: promotion.product_ids[0],
qty_sold_f:promotion.total_qty_sold_f,
- free_products: JSON.parse(promotion.free_products_s),
+ free_products: JSON.parse(promotion.free_products_s)
};
+ console.log("productMapped",productMapped)
+ // console.log("promotions",promotions)
return productMapped;
})
};