updating API call method
This commit is contained in:
parent
e30a4e94cd
commit
74a0b66071
12 changed files with 88 additions and 7 deletions
11
package-lock.json
generated
11
package-lock.json
generated
|
|
@ -11,6 +11,7 @@
|
|||
"axios": "^0.21.4",
|
||||
"bootstrap": "^5.1.1",
|
||||
"core-js": "^3.6.5",
|
||||
"http-status-codes": "^2.1.4",
|
||||
"vue": "^3.0.0",
|
||||
"vue-router": "^4.0.11",
|
||||
"vuex": "^4.0.2",
|
||||
|
|
@ -7912,6 +7913,11 @@
|
|||
"npm": ">=1.3.7"
|
||||
}
|
||||
},
|
||||
"node_modules/http-status-codes": {
|
||||
"version": "2.1.4",
|
||||
"resolved": "https://registry.npmjs.org/http-status-codes/-/http-status-codes-2.1.4.tgz",
|
||||
"integrity": "sha512-MZVIsLKGVOVE1KEnldppe6Ij+vmemMuApDfjhVSLzyYP+td0bREEYyAoIw9yFePoBXManCuBqmiNP5FqJS5Xkg=="
|
||||
},
|
||||
"node_modules/https-browserify": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
|
||||
|
|
@ -21961,6 +21967,11 @@
|
|||
"sshpk": "^1.7.0"
|
||||
}
|
||||
},
|
||||
"http-status-codes": {
|
||||
"version": "2.1.4",
|
||||
"resolved": "https://registry.npmjs.org/http-status-codes/-/http-status-codes-2.1.4.tgz",
|
||||
"integrity": "sha512-MZVIsLKGVOVE1KEnldppe6Ij+vmemMuApDfjhVSLzyYP+td0bREEYyAoIw9yFePoBXManCuBqmiNP5FqJS5Xkg=="
|
||||
},
|
||||
"https-browserify": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@
|
|||
"axios": "^0.21.4",
|
||||
"bootstrap": "^5.1.1",
|
||||
"core-js": "^3.6.5",
|
||||
"http-status-codes": "^2.1.4",
|
||||
"vue": "^3.0.0",
|
||||
"vue-router": "^4.0.11",
|
||||
"vuex": "^4.0.2",
|
||||
|
|
|
|||
60
src/global-methods.js
Normal file
60
src/global-methods.js
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
import axios from 'axios';
|
||||
import { StatusCodes } from 'http-status-codes';
|
||||
|
||||
export default {
|
||||
callHttpClient({
|
||||
method,
|
||||
endpoint,
|
||||
payload,
|
||||
responseType = {},
|
||||
ignoreErrors = false
|
||||
}) {
|
||||
return new Promise((resolve, reject) => {
|
||||
// Grab our accessToken from Okta.
|
||||
const accessToken = this.getBearerTokenForStorage();
|
||||
|
||||
// Merge payload with analytics data
|
||||
const payloadAndAnalyticsData = Object.assign({}, payload, {
|
||||
AppName: "Agency Advantage Dashboard"
|
||||
});
|
||||
|
||||
axios({
|
||||
method: method,
|
||||
url: endpoint,
|
||||
//data: payloadAndAnalyticsData,
|
||||
crossdomain: true,
|
||||
responseType: responseType
|
||||
// headers: {
|
||||
// Authorization: `Bearer ${accessToken}`
|
||||
// }
|
||||
})
|
||||
.then(function(response) {
|
||||
if (response.data.isSuccess || (response.status == 200)) {
|
||||
resolve(response);
|
||||
} else {
|
||||
reject(response);
|
||||
}
|
||||
}, error => {
|
||||
let statusCode = error.response.status;
|
||||
let message = 'Sorry, something happened on our end. Please try again';
|
||||
if (!ignoreErrors) {
|
||||
switch (statusCode) {
|
||||
case StatusCodes.UNAUTHORIZED:
|
||||
this.createPromiseRejection("Unauthorized, routing back to login page.", error.response, reject, true, false);
|
||||
break;
|
||||
case StatusCodes.BAD_REQUEST:
|
||||
this.createPromiseRejection(error.response.data, error.response, reject, true, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
getBearerTokenForStorage() {
|
||||
try {
|
||||
return JSON.parse(localStorage.getItem('okta-token-storage')).accessToken.accessToken;
|
||||
} catch (error) {
|
||||
return '';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
import { createWebHistory, createRouter } from "vue-router";
|
||||
import Home from "@/layouts/ContentSite/Home.vue";
|
||||
import SelectYear from "@/layouts/CarFunnel/SelectCar/SelectYear.vue";
|
||||
import SelectMake from "@/layouts/CarFunnel/SelectCar/SelectMake.vue";
|
||||
import SelectModel from "@/layouts/CarFunnel/SelectCar/SelectModel.vue";
|
||||
import SelectStyle from "@/layouts/CarFunnel/SelectCar/SelectStyle.vue";
|
||||
import SelectDamage from "@/layouts/CarFunnel/Damage/SelectDamage.vue";
|
||||
import SelectYear from "@/layouts/FMG/Vehicle/SelectYear.vue";
|
||||
import SelectMake from "@/layouts/FMG/Vehicle/SelectMake.vue";
|
||||
import SelectModel from "@/layouts/FMG/Vehicle/SelectModel.vue";
|
||||
import SelectStyle from "@/layouts/FMG/Vehicle/SelectStyle.vue";
|
||||
import SelectDamage from "@/layouts/FMG/Damage/SelectDamage.vue";
|
||||
|
||||
const routes = [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import { createStore } from 'vuex';
|
||||
import createPersistedState from 'vuex-persistedstate';
|
||||
import axios from 'axios';
|
||||
import globalMethods from '../global-methods'
|
||||
import router from '@/router';
|
||||
|
||||
export default createStore({
|
||||
|
|
@ -22,7 +23,7 @@ export default createStore({
|
|||
mutations: {
|
||||
updateYear(state, data){
|
||||
state.year = data.year;
|
||||
state.makes = data.makes.data.Result;
|
||||
state.makes = data.makes;
|
||||
state.slideTransition = 'slide'
|
||||
},
|
||||
updateMake(state, data){
|
||||
|
|
@ -49,7 +50,15 @@ export default createStore({
|
|||
},
|
||||
actions: {
|
||||
async selectYear(context, year){
|
||||
const makes = await axios.get(`https://mockey.qa.sagaws.net/service/makes/year=${year}`);
|
||||
let makes = [];
|
||||
await globalMethods.callHttpClient({
|
||||
method: 'GET',
|
||||
endpoint: `https://mockey.qa.sagaws.net/service/makes/year=${year}`,
|
||||
payload: {},
|
||||
})
|
||||
.then(function (response) {
|
||||
makes = response.data.Result;
|
||||
});
|
||||
context.commit('updateYear', {year, makes});
|
||||
router.push(`/select-make?year=${year}`);
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in a new issue