693 lines
25 KiB
JavaScript
693 lines
25 KiB
JavaScript
//import { authHeader} from './auth';
|
|
import { wrapRequest } from './nav';
|
|
/* eslint-disable no-alert, no-console , no-debugger */
|
|
|
|
const vueAppMagenotApiUrl = process.env.VUE_APP_MAGENTO_API_URL;
|
|
const vueAppCraneOrderUrl = process.env.VUE_APP_CRANE_ORDER_URL;
|
|
const imageLibApiUrl = process.env.VUE_APP_IMAGE_LIB_URL;
|
|
//const vueAppCustomCachePath = process.env.VUE_APP_CUSTOM_CACHE_PATH;
|
|
export const doFetchOrderProductsList = wrapRequest((emailId) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Access-Control-Allow-Origin': '*',
|
|
// ...authHeader()
|
|
}
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crorders?searchCriteria[filter_groups][0][filters][0][field]=customer_email&searchCriteria[filter_groups][0][filters][0][value]=${emailId}`, requestOptions)
|
|
|
|
});
|
|
export const doFetchOrderProduct = wrapRequest((orderId) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Access-Control-Allow-Origin': '*',
|
|
// ...authHeader()
|
|
}
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crorders/${orderId}`, requestOptions)
|
|
|
|
});
|
|
|
|
export const doFetchProductInvoice = async () => {
|
|
let Invoice = {
|
|
|
|
"base_currency_code": "string",
|
|
"base_discount_amount": 0,
|
|
"base_grand_total": 0,
|
|
"base_discount_tax_compensation_amount": 0,
|
|
"base_shipping_amount": 0,
|
|
"base_shipping_discount_tax_compensation_amnt": 0,
|
|
"base_shipping_incl_tax": 0,
|
|
"base_shipping_tax_amount": 0,
|
|
"base_subtotal": 0,
|
|
"base_subtotal_incl_tax": 0,
|
|
"base_tax_amount": 0,
|
|
"base_total_refunded": 0,
|
|
"base_to_global_rate": 0,
|
|
"base_to_order_rate": 0,
|
|
"billing_address_id": 0,
|
|
"can_void_flag": 0,
|
|
"created_at": "string",
|
|
"discount_amount": 0,
|
|
"discount_description": "string",
|
|
"email_sent": 0,
|
|
"entity_id": 0,
|
|
"global_currency_code": "string",
|
|
"grand_total": 32,
|
|
"discount_tax_compensation_amount": 0,
|
|
"increment_id": "string",
|
|
"is_used_for_refund": 0,
|
|
"order_currency_code": "string",
|
|
"order_id": 0,
|
|
"shipping_address_id": 0,
|
|
"shipping_amount": 0,
|
|
"shipping_discount_tax_compensation_amount": 0,
|
|
"shipping_incl_tax": 0,
|
|
"shipping_tax_amount": 0,
|
|
"state": 0,
|
|
"store_currency_code": "string",
|
|
"store_id": 0,
|
|
"store_to_base_rate": 0,
|
|
"store_to_order_rate": 0,
|
|
"subtotal": 32,
|
|
"subtotal_incl_tax": 0,
|
|
"tax_amount": 0,
|
|
"total_qty": 1,
|
|
"transaction_id": "string",
|
|
"updated_at": "string",
|
|
"items": [{
|
|
"additional_data": "string",
|
|
"base_cost": 0,
|
|
"base_discount_amount": 0,
|
|
"base_discount_tax_compensation_amount": 0,
|
|
"base_price": 0,
|
|
"base_price_incl_tax": 0,
|
|
"base_row_total": 0,
|
|
"base_row_total_incl_tax": 0,
|
|
"base_tax_amount": 0,
|
|
"description": "string",
|
|
"discount_amount": 0,
|
|
"entity_id": 0,
|
|
"discount_tax_compensation_amount": 0,
|
|
"name": "ENGRAVED SUN CARD",
|
|
"parent_id": 0,
|
|
"price": 32,
|
|
"price_incl_tax": 0,
|
|
"product_id": 0,
|
|
"row_total": 32,
|
|
"row_total_incl_tax": 0,
|
|
"sku": "CC3700",
|
|
"tax_amount": 0,
|
|
"extension_attributes": {},
|
|
"order_item_id": 0,
|
|
"qty": 1
|
|
}],
|
|
"comments": [{
|
|
"is_customer_notified": 0,
|
|
"parent_id": 0,
|
|
"extension_attributes": {},
|
|
"comment": "string",
|
|
"is_visible_on_front": 0,
|
|
"created_at": "string",
|
|
"entity_id": 0
|
|
}],
|
|
"extension_attributes": {
|
|
"base_customer_balance_amount": 0,
|
|
"customer_balance_amount": 0,
|
|
"base_gift_cards_amount": 0,
|
|
"gift_cards_amount": 0,
|
|
"gw_base_price": "string",
|
|
"gw_price": "string",
|
|
"gw_items_base_price": "string",
|
|
"gw_items_price": "string",
|
|
"gw_card_base_price": "string",
|
|
"gw_card_price": "string",
|
|
"gw_base_tax_amount": "string",
|
|
"gw_tax_amount": "string",
|
|
"gw_items_base_tax_amount": "string",
|
|
"gw_items_tax_amount": "string",
|
|
"gw_card_base_tax_amount": "string",
|
|
"gw_card_tax_amount": "string"
|
|
}
|
|
}
|
|
return Invoice;
|
|
};
|
|
|
|
export const doFetchProductsList = wrapRequest(() => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Authorization': 'Bearer 58rcjzlop08412gs0xa42q3qna21zxo2',
|
|
'Access-Control-Allow-Origin': '*',
|
|
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts?searchCriteria[current_page]=1&searchCriteria[page_size]=27`, requestOptions)
|
|
});
|
|
export const doFetchProductsMedia = wrapRequest((sku) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Authorization': 'Bearer 58rcjzlop08412gs0xa42q3qna21zxo2',
|
|
'Access-Control-Allow-Origin': '*',
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts/${sku}?fields=sku,media_gallery_entries[file]`, requestOptions)
|
|
});
|
|
export const doFetchProductsAttributes = wrapRequest((sku) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Authorization': 'Bearer 58rcjzlop08412gs0xa42q3qna21zxo2',
|
|
'Access-Control-Allow-Origin': '*',
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts/${sku}?fields=sku,custom_attributes`, requestOptions)
|
|
});
|
|
export const doFetchAttributeList = wrapRequest(() => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json'
|
|
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts/attributes?searchCriteria=&fields=items[attribute_id,attribute_code,options,frontend_labels]`, requestOptions)
|
|
});
|
|
|
|
export const doFetchFilterOptions = async () => {
|
|
let filterList = {
|
|
"items": [{
|
|
"attributeCode": "category",
|
|
"options": [{
|
|
"label": "Black",
|
|
"value": "49"
|
|
},
|
|
{
|
|
"label": "Blue",
|
|
"value": "50"
|
|
},
|
|
{
|
|
"label": "Brown",
|
|
"value": "51"
|
|
},
|
|
{
|
|
"label": "Gray",
|
|
"value": "52"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "personalized",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona® performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "brand",
|
|
"options": [{
|
|
"label": "Normal",
|
|
"value": "3"
|
|
},
|
|
{
|
|
"label": "Cocona® performance fabric",
|
|
"value": "6"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "8"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "8"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "paper weight",
|
|
"options": [{
|
|
"label": "Normal",
|
|
"value": "3"
|
|
},
|
|
{
|
|
"label": "Cocona",
|
|
"value": "6"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "8"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "8"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "product type/form",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "print method",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "paper color",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona® performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "design style",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona® performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "design color",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "theme",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "photo card",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"attributeCode": "price",
|
|
"options": [{
|
|
"label": "Burlap",
|
|
"value": "31"
|
|
},
|
|
{
|
|
"label": "Cocona performance fabric",
|
|
"value": "143"
|
|
},
|
|
{
|
|
"label": "Canvas",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"label": "Wool",
|
|
"value": "144"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
return filterList;
|
|
}
|
|
export const doFetchProductDetails = wrapRequest((sku) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Access-Control-Allow-Origin': '*'
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/product/${sku}`, requestOptions)
|
|
|
|
});
|
|
export const doFetchConfiguredProductDetails = wrapRequest((productId) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Access-Control-Allow-Origin': '*'
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts?searchCriteria[filter_groups][0][filters][0][field]=entity_id&searchCriteria[filter_groups][0][filters][0][value]=${productId}?searchCriteria&fields=items[price,sku,media_gallery_entries,custom_attributes]`, requestOptions)
|
|
|
|
});
|
|
export const doFetchAttributeFilterProducts = wrapRequest(() => {
|
|
/* const requestOptions = {
|
|
method: 'GET',
|
|
headers: { 'Content-type': 'application/json'
|
|
, 'Authorization' : 'Bearer xi7a8g1ey22veysbp6ckan4yjqqkgjys' },
|
|
};
|
|
|
|
return fetch(`${process.env.VUE_APP_MAGENTO_API_URL}/products? searchCriteria[filter_groups][0][filters][0][field]=category_id& searchCriteria[filter_groups][0][filters][0][value]=${categorySearch}& searchCriteria[filter_groups][1][filters][0][field]=${attributeCode}& searchCriteria[filter_groups][1][filters][0][value]=${value}& searchCriteria[filter_groups][1][filters][0][condition_type]=finset`, requestOptions)
|
|
*/
|
|
});
|
|
|
|
export const doFetchSearchProducts = wrapRequest(() => {
|
|
/*const requestOptions = {
|
|
method: 'GET',
|
|
headers: { 'Content-type': 'application/json'
|
|
, 'Authorization' : 'Bearer xi7a8g1ey22veysbp6ckan4yjqqkgjys' },
|
|
};
|
|
|
|
|
|
return fetch(`${process.env.VUE_APP_MAGENTO_API_URL}/products/? searchCriteria[filter_groups][0][filters][0][field]=name& searchCriteria[filter_groups][0][filters][0][value]=%${search}%& searchCriteria[filter_groups][0][filters][0][condition_type]=like`, requestOptions)*/
|
|
|
|
});
|
|
export const doFetchSortProducts = wrapRequest((pageNo, pageSize, sortBy, categoryIds, productNames, sideFilter) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json'
|
|
},
|
|
};
|
|
let sortFlag = 'ASC';
|
|
if (sortBy === 'relevance') {
|
|
sortFlag = 'DESC';
|
|
}
|
|
let extraAttribute = "";
|
|
if (pageSize != "ALL") {
|
|
extraAttribute = `searchCriteria[pageSize]=${pageSize}&searchCriteria[currentPage]=${pageNo}&`;
|
|
}
|
|
if (categoryIds) {
|
|
/* let nameSearchQuery = "";
|
|
|
|
|
|
//side filter//
|
|
if (sideFilter != 'e30=') {
|
|
let filtertoNormal = JSON.parse(atob(sideFilter))
|
|
Object.getOwnPropertyNames(filtertoNormal).forEach((key, index) => {
|
|
nameSearchQuery += `searchCriteria[filter_groups][${index + 2}][filters][0][field]=${key}&searchCriteria[filter_groups][${index + 2}][filters][0][value]=${filtertoNormal[key]}&searchCriteria[filter_groups][${index + 2}][filters][0][condition_type]=eq&`;
|
|
})
|
|
}*/
|
|
//side filter end//
|
|
let query = "";
|
|
query = `?searchCriteria[filter_groups][0][filters][0][field]=entity_id&searchCriteria[filter_groups][0][filters][0][value]=${categoryIds}&searchCriteria[filter_groups][0][filters][0][condition_type]=in&searchCriteria[sortOrders][0][field]=${sortBy}&searchCriteria[sortOrders][0][direction]=${sortFlag}`
|
|
console.log('product', `${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts/${query}`);
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts/${query}`, requestOptions)
|
|
|
|
} else {
|
|
let nameSearchQuery = "";
|
|
let filterQuery = "";
|
|
let increment = 0;
|
|
let query = "";
|
|
if (productNames) {
|
|
productNames.split(" ").forEach((name, index) => {
|
|
nameSearchQuery += `searchCriteria[filter_groups][0][filters][${index}][field]=name&searchCriteria[filter_groups][0][filters][${index}][value]=%25${name}%25&searchCriteria[filter_groups][0][filters][${index}][condition_type]=like&`;
|
|
increment++;
|
|
});
|
|
}
|
|
|
|
if (sideFilter != 'e30=') {
|
|
let filtertoNormal = JSON.parse(atob(sideFilter))
|
|
Object.getOwnPropertyNames(filtertoNormal).forEach((key) => {
|
|
filterQuery += `searchCriteria[filter_groups][${increment}][filters][0][field]=${key}&searchCriteria[filter_groups][${increment}][filters][0][value]=${filtertoNormal[key]}&`;
|
|
increment++;
|
|
})
|
|
}
|
|
|
|
|
|
query = `?${extraAttribute}${nameSearchQuery}${filterQuery}searchCriteria[filter_groups][${increment}][filters][0][field]=status&searchCriteria[filter_groups][${increment}][filters][0][value]=1&searchCriteria[filter_groups][${increment}][filters][0][condition_type]=eq&searchCriteria[sortOrders][0][field]=${sortBy}&searchCriteria[sortOrders][0][direction]=DESC`;
|
|
|
|
console.log('productNames', `${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts/${query}`);
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts/${query}`, requestOptions)
|
|
}
|
|
|
|
});
|
|
export const doFetchCategoryList = wrapRequest(() => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json'
|
|
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crcategories`, requestOptions)
|
|
});
|
|
/*export const doFetchCategoryList = wrapRequest(() => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
};
|
|
return fetch(`${vueAppCustomCachePath}/category.json`, requestOptions)
|
|
});*/
|
|
export const dofetchCategoryListIdWise = wrapRequest(() => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json'
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crcategories/list?searchCriteria&fields=items[id,parent_id,name,custom_attributes]`, requestOptions)
|
|
});
|
|
export const doFetchCatelogProducts = wrapRequest((searchCriteria) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: { 'Content-type': 'application/json' }
|
|
};
|
|
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/suggestion?q=${searchCriteria}`, requestOptions);
|
|
});
|
|
|
|
export const doFetchRecentlyViewedList = wrapRequest((sku) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json'
|
|
},
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crproducts?searchCriteria[filter_groups][0][filters][0][field]=sku&searchCriteria[filter_groups][0][filters][0][value]=${sku}&searchCriteria[filter_groups][0][filters][0][condition_type]=in&searchCriteria[sortOrders][0][direction]=ASC`, requestOptions)
|
|
});
|
|
export const doSideBarFilter = wrapRequest((pageNo, pageSize, sortBy, categoryId, sideFilter, search) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json'
|
|
},
|
|
};
|
|
|
|
let extraAttribute = "";
|
|
if (pageSize != "ALL") {
|
|
extraAttribute = `searchCriteria[pageSize]=${pageSize}&searchCriteria[currentPage]=${pageNo - 1}&`;
|
|
}
|
|
|
|
let sortFlag = 'ASC';
|
|
if (sortBy === 'relevance') {
|
|
sortFlag = 'DESC';
|
|
}
|
|
|
|
if (categoryId) {
|
|
let nameSearchQuery = "";
|
|
if (sideFilter != 'e30=') {
|
|
let filtertoNormal = JSON.parse(atob(sideFilter))
|
|
Object.getOwnPropertyNames(filtertoNormal).forEach((key, index) => {
|
|
nameSearchQuery += `searchCriteria[filter_groups][${index + 2}][filters][0][field]=${key}&searchCriteria[filter_groups][${index + 2}][filters][0][value]=${filtertoNormal[key]}&`;
|
|
})
|
|
}
|
|
|
|
console.log('searchCat', `${vueAppMagenotApiUrl}/rest/crn_retailer/V1/search?searchCriteria[filter_groups][0][filters][0][field]=category_ids&searchCriteria[filter_groups][0][filters][0][value]=${categoryId}&searchCriteria[filter_groups][1][filters][0][field]=visibility&searchCriteria[filter_groups][1][filters][0][value]=4&${nameSearchQuery}${extraAttribute}searchCriteria[sortOrders][0][field]=${sortBy}&searchCriteria[sortOrders][0][direction]=${sortFlag}&searchCriteria[requestName]=catalog_view_container`);
|
|
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/search?searchCriteria[filter_groups][0][filters][0][field]=category_ids&searchCriteria[filter_groups][0][filters][0][value]=${categoryId}&searchCriteria[filter_groups][1][filters][0][field]=visibility&searchCriteria[filter_groups][1][filters][0][value]=4&${nameSearchQuery}${extraAttribute}searchCriteria[sortOrders][0][field]=${sortBy}&searchCriteria[sortOrders][0][direction]=${sortFlag}&searchCriteria[requestName]=catalog_view_container`, requestOptions);
|
|
|
|
} else if (search) {
|
|
let nameSearchQuery = "";
|
|
let filterQuery = "";
|
|
let increment = 0;
|
|
/* if (search) {
|
|
search.split(" ").forEach((name, index) => {
|
|
nameSearchQuery += `searchCriteria[filter_groups][0][filters][${index}][field]=name&searchCriteria[filter_groups][0][filters][${index}][value]=%25${name}%25&searchCriteria[filter_groups][0][filters][${index}][condition_type]=like&`;
|
|
increment++;
|
|
});
|
|
}*/
|
|
if (search) {
|
|
nameSearchQuery += `searchCriteria[filter_groups][0][filters][0][field]=search_term&searchCriteria[filter_groups][0][filters][0][value]=${search}&`;
|
|
increment++;
|
|
}
|
|
if (sideFilter != 'e30=') {
|
|
let filtertoNormal = JSON.parse(atob(sideFilter))
|
|
Object.getOwnPropertyNames(filtertoNormal).forEach((key) => {
|
|
filterQuery += `searchCriteria[filter_groups][${increment}][filters][0][field]=${key}&searchCriteria[filter_groups][${increment}][filters][0][value]=${filtertoNormal[key]}&`;
|
|
increment++;
|
|
})
|
|
}
|
|
console.log('search', `${vueAppMagenotApiUrl}/rest/crn_retailer/V1/search?${nameSearchQuery}${filterQuery}searchCriteria[filter_groups][${increment}][filters][0][field]=visibility&searchCriteria[filter_groups][${increment}][filters][0][value]=4&${extraAttribute}searchCriteria[sortOrders][0][field]=${sortBy}&searchCriteria[sortOrders][0][direction]=${sortFlag}&searchCriteria[requestName]=quick_search_container`);
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/search?${nameSearchQuery}${filterQuery}searchCriteria[filter_groups][${increment}][filters][0][field]=visibility&searchCriteria[filter_groups][${increment}][filters][0][value]=4&${extraAttribute}searchCriteria[sortOrders][0][field]=${sortBy}&searchCriteria[sortOrders][0][direction]=${sortFlag}&searchCriteria[requestName]=quick_search_container`, requestOptions);
|
|
}
|
|
});
|
|
|
|
export const doFetchPartPrice = wrapRequest((part) => {
|
|
const requestOptions = {
|
|
method: 'POST',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Access-Control-Allow-Origin': '*',
|
|
},
|
|
body: JSON.stringify(part)
|
|
};
|
|
return fetch(`${vueAppCraneOrderUrl}/pricer/price`, requestOptions)
|
|
});
|
|
|
|
export const doPlaceCraneOrder = wrapRequest((order) => {
|
|
const requestOptions = {
|
|
method: 'POST',
|
|
headers: {
|
|
'Content-type': 'application/json; charset=utf-8',
|
|
},
|
|
body: JSON.stringify(order)
|
|
};
|
|
return fetch(`${vueAppCraneOrderUrl}/Incoming/input`, requestOptions)
|
|
});
|
|
export const doPatchOne = wrapRequest((cms) => {
|
|
let date = new Date().toISOString();
|
|
cms.requested_at = date;
|
|
const requestOptions = {
|
|
method: 'PATCH',
|
|
headers: {
|
|
'Content-Type': 'application/json', 'Accept': 'application/vnd.pgrst.object+json',
|
|
'Prefer': 'return=representation'
|
|
},
|
|
body: JSON.stringify(cms)
|
|
};
|
|
return fetch(`${imageLibApiUrl}/magento_sync?element=eq.${cms.element}`, requestOptions)
|
|
})
|
|
|
|
export const doFetchProductTags = wrapRequest((sku) => {
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: { 'Content-type': 'application/json', 'Accept': 'application/vnd.pgrst.object+json', },
|
|
};
|
|
return fetch(`${imageLibApiUrl}/product?sku=eq.${sku}&select=tags,sku`, requestOptions);
|
|
})
|
|
|
|
|
|
export const doFetchOrderHistory = wrapRequest((obj) => {
|
|
let query = "";
|
|
query = `searchCriteria[pageSize]=5000&searchCriteria[currentPage]=1&searchCriteria[sortOrders][0][field]=created_at&searchCriteria[sortOrders][0][direction]=DESC&searchCriteria[filter_groups][0][filters][0][field]=customer_id&searchCriteria[filter_groups][0][filters][0][value]=${obj.customerId}&searchCriteria[filter_groups][0][filters][0][condition_type]=eq`;
|
|
if(obj.incrementId){
|
|
query = `&searchCriteria[filter_groups][1][filters][0][field]=increment_id&searchCriteria[filter_groups][1][filters][0][value]=${obj.incrementId}&searchCriteria[filter_groups][1][filters][0][condition_type]=eq`
|
|
}
|
|
const requestOptions = {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-type': 'application/json',
|
|
'Access-Control-Allow-Origin': '*',
|
|
}
|
|
};
|
|
return fetch(`${vueAppMagenotApiUrl}/rest/crn_retailer/V1/crorders?${query}`, requestOptions)
|
|
}); |