1404/11/04- first
This commit is contained in:
@@ -0,0 +1,90 @@
|
||||
//import { routes } from '@/core/router/routes'
|
||||
//import router from '@/core/router/index'
|
||||
import { useRouterStore } from '@core/stores/router'
|
||||
import type { Router, RouteRecordRaw } from 'vue-router'
|
||||
//const _router = useRouter()
|
||||
//import { cloneDeep } from 'lodash'
|
||||
|
||||
export function setupRoutes(permissionsKeys: string[], router?: Router) {
|
||||
//console.log('this is permission', permissionsKeys)
|
||||
//console.log('this is use router', _router)
|
||||
console.log('salammm')
|
||||
const routerStore = useRouterStore()
|
||||
const modules = import.meta.glob<any>('./routes/*.ts', { eager: true })
|
||||
console.log(modules)
|
||||
function walkInRoutes(routes: RouteRecordRaw) {
|
||||
if (!routes.children) return
|
||||
routes.children = routes?.children?.filter(
|
||||
(item) =>
|
||||
!item.meta?.permissionsKey ||
|
||||
(item.meta?.permissionsKey && permissionsKeys.includes(item.meta?.permissionsKey))
|
||||
)
|
||||
for (const route of routes.children) {
|
||||
/*if (!route.children || (route.children && route.children.length == 0)) {
|
||||
//path.push(route.name)
|
||||
//return
|
||||
continue
|
||||
}*/
|
||||
/*if (routes.children) {
|
||||
}*/
|
||||
walkInRoutes(route)
|
||||
/*if (route.children && route.children.length > 0) {
|
||||
path.push(route.name)
|
||||
const res = walkInRoutes(route.children)
|
||||
if (!res) {
|
||||
path.pop()
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
}*/
|
||||
}
|
||||
return
|
||||
}
|
||||
routerStore.routes = [
|
||||
{
|
||||
path: '/:pathMatch(.*)*',
|
||||
name: 'notFound',
|
||||
component: () => import('@/core/pages/404.vue'),
|
||||
meta: {
|
||||
hideMenu: true
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'factor',
|
||||
path: '/withdraw/factor/:id',
|
||||
component: () => import('@/pages/menuPages/withdraw/factor/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'factor',
|
||||
hideMenu: true
|
||||
}
|
||||
},
|
||||
]
|
||||
for (const modulesKey in modules) {
|
||||
// console.log(modulesKey)
|
||||
const route: RouteRecordRaw | undefined = modules[modulesKey].default ?? undefined
|
||||
if (route) {
|
||||
if (permissionsKeys.length && permissionsKeys[0] == '*') {
|
||||
routerStore.routes.push(route)
|
||||
if (router) {
|
||||
router.addRoute(route)
|
||||
}
|
||||
} else {
|
||||
if (
|
||||
!route?.meta?.permissionsKey ||
|
||||
(route.meta.permissionsKey && permissionsKeys.includes(route.meta.permissionsKey))
|
||||
) {
|
||||
walkInRoutes(route)
|
||||
routerStore.routes.push(route)
|
||||
if (router) {
|
||||
router.addRoute(route)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// console.log(router)
|
||||
//console.log('this is store', routerStore.routes)
|
||||
/* if (router) {
|
||||
console.log('this is router routes', router.getRoutes())
|
||||
}*/
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Orders: RouteRecordRaw = {
|
||||
name: 'accounting',
|
||||
path: '/accounting',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'accountingMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:calculator',
|
||||
permissionsKey: 'accounting',
|
||||
title: 'حسابداری',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 7
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'accountingMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/accounting/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'project',
|
||||
icon: 'vuesax-linear:empty-wallet-time',
|
||||
order: 3,
|
||||
title: 'حسابداری',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Orders
|
||||
@@ -0,0 +1,31 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const balance: RouteRecordRaw = {
|
||||
name: 'balance',
|
||||
path: '/balance',
|
||||
redirect: { name: 'balance' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:cards',
|
||||
title: 'تراز',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 20
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'balanceMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/balance/index.vue'),
|
||||
meta: {
|
||||
icon: 'vuesax-linear:money-send',
|
||||
order: 30,
|
||||
title: 'تراز',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default balance
|
||||
@@ -0,0 +1,35 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Withdraw: RouteRecordRaw = {
|
||||
name: 'accounts',
|
||||
path: '/accounts',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'accountsMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:cards',
|
||||
// permissionsKey: 'orders',
|
||||
title: 'حساب ها',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 6
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'accountsMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/cards/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'project',
|
||||
icon: 'vuesax-linear:money-send',
|
||||
order: 3,
|
||||
title: 'حساب ها',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Withdraw
|
||||
@@ -0,0 +1,115 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Customers: RouteRecordRaw = {
|
||||
name: 'customers',
|
||||
path: '/customers',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'customerMain_limitedOrder' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:people',
|
||||
// permissionsKey: 'project',
|
||||
title: 'مشتریان',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 2
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'customersMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/customers/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'config',
|
||||
icon: 'vuesax-linear:people',
|
||||
title: 'مشتریان',
|
||||
disabled: false,
|
||||
hideMenu: true
|
||||
//hideChildren: false
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'customerMain_limitedOrder',
|
||||
path: 'list',
|
||||
component: () => import('@/pages/menuPages/customers/base/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'config.limitedOrder',
|
||||
icon: 'vuesax-linear:people',
|
||||
title: 'لیست مشتریان'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'customerMain_archive',
|
||||
path: 'archive',
|
||||
component: () => import('@/pages/menuPages/customers/archive/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'user',
|
||||
icon: 'vuesax-linear:save-2',
|
||||
title: 'بایگانی'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Customers
|
||||
/*
|
||||
|
||||
import type {RouteRecordRaw} from 'vue-router'
|
||||
|
||||
const Customers: RouteRecordRaw = {
|
||||
name: 'customers',
|
||||
path: '/customers',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: {name: 'customersMain'},
|
||||
meta: {
|
||||
icon: 'vuesax-linear:people',
|
||||
// permissionsKey: 'config',
|
||||
title: 'مشتریان عمده',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 3,
|
||||
children: [
|
||||
{
|
||||
name: 'settingMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/setting/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'config',
|
||||
icon: 'vuesax-linear:setting',
|
||||
order: 5,
|
||||
title: 'پیکربندی',
|
||||
disabled: false,
|
||||
hideMenu: true
|
||||
//hideChildren: false
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'settingMain_limitedOrder',
|
||||
path: 'limitedOrder',
|
||||
component: () => import('@/pages/menuPages/setting/limitedOrder/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'config.limitedOrder',
|
||||
icon: 'vuesax-linear:document-text',
|
||||
title: 'محدودیت سفارش'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'usersMain',
|
||||
path: 'admins',
|
||||
component: () => import('@/pages/menuPages/users/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'user',
|
||||
icon: 'vuesax-linear:profile',
|
||||
title: 'لیست مدیران'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Customers
|
||||
*/
|
||||
@@ -0,0 +1,33 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Dashboard: RouteRecordRaw = {
|
||||
name: 'dashboard',
|
||||
path: '/dashboard',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'dashboardMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:home-2',
|
||||
title: 'میز کار',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 1
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'dashboardMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/dashboard/index.vue'),
|
||||
meta: {
|
||||
icon: 'vuesax-linear:home-2',
|
||||
order: 1,
|
||||
title: 'میز کار',
|
||||
disabled: false,
|
||||
hideMenu: true
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Dashboard
|
||||
@@ -0,0 +1,18 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Login: RouteRecordRaw = {
|
||||
name: 'login',
|
||||
path: '/login',
|
||||
component: () => import('@/pages/login/index.vue'),
|
||||
//redirect: { name: 'projectsMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:bill',
|
||||
//title: 'پروژه ها',
|
||||
//disabled: false,
|
||||
hideMenu: true,
|
||||
hideChildren: true,
|
||||
order: 3
|
||||
}
|
||||
}
|
||||
|
||||
export default Login
|
||||
@@ -0,0 +1,15 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const main: RouteRecordRaw = {
|
||||
name: 'main',
|
||||
path: '/',
|
||||
component: () => import('@/pages/main/index.vue'),
|
||||
redirect: { name: 'dashboard' },
|
||||
children: [],
|
||||
meta: {
|
||||
order: 2,
|
||||
hideMenu: true
|
||||
}
|
||||
}
|
||||
|
||||
export default main
|
||||
@@ -0,0 +1,33 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Dashboard: RouteRecordRaw = {
|
||||
name: 'Mobile',
|
||||
path: '/mobile',
|
||||
component: () => import('@/pages/mobileMenu'),
|
||||
redirect: { name: 'customerMobile' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:home-2',
|
||||
title: 'میز کار',
|
||||
disabled: false,
|
||||
hideMenu: true,
|
||||
hideChildren: true,
|
||||
order: 1
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'customerMobile',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/customers/mobile/index.vue'),
|
||||
meta: {
|
||||
icon: 'vuesax-linear:home-2',
|
||||
order: 1,
|
||||
title: 'مشتریان',
|
||||
disabled: false,
|
||||
hideMenu: true
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Dashboard
|
||||
@@ -0,0 +1,35 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Orders: RouteRecordRaw = {
|
||||
name: 'orders',
|
||||
path: '/orders',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'ordersMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:empty-wallet-time',
|
||||
permissionsKey: 'orders',
|
||||
title: 'سفارشات',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 7
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'ordersMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/orders/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'project',
|
||||
icon: 'vuesax-linear:empty-wallet-time',
|
||||
order: 3,
|
||||
title: 'سفارشات',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Orders
|
||||
@@ -0,0 +1,35 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Orders: RouteRecordRaw = {
|
||||
name: 'pricing',
|
||||
path: '/pricing',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'pricingMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:dollar-circle',
|
||||
permissionsKey: 'pricing',
|
||||
title: 'قیمت گذاری',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 9
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'pricingMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/pricing/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'pricing',
|
||||
icon: 'vuesax-linear:setting',
|
||||
order: 3,
|
||||
title: 'قیمت گذاری',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Orders
|
||||
@@ -0,0 +1,57 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Products: RouteRecordRaw = {
|
||||
name: 'products',
|
||||
path: '/products',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'productsMain_limitedOrder' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:box',
|
||||
// permissionsKey: 'project',
|
||||
title: 'محصولات',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 3
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'productsMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/products/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'config',
|
||||
icon: 'vuesax-linear:box',
|
||||
title: 'محصولات',
|
||||
disabled: false,
|
||||
hideMenu: true
|
||||
//hideChildren: false
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'productsMain_limitedOrder',
|
||||
path: 'list',
|
||||
component: () => import('@/pages/menuPages/products/base/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'config.limitedOrder',
|
||||
icon: 'vuesax-linear:box',
|
||||
title: 'لیست محصولات'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'productsMain_archive',
|
||||
path: 'archive',
|
||||
component: () => import('@/pages/menuPages/products/archive/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'user',
|
||||
icon: 'vuesax-linear:save-2',
|
||||
title: 'بایگانی'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Products
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Setting: RouteRecordRaw = {
|
||||
name: 'settings',
|
||||
path: '/settings',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'settingMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:setting',
|
||||
permissionsKey: 'config',
|
||||
title: 'پیکربندی',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 10
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'settingMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/setting/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'config',
|
||||
icon: 'vuesax-linear:setting',
|
||||
order: 5,
|
||||
title: 'پیکربندی',
|
||||
disabled: false,
|
||||
hideMenu: true
|
||||
//hideChildren: false
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'settingMain_limitedOrder',
|
||||
path: 'limitedOrder',
|
||||
component: () => import('@/pages/menuPages/setting/limitedOrder/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'config.limitedOrder',
|
||||
icon: 'vuesax-linear:document-text',
|
||||
title: '' +
|
||||
'' +
|
||||
'محدودیت سفارش'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'usersMain',
|
||||
path: 'admins',
|
||||
component: () => import('@/pages/menuPages/users/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'user',
|
||||
icon: 'vuesax-linear:profile',
|
||||
title: 'لیست مدیران'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'priceTriggers',
|
||||
path: 'priceTriggers',
|
||||
component: () => import('@/pages/menuPages/priceTriggers/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'priceTriggers',
|
||||
icon: 'vuesax-linear:notification-bing',
|
||||
title: 'هشدار قیمت'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Setting
|
||||
@@ -0,0 +1,117 @@
|
||||
/*
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Customers: RouteRecordRaw = {
|
||||
name: 'singles',
|
||||
path: '/singles',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'singleMain_limitedOrder' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:people',
|
||||
// permissionsKey: 'project',
|
||||
title: 'مشتریان تک',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 3
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'singlesMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/singles/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'config',
|
||||
icon: 'vuesax-linear:people',
|
||||
title: 'مشتریان تک',
|
||||
disabled: false,
|
||||
hideMenu: true
|
||||
//hideChildren: false
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'singleMain_limitedOrder',
|
||||
path: 'list',
|
||||
component: () => import('@/pages/menuPages/singles/base/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'config.limitedOrder',
|
||||
icon: 'vuesax-linear:people',
|
||||
title: 'لیست مشتریان'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'singleMain_archive',
|
||||
path: 'archive',
|
||||
component: () => import('@/pages/menuPages/singles/archive/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'user',
|
||||
icon: 'vuesax-linear:save-2',
|
||||
title: 'بایگانی'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Customers
|
||||
/!*
|
||||
|
||||
import type {RouteRecordRaw} from 'vue-router'
|
||||
|
||||
const Customers: RouteRecordRaw = {
|
||||
name: 'customers',
|
||||
path: '/customers',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: {name: 'customersMain'},
|
||||
meta: {
|
||||
icon: 'vuesax-linear:people',
|
||||
// permissionsKey: 'config',
|
||||
title: 'مشتریان عمده',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 3,
|
||||
children: [
|
||||
{
|
||||
name: 'settingMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/setting/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'config',
|
||||
icon: 'vuesax-linear:setting',
|
||||
order: 5,
|
||||
title: 'پیکربندی',
|
||||
disabled: false,
|
||||
hideMenu: true
|
||||
//hideChildren: false
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'settingMain_limitedOrder',
|
||||
path: 'limitedOrder',
|
||||
component: () => import('@/pages/menuPages/setting/limitedOrder/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'config.limitedOrder',
|
||||
icon: 'vuesax-linear:document-text',
|
||||
title: 'محدودیت سفارش'
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'usersMain',
|
||||
path: 'admins',
|
||||
component: () => import('@/pages/menuPages/users/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'user',
|
||||
icon: 'vuesax-linear:profile',
|
||||
title: 'لیست مدیران'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Customers
|
||||
*!/
|
||||
*/
|
||||
@@ -0,0 +1,35 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Orders: RouteRecordRaw = {
|
||||
name: 'sms',
|
||||
path: '/sms',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'smsMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:sms',
|
||||
permissionsKey: 'sms',
|
||||
title: 'پیامک ها',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 9
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'smsMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/sms/index.vue'),
|
||||
meta: {
|
||||
permissionsKey: 'sms',
|
||||
icon: 'vuesax-linear:setting',
|
||||
order: 3,
|
||||
title: 'پیامک ها',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Orders
|
||||
@@ -0,0 +1,35 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Transactions: RouteRecordRaw = {
|
||||
name: 'transactions',
|
||||
path: '/transactions',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'transactionsMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:empty-wallet-change',
|
||||
// permissionsKey: 'project',
|
||||
title: 'گزارشات',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 5
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'transactionsMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/transactions/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'wallet',
|
||||
icon: 'vuesax-linear:wallet',
|
||||
order: 3,
|
||||
title: 'پروژه ها',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Transactions
|
||||
@@ -0,0 +1,35 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Wallet: RouteRecordRaw = {
|
||||
name: 'wallet',
|
||||
path: '/wallet',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'walletMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:wallet',
|
||||
// permissionsKey: 'project',
|
||||
title: 'کیف پول',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 4
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'walletMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/wallet/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'wallet',
|
||||
icon: 'vuesax-linear:wallet',
|
||||
order: 3,
|
||||
title: 'پروژه ها',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Wallet
|
||||
@@ -0,0 +1,35 @@
|
||||
import type { RouteRecordRaw } from 'vue-router'
|
||||
|
||||
const Withdraw: RouteRecordRaw = {
|
||||
name: 'withdraw',
|
||||
path: '/withdraw',
|
||||
component: () => import('@core/layouts/BasicLayout.vue'),
|
||||
redirect: { name: 'withdrawMain' },
|
||||
meta: {
|
||||
icon: 'vuesax-linear:money-change',
|
||||
// permissionsKey: 'orders',
|
||||
title: 'برداشت و واریز',
|
||||
disabled: false,
|
||||
hideMenu: false,
|
||||
hideChildren: true,
|
||||
order: 8
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: 'withdrawMain',
|
||||
path: '',
|
||||
component: () => import('@/pages/menuPages/withdraw/index.vue'),
|
||||
meta: {
|
||||
// permissionsKey: 'project',
|
||||
icon: 'vuesax-linear:money-change',
|
||||
order: 3,
|
||||
title: 'برداشت و واریز',
|
||||
disabled: false,
|
||||
hideMenu: false
|
||||
//hideChildren: false
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
export default Withdraw
|
||||
Reference in New Issue
Block a user