UNPKG

procurement-vuex

Version:
106 lines (95 loc) 3.77 kB
import { auth, nav } from 'oak-vuex' const { getHubAuthHeader } = auth const { wrapRequest,wrapEmptyRequest} = nav const hubName = process.env.VUE_APP_RETAINHUB_NAME const retainProcurementApiUrl = process.env.VUE_APP_RETAINHUB_PROCUREMENT_API_URL const doFetchList = wrapRequest(({ appId, purchaseOrderId, sortByDate }) => { const requestOptions = { method: 'GET', headers: { 'Content-Type': 'application/json', ...getHubAuthHeader(hubName) } }; const params = { app_id:`eq.${appId}`, purchase_order_id: `eq.${ purchaseOrderId }` } if (sortByDate) params['order'] = `created_at` const qs = Object.keys(params).map(key => key + '=' + params[key]).join('&'); return fetch(`${retainProcurementApiUrl}/purchase_order_changeset?${qs}`, requestOptions) }) const doPostOne = wrapRequest(({one}) => { // debugger const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/json', 'Prefer': 'return=representation', 'Accept': 'application/vnd.pgrst.object+json', ...getHubAuthHeader(hubName) }, body: JSON.stringify( one ) }; return fetch(`${retainProcurementApiUrl}/purchase_order_changeset`, requestOptions) }) const doFetchOne = wrapRequest(({ changesetId }) => { const requestOptions = { method: 'GET', headers: { 'Content-Type': 'application/json', 'Accept': 'application/vnd.pgrst.object+json', ...getHubAuthHeader(hubName) } }; return fetch(`${retainProcurementApiUrl}/purchase_order_changeset?id=eq.${changesetId}`, requestOptions) }) const doPatchOne = wrapRequest(({params, changesetId}) => { const requestOptions = { method: 'PATCH', headers: { 'Content-Type': 'application/json', 'Accept': 'application/vnd.pgrst.object+json', 'Prefer': 'return=representation', ...getHubAuthHeader(hubName) }, body: JSON.stringify(params) } return fetch(`${retainProcurementApiUrl}/purchase_order_changeset?id=eq.${changesetId}`, requestOptions) }) const doPurchaseOrderReflectChangeset = wrapRequest(({ one }) => { const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/json', ...getHubAuthHeader(hubName) }, body: JSON.stringify(one) }; console.log("do PurchaseOrder reflect changeset requestOptions", requestOptions) let url = `${retainProcurementApiUrl}/rpc/purchase_order_reflect_changeset`; console.log("url", url); return fetch(url, requestOptions) }) const doDeleteChangeset = wrapEmptyRequest(({ changesetId }) => { const requestOptions = { method: 'DELETE', headers: { 'Content-Type': 'application/json', ...getHubAuthHeader(hubName) }, }; return fetch(`${retainProcurementApiUrl}/purchase_order_changeset?id=eq.${changesetId}`, requestOptions) }) const doPurchaseOrderAutomateWithChangeset = wrapRequest(({ poId, poChangesetId, specs }) => { const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/json', ...getHubAuthHeader(hubName) }, body: JSON.stringify({ purchase_order_id: poId, purchase_order_changeset_id: poChangesetId, specs: { document_id: specs.documentId, document_url: specs.documentUrl } }) }; return fetch(`${retainProcurementApiUrl}/rpc/purchase_order_automate_with_changeset`, requestOptions) }) export default { doPostOne,doFetchList,doFetchOne,doPatchOne, doPurchaseOrderReflectChangeset,doDeleteChangeset, doPurchaseOrderAutomateWithChangeset }