diff --git a/app/components/TopMenu.vue b/app/components/TopMenu.vue index 6887004..ffeda9f 100644 --- a/app/components/TopMenu.vue +++ b/app/components/TopMenu.vue @@ -76,20 +76,61 @@ const route = useRoute(); const emit = defineEmits(["changetab", "langChanged"]); const { $find, $filter, $findIndex, $store } = useNuxtApp(); const lang = ref($store.lang); -var menu = $filter($store.common, { category: "topmenu" }); +// var menu = $filter($store.common, { category: "topmenu" }); +const menu = [ + { + id: 1, + category: 'topmenu', + classify: 'left', + code: 'dashboard', + vi: 'Dashboard', + link: null, + detail: { + base: 'Dashboard', + component: 'DashboardMaster', + }, + index: 0, + }, + { + id: 2, + category: 'topmenu', + classify: 'left', + code: 'orders', + vi: 'Đơn hàng', + link: null, + detail: { + base: 'Orders', + component: 'OrdersMaster', + }, + index: 0, + }, + { + id: 1, + category: 'topmenu', + classify: 'left', + code: 'inventory', + vi: 'Tồn kho', + link: null, + detail: { + base: 'Inventory', + component: 'InventoryMaster', + }, + index: 0, + }, +] if($store.rights.length>0) { menu = menu.filter(v=>$findIndex($store.rights, {setting: v.id})>=0) } if(menu.length===0) { $snackbar($store.lang==='vi'? 'Bạn không có quyền truy cập' : 'You do not have permission to access.') } -menu.map(v=>{ - let arr = $filter($store.common, {category: 'submenu', classify: v.code}) - if($store.rights.length>0) { - arr = arr.filter(x=>$findIndex($store.rights, {setting: x.id})>=0) - } - v.submenu = arr.length>0? arr : null -}) +// menu.map(v=>{ +// let arr = $filter($store.common, {category: 'submenu', classify: v.code}) +// if($store.rights.length>0) { +// arr = arr.filter(x=>$findIndex($store.rights, {setting: x.id})>=0) +// } +// v.submenu = arr.length>0? arr : null +// }) var leftmenu = $filter(menu, {category: 'topmenu', classify: 'left'}) var currentTab = ref(leftmenu.length>0? leftmenu[0] : undefined) var subTab = ref(); diff --git a/app/components/dashboard/Dashboard.vue b/app/components/dashboard/Dashboard.vue new file mode 100644 index 0000000..96abdd6 --- /dev/null +++ b/app/components/dashboard/Dashboard.vue @@ -0,0 +1,5 @@ + + \ No newline at end of file diff --git a/app/components/inventory/Inventory.vue b/app/components/inventory/Inventory.vue new file mode 100644 index 0000000..6cfea4d --- /dev/null +++ b/app/components/inventory/Inventory.vue @@ -0,0 +1,5 @@ + + \ No newline at end of file diff --git a/app/components/orders/Orders.vue b/app/components/orders/Orders.vue new file mode 100644 index 0000000..82c9ab3 --- /dev/null +++ b/app/components/orders/Orders.vue @@ -0,0 +1,5 @@ + + \ No newline at end of file diff --git a/app/layouts/default.vue b/app/layouts/default.vue index 05ef4f6..f0ba21d 100644 --- a/app/layouts/default.vue +++ b/app/layouts/default.vue @@ -1,9 +1,12 @@ @@ -39,12 +42,12 @@ async function checkRedirect() { }, true ); - if (row === "error" || row === undefined) $requestLogin(); + if (row === "error" || row === undefined) return; /* $requestLogin(); */ else { row.token = route.query.token; $store.commit("login", row); } - } else if (!$store.login) return $requestLogin(); + } else if (!$store.login) return /* $requestLogin(); */ await checkLogin(); } async function checkLogin() { @@ -58,9 +61,10 @@ async function checkLogin() { true )); let authtoken = await $getdata("token", { token: $store.login.token }, undefined, true); - if (authtoken ? authtoken.expiry : true) return $requestLogin(); + if (authtoken ? authtoken.expiry : true) return /* $requestLogin(); */ authorized.value = true; - } else $requestLogin(); + } + // else $requestLogin(); } onMounted(() => { checkRedirect() diff --git a/app/plugins/02-connection.js b/app/plugins/02-connection.js index 77c274a..cfb7ce6 100644 --- a/app/plugins/02-connection.js +++ b/app/plugins/02-connection.js @@ -7,9 +7,9 @@ export default defineNuxtPlugin(() => { const module = "application"; const mode = "dev"; const paths = [ - { name: "dev", url: "https://dev.api.utopia.com.vn/" }, + { name: "dev", url: "https://erpapi.bigdatatech.vn/" }, { name: "local", url: "http://localhost:8000/" }, - { name: "prod", url: "https://api.utopia.com.vn/" }, + { name: "prod", url: "https://erpapi.bigdatatech.vn/" }, ]; const path = paths.find((v) => v.name === mode).url; const apis = [ diff --git a/app/plugins/03-api-loader.js b/app/plugins/03-api-loader.js index 1138b08..0f9a572 100644 --- a/app/plugins/03-api-loader.js +++ b/app/plugins/03-api-loader.js @@ -1,8 +1,8 @@ export default defineNuxtPlugin(async (nuxtApp) => { const { $getapi, $readyapi } = useNuxtApp() - let connlist = $readyapi(['moneyunit', 'datatype', 'filterchoice', 'colorchoice', 'textalign', 'placement', 'colorscheme', + let connlist = $readyapi(['datatype', 'filterchoice', 'colorchoice', 'textalign', 'placement', 'colorscheme', 'filtertype', 'sorttype', 'tablesetting', 'settingchoice', 'sharechoice', 'menuchoice', 'settingtype', 'settingclass', - 'common', 'sex', 'legaltype', 'cart']) +'sex', 'legaltype', 'cart']) let filter = connlist.filter(v=>!v.ready) if(filter.length>0) await $getapi(filter) }) diff --git a/app/plugins/04-components.js b/app/plugins/04-components.js index cee20a1..0952a6e 100644 --- a/app/plugins/04-components.js +++ b/app/plugins/04-components.js @@ -1,4 +1,7 @@ import { defineNuxtPlugin } from "#app"; +import Dashboard from '@/components/dashboard/Dashboard.vue'; +import Orders from '@/components/orders/Orders.vue'; +import Inventory from '@/components/inventory/Inventory.vue'; import Notebox from "~/components/common/Notebox.vue"; import ProductCountbox from "~/components/common/ProductCountbox.vue"; import SvgIcon from "~/components/SvgIcon.vue"; @@ -126,6 +129,9 @@ const components = { DebtCustomer, Due, Overdue, + Dashboard, + Orders, + Inventory }; export default defineNuxtPlugin((nuxtApp) => {