UNPKG

wholesale-vuex

Version:
87 lines (83 loc) 3 kB
import { auth, nav } from 'oak-vuex' const { getHubAuthHeader } = auth const { wrapRequest, wrapRequestWithRange } = nav const hubName = process.env.VUE_APP_RETAINHUB_NAME const retainWholesaleApiUrl = process.env.VUE_APP_RETAINHUB_WHOLESALE_API_URL const doFetchAllorderProcessingIo = wrapRequest(({ sessionId ,appId}) => { const requestOptions = { method: 'GET', headers: { 'Content-type': 'application/json', ...getHubAuthHeader(hubName) }, } ; return fetch(`${retainWholesaleApiUrl}/wholesale_order_processing_io?session_id=eq.${sessionId}&app_id=eq.${appId}`, requestOptions) }) const doPostOne = wrapRequest((item) => { if(item){ delete item.is_modify; delete item.user_response; delete item.sub_question item.io_input=JSON.stringify(item.io_input); item.io_output=JSON.stringify(item.io_output); } const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/json', 'Accept': 'application/vnd.pgrst.object+json', 'Prefer': 'return=representation', ...getHubAuthHeader(hubName) }, body: JSON.stringify(item) } return fetch(`${retainWholesaleApiUrl}/wholesale_order_processing_io`, requestOptions) }) const doPostMultiple = wrapRequest((items) => { const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/json', 'Prefer': ['resolution=merge-duplicates', 'return=representation'], ...getHubAuthHeader(hubName) }, body: JSON.stringify(items) } return fetch(`${retainWholesaleApiUrl}/wholesale_order_processing_io`, requestOptions) }) const doPatchOne = wrapRequest((item) => { if(item){ delete item.is_modify; delete item.user_response; delete item.sub_question; if(item.io_output.value.order_item && item.io_output.value.order_item.id){ delete item.io_output.value.order_item.id } item.io_input=JSON.stringify(item.io_input); item.io_output=JSON.stringify(item.io_output); } const requestOptions = { method: 'PATCH', headers: { 'Content-Type': 'application/json', 'Accept': 'application/vnd.pgrst.object+json', 'Prefer': 'return=representation', ...getHubAuthHeader(hubName) }, body: JSON.stringify(item) } return fetch(`${retainWholesaleApiUrl}/wholesale_order_processing_io?id=eq.${item.id}`, requestOptions) }) const doDeleteSelected = wrapRequest(({item}) => { const requestOptions = { method: 'DELETE', headers: { 'Content-Type': 'application/json', ...getHubAuthHeader(hubName) }, }; return fetch(`${retainWholesaleApiUrl}/wholesale_order_processing_io?id=in.(${item.id})`, requestOptions) }) export default { doPostOne, doPostMultiple, doPatchOne, doFetchAllorderProcessingIo, doDeleteSelected }