diff --git a/src/api/terminal.js b/src/api/terminal.js new file mode 100644 index 00000000..a575df8d --- /dev/null +++ b/src/api/terminal.js @@ -0,0 +1,34 @@ +import axios from 'axios' + +const TerminalEndpointUrl = 'https://metadata.service.development.therig.onlinefuelslabs.io' + +export function fetchList(query) { + return axios.get(`${TerminalEndpointUrl}/terminals`, { params: query }) +} + +export function fetchTerminal(id) { + return axios.get(`${TerminalEndpointUrl}/terminal/${id}?platform=OLFDE`) +} + +export function createTerminal(data) { + const dto = __dataToDTO(data) + return axios.post(`${TerminalEndpointUrl}/terminals`, dto) +} + +export function updateTerminal(data) { + const dto = __dataToDTO(data) + return axios.put(`${TerminalEndpointUrl}/terminal/${data._id}`, dto) +} + +function __dataToDTO(data) { + return { + 'name': data.name, + 'platform': data.platform || 'OLFDE', + 'addressLine1': data.address.addressLine1, + 'addressLine2': data.address.addressLine2, + 'county': data.address.county, + 'country': data.address.country, + 'postCode': data.address.postCode, + 'identifier': data.identifier + } +} diff --git a/src/router/index.js b/src/router/index.js index 98550c3f..75ca0f2a 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -199,6 +199,37 @@ export const asyncRoutes = [ } ] }, + { + path: '/terminals', + component: Layout, + redirect: '/terminals/list', + name: 'Terminals', + meta: { + title: 'Terminals', + icon: 'example' + }, + children: [ + { + path: 'create', + component: () => import('@/views/terminals/create'), + name: 'CreateRegion', + meta: { title: 'Create Terminal', icon: 'edit' } + }, + { + path: 'edit/:id', + component: () => import('@/views/terminals/edit'), + name: 'EditTerminal', + meta: { title: 'Edit Terminal', noCache: true, activeMenu: '/terminals/list' }, + hidden: true + }, + { + path: 'list', + component: () => import('@/views/terminals/list'), + name: 'TerminalsList', + meta: { title: 'Terminal List', icon: 'list' } + } + ] + }, { path: '/permission', component: Layout, diff --git a/src/views/terminals/components/AccountDetail.vue b/src/views/terminals/components/AccountDetail.vue new file mode 100644 index 00000000..3c6c2554 --- /dev/null +++ b/src/views/terminals/components/AccountDetail.vue @@ -0,0 +1,274 @@ + + + + + diff --git a/src/views/terminals/create.vue b/src/views/terminals/create.vue new file mode 100644 index 00000000..d8a74df5 --- /dev/null +++ b/src/views/terminals/create.vue @@ -0,0 +1,13 @@ + + + + diff --git a/src/views/terminals/edit.vue b/src/views/terminals/edit.vue new file mode 100644 index 00000000..748ebb82 --- /dev/null +++ b/src/views/terminals/edit.vue @@ -0,0 +1,13 @@ + + + + diff --git a/src/views/terminals/list.vue b/src/views/terminals/list.vue new file mode 100644 index 00000000..3ae77c6e --- /dev/null +++ b/src/views/terminals/list.vue @@ -0,0 +1,90 @@ + + + + +