From 61235b3bf8f751a6a0d39fd8d2b6658ba0f82ac7 Mon Sep 17 00:00:00 2001 From: adonis Date: Mon, 13 Jul 2026 13:32:08 +0330 Subject: [PATCH] fix bug 22/4 --- components.d.ts | 3 + src/api/order.ts | 2 +- src/components/SmsCreditWidget.vue | 6 + src/constants/overlayZIndex.ts | 3 + src/core/assets/css/ant-override.less | 5 + src/model/product.ts | 2 + src/pages/menuPages/accounting/index.vue | 27 ++- .../menuPages/customers/archive/index.vue | 2 - .../components/CustomerMobileDetailSheet.vue | 1 - src/pages/menuPages/customers/base/index.vue | 55 ------- src/pages/menuPages/hesabKetab/index.vue | 37 +++++ .../orders/components/OrderEditorFormBody.vue | 155 ++++++++++-------- src/pages/menuPages/orders/index.vue | 98 +++++++---- .../base/components/ProductEditorFormBody.vue | 33 ++++ src/pages/menuPages/products/base/index.vue | 17 ++ src/router/routes/accounting.ts | 2 +- src/router/routes/cards.ts | 32 +--- src/router/routes/hesabKetab.ts | 108 ++++++++++++ src/router/routes/orders.ts | 2 +- src/router/routes/physicalWithdraw.ts | 24 +-- src/router/routes/pricing.ts | 2 +- src/router/routes/setting.ts | 58 +++---- src/router/routes/transactions.ts | 2 +- src/router/routes/wallet.ts | 28 +--- src/router/routes/withdraw.ts | 28 +--- 25 files changed, 435 insertions(+), 297 deletions(-) create mode 100644 src/pages/menuPages/hesabKetab/index.vue create mode 100644 src/router/routes/hesabKetab.ts diff --git a/components.d.ts b/components.d.ts index dfeec73..3d0dca9 100644 --- a/components.d.ts +++ b/components.d.ts @@ -43,6 +43,7 @@ declare module '@vue/runtime-core' { APagination: typeof import('ant-design-vue/es')['Pagination'] APopconfirm: typeof import('ant-design-vue/es')['Popconfirm'] APopover: typeof import('ant-design-vue/es')['Popover'] + ARadio: typeof import('ant-design-vue/es')['Radio'] ARadioButton: typeof import('ant-design-vue/es')['RadioButton'] ARadioGroup: typeof import('ant-design-vue/es')['RadioGroup'] ARow: typeof import('ant-design-vue/es')['Row'] @@ -54,9 +55,11 @@ declare module '@vue/runtime-core' { ATable: typeof import('ant-design-vue/es')['Table'] ATabPane: typeof import('ant-design-vue/es')['TabPane'] ATabs: typeof import('ant-design-vue/es')['Tabs'] + ATag: typeof import('ant-design-vue/es')['Tag'] ATextarea: typeof import('ant-design-vue/es')['Textarea'] ATimePicker: typeof import('ant-design-vue/es')['TimePicker'] ATooltip: typeof import('ant-design-vue/es')['Tooltip'] + AUpload: typeof import('ant-design-vue/es')['Upload'] BaseButton: typeof import('./src/core/components/BaseButton/index.ts')['default'] BaseCard: typeof import('./src/core/components/BaseCard/index.ts')['default'] BaseCollapse: typeof import('./src/components/BaseCollapse.vue')['default'] diff --git a/src/api/order.ts b/src/api/order.ts index 44318ee..f7c5ad5 100644 --- a/src/api/order.ts +++ b/src/api/order.ts @@ -7,7 +7,7 @@ export const getOrderTable = async (params: TableInput) => await useAxios.post>('/admin/order/table', params) export const createOrder = async (obj: Order) => - await useAxios.post(`/admin/single/order`, obj) + await useAxios.post(`/admin/single/order`, obj, { meta: { silent: true } }) export const getSingleOrder = async (id: number) => await useAxios.get(`/admin/order/single/${id}`) diff --git a/src/components/SmsCreditWidget.vue b/src/components/SmsCreditWidget.vue index 9213e14..41d752c 100644 --- a/src/components/SmsCreditWidget.vue +++ b/src/components/SmsCreditWidget.vue @@ -5,6 +5,7 @@ :class="[`sms-credit--${variant}`, { 'sms-credit--label-hint': showLabelHint && isCompactDesktop }]" >
+ اعتبار پیامک: @@ -267,6 +268,11 @@ onUnmounted(stopLabelHintTimers) white-space: nowrap; } +.sms-credit__icon { + flex-shrink: 0; + color: var(--admin-text-secondary); +} + .sms-credit-swap-enter-active, .sms-credit-swap-leave-active { transition: opacity 0.5s ease; diff --git a/src/constants/overlayZIndex.ts b/src/constants/overlayZIndex.ts index b53d869..ba5c273 100644 --- a/src/constants/overlayZIndex.ts +++ b/src/constants/overlayZIndex.ts @@ -9,3 +9,6 @@ export const SELECT_DROPDOWN_Z_INDEX = MODAL_ABOVE_ACTION_SHEET_Z_INDEX + 100 /** z-index برای tooltip راهنما داخل مودال (باید از override جدول‌ها و خود مودال بالاتر باشد) */ export const TOOLTIP_ABOVE_MODAL_Z_INDEX = SELECT_DROPDOWN_Z_INDEX + 50 + +/** z-index برای toast/message سراسری (باید بالاتر از مودال و backdrop باشد) */ +export const MESSAGE_ABOVE_MODAL_Z_INDEX = TOOLTIP_ABOVE_MODAL_Z_INDEX + 50 diff --git a/src/core/assets/css/ant-override.less b/src/core/assets/css/ant-override.less index 42b8659..539e78b 100644 --- a/src/core/assets/css/ant-override.less +++ b/src/core/assets/css/ant-override.less @@ -89,5 +89,10 @@ z-index: 1200 !important; } +// toast/message بالای مودال (مودال: 1100) +.ant-message { + z-index: 1300 !important; +} + diff --git a/src/model/product.ts b/src/model/product.ts index eb6e059..fabb772 100644 --- a/src/model/product.ts +++ b/src/model/product.ts @@ -29,6 +29,8 @@ export interface Product{ trade_by_quantity?: boolean override_trading_hours?: boolean use_last_price_if_zero?: boolean + has_physical_delivery?: boolean + min_physical_delivery_grams?: number | null title: string updated_at: string methodOption: number diff --git a/src/pages/menuPages/accounting/index.vue b/src/pages/menuPages/accounting/index.vue index e7b5f93..5d4229e 100644 --- a/src/pages/menuPages/accounting/index.vue +++ b/src/pages/menuPages/accounting/index.vue @@ -27,6 +27,15 @@ :loading="loading" @close="stopGetPrice" > +
@@ -161,6 +170,7 @@ import { initAccountingSettingsFromApi, tahesabEnabledSetting, pargarEnabledSett //loading const loading = ref(false) +const submitError = ref('') const activeTab = ref<'reports' | 'tahesab' | 'customer-sync' | 'pargar' | 'pargar-customer-sync'>('reports') const tahesabEnabled = tahesabEnabledSetting const pargarEnabled = pargarEnabledSetting @@ -240,6 +250,7 @@ async function changeUser(val: Customer) { } function stopGetPrice() { + clearSubmitError() clearInterval(interval) console.log('stop') } @@ -374,10 +385,21 @@ async function edit(record: Customer) { form.value = cloneDeep(record) } +function clearSubmitError() { + submitError.value = '' +} + +function getOrderSubmitError(e: unknown): string { + const msg = (e as { response?: { data?: { message?: string } } })?.response?.data?.message + if (typeof msg === 'string' && msg.trim()) return msg + return 'خطا در ثبت سفارش' +} + //add async function add() { loading.value = true editId = undefined + clearSubmitError() // await store.getUsersList() resetData() addOrderVisible.value = true @@ -422,8 +444,7 @@ const userInfoVisible = ref(false) //submit user async function ok() { formRef.value?.validateFields().then(async () => { - // console.log('salam', form.value) - // return + clearSubmitError() loading.value = true try { form.value.amount = form.value.goldValue @@ -440,7 +461,7 @@ async function ok() { // await getManager() } catch (e) { console.error(e) - // message.error('خطا در بارگذاری اطلاعات') + submitError.value = getOrderSubmitError(e) } finally { loading.value = false } diff --git a/src/pages/menuPages/customers/archive/index.vue b/src/pages/menuPages/customers/archive/index.vue index 45e3f68..5af2e60 100644 --- a/src/pages/menuPages/customers/archive/index.vue +++ b/src/pages/menuPages/customers/archive/index.vue @@ -86,7 +86,6 @@
- - - diff --git a/src/pages/menuPages/customers/base/index.vue b/src/pages/menuPages/customers/base/index.vue index 1ef4f8a..ed09f3e 100644 --- a/src/pages/menuPages/customers/base/index.vue +++ b/src/pages/menuPages/customers/base/index.vue @@ -83,41 +83,18 @@ - - - - - - - - - - - - @@ -176,7 +153,6 @@
- - - = [ key: false } ] -const customerItems: Array = [ - { - value: 'همکار', - key: 1 - }, - { - value: 'خانگی', - key: 2 - }, - { - value: 'سرمایه گذار', - key: 3 - } -] //wallet const showWalletCharge = ref(false) diff --git a/src/pages/menuPages/hesabKetab/index.vue b/src/pages/menuPages/hesabKetab/index.vue new file mode 100644 index 0000000..90f4b24 --- /dev/null +++ b/src/pages/menuPages/hesabKetab/index.vue @@ -0,0 +1,37 @@ + + + + + diff --git a/src/pages/menuPages/orders/components/OrderEditorFormBody.vue b/src/pages/menuPages/orders/components/OrderEditorFormBody.vue index 66da4b6..2f8ac27 100644 --- a/src/pages/menuPages/orders/components/OrderEditorFormBody.vue +++ b/src/pages/menuPages/orders/components/OrderEditorFormBody.vue @@ -1,81 +1,100 @@ + + + + + + + + +
@@ -521,6 +538,16 @@ const orderLimitHelp: DashboardHelp = { description: 'حداقل یکی از «حداقل» یا «حداکثر» الزامی است؛ می‌توانید فقط یکی را پر کنید.', } +const physicalDeliveryHelp: DashboardHelp = { + description: + 'روشن: این محصول امکان تحویل فیزیکی دارد. خاموش: تحویل فیزیکی ندارد. برای محصولات تعدادی، مقدار به گرم = تعداد × وزن هر واحد سنجیده می‌شود.', +} + +const minPhysicalDeliveryHelp: DashboardHelp = { + description: + 'حداقل موجودی (به گرم) که کاربر باید داشته باشد تا تحویل فیزیکی فعال شود؛ در غیر این صورت پیام «چند گرم مانده تا تحویل» نمایش داده می‌شود.', +} + const tradeByQuantityHelp: DashboardHelp = { description: 'فرم خرید/فروش با «ارزش کل» و «مقدار». فقط هنگام ساخت محصول قابل تعیین است و بعداً تغییر نمی‌کند.', @@ -616,6 +643,12 @@ function onOrderLimitChange(checked: boolean) { } } +function onPhysicalDeliveryChange(checked: boolean) { + if (!checked) { + props.form.min_physical_delivery_grams = undefined + } +} + defineEmits<{ (e: 'addPrice'): void (e: 'minusPrice'): void diff --git a/src/pages/menuPages/products/base/index.vue b/src/pages/menuPages/products/base/index.vue index cf4b076..da54233 100644 --- a/src/pages/menuPages/products/base/index.vue +++ b/src/pages/menuPages/products/base/index.vue @@ -337,6 +337,8 @@ async function edit(record: Product) { show_in_assets: productData.show_in_assets ?? false, trade_by_quantity: productData.trade_by_quantity ?? false, override_trading_hours: productData.override_trading_hours ?? false, + has_physical_delivery: productData.has_physical_delivery ?? false, + min_physical_delivery_grams: productData.min_physical_delivery_grams ?? undefined, cash_fee_buy: parseCashFeeValue(productData.cash_fee_buy), cash_fee_sell: parseCashFeeValue(productData.cash_fee_sell), cash_fee_buy_is_percent: normalizeCashFeeFlags(productData.cash_fee_buy_is_percent), @@ -390,6 +392,8 @@ function resetData() { trade_by_quantity: false, override_trading_hours: false, use_last_price_if_zero: false, + has_physical_delivery: false, + min_physical_delivery_grams: undefined, inventory: 0, min_order_cash: undefined, max_order_cash: undefined, @@ -523,6 +527,19 @@ async function saveProduct() { normalizeProductOrderLimitForm(payload) + payload.has_physical_delivery = Boolean(payload.has_physical_delivery) + if (!payload.has_physical_delivery) { + payload.min_physical_delivery_grams = null + } else { + const minGrams = Number(payload.min_physical_delivery_grams) + if (!Number.isFinite(minGrams) || minGrams <= 0) { + showSubmitError('برای فعال کردن تحویل فیزیکی باید حداقل گرم معتبر وارد شود') + loading.value = false + return + } + payload.min_physical_delivery_grams = minGrams + } + if (editId) { delete payload.trade_by_quantity await updateCustomer(editId, payload) diff --git a/src/router/routes/accounting.ts b/src/router/routes/accounting.ts index f57335d..aa3bbd2 100644 --- a/src/router/routes/accounting.ts +++ b/src/router/routes/accounting.ts @@ -1,6 +1,6 @@ import type { RouteRecordRaw } from 'vue-router' -/** ریدایرکت آدرس قدیمی — منو زیر پیکربندی است */ +/** ریدایرکت آدرس قدیمی — منو زیر حساب کتاب است */ const Accounting: RouteRecordRaw = { name: 'accounting', path: '/accounting', diff --git a/src/router/routes/cards.ts b/src/router/routes/cards.ts index 7c7408e..7e2b960 100644 --- a/src/router/routes/cards.ts +++ b/src/router/routes/cards.ts @@ -1,35 +1,13 @@ import type { RouteRecordRaw } from 'vue-router' -const Withdraw: RouteRecordRaw = { +/** ریدایرکت آدرس قدیمی — منو زیر حساب کتاب است */ +const Accounts: 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 - } - } - ] + hideMenu: true + } } -export default Withdraw +export default Accounts diff --git a/src/router/routes/hesabKetab.ts b/src/router/routes/hesabKetab.ts new file mode 100644 index 0000000..769e7ed --- /dev/null +++ b/src/router/routes/hesabKetab.ts @@ -0,0 +1,108 @@ +import type { RouteRecordRaw } from 'vue-router' + +const HesabKetab: RouteRecordRaw = { + name: 'hesabKetab', + path: '/hesab-ketab', + component: () => import('@core/layouts/BasicLayout.vue'), + redirect: { name: 'hesabKetabMain' }, + meta: { + icon: 'vuesax-linear:book', + title: 'حساب کتاب', + disabled: false, + hideMenu: false, + hideChildren: true, + order: 6 + }, + children: [ + { + name: 'hesabKetabMain', + path: '', + component: () => import('@/pages/menuPages/hesabKetab/index.vue'), + redirect: { name: 'accountsMain' }, + meta: { + icon: 'vuesax-linear:book', + order: 5, + title: 'حساب کتاب', + disabled: false, + hideMenu: true + }, + children: [ + { + name: 'accountsMain', + path: 'accounts', + component: () => import('@/pages/menuPages/cards/index.vue'), + meta: { + icon: 'vuesax-linear:cards', + title: 'حساب ها', + order: 1 + } + }, + { + name: 'walletMain', + path: 'wallet', + component: () => import('@/pages/menuPages/wallet/index.vue'), + meta: { + icon: 'vuesax-linear:wallet', + title: 'کیف پول', + order: 2 + } + }, + { + name: 'physicalWithdrawMain', + path: 'physical-withdraw', + component: () => import('@/pages/menuPages/physicalWithdraw/index.vue'), + meta: { + icon: 'vuesax-linear:truck-tick', + title: 'برداشت فیزیکی', + order: 3 + } + }, + { + name: 'withdrawMain', + path: 'withdraw', + component: () => import('@/pages/menuPages/withdraw/index.vue'), + meta: { + icon: 'vuesax-linear:money-change', + title: 'برداشت و واریز', + order: 4 + } + }, + { + name: 'pricingMain', + path: 'pricing', + component: () => import('@/pages/menuPages/pricing/index.vue'), + meta: { + permissionsKey: 'pricing', + icon: 'vuesax-linear:dollar-circle', + title: 'تاریخچه قیمت', + order: 5 + } + }, + { + name: 'priceTriggers', + path: 'priceTriggers', + component: () => import('@/pages/menuPages/priceTriggers/index.vue'), + meta: { + permissionsKey: 'priceTriggers', + icon: 'vuesax-linear:notification-bing', + title: 'هشدار قیمت', + order: 6 + } + }, + { + name: 'accountingMain', + path: 'accounting', + component: () => import('@/pages/menuPages/accounting/index.vue'), + meta: { + permissionsKey: 'accounting', + icon: 'vuesax-linear:calculator', + title: 'حسابداری', + order: 7 + } + } + ] + } + ] +} + +export default HesabKetab diff --git a/src/router/routes/orders.ts b/src/router/routes/orders.ts index 25408dc..dda2e92 100644 --- a/src/router/routes/orders.ts +++ b/src/router/routes/orders.ts @@ -12,7 +12,7 @@ const Orders: RouteRecordRaw = { disabled: false, hideMenu: false, hideChildren: true, - order: 7 + order: 5 }, children: [ { diff --git a/src/router/routes/physicalWithdraw.ts b/src/router/routes/physicalWithdraw.ts index 2ba2af0..dc9f95b 100644 --- a/src/router/routes/physicalWithdraw.ts +++ b/src/router/routes/physicalWithdraw.ts @@ -1,31 +1,13 @@ import type { RouteRecordRaw } from 'vue-router' +/** ریدایرکت آدرس قدیمی — منو زیر حساب کتاب است */ const PhysicalWithdraw: RouteRecordRaw = { name: 'physicalWithdraw', path: '/physical-withdraw', - component: () => import('@core/layouts/BasicLayout.vue'), redirect: { name: 'physicalWithdrawMain' }, meta: { - icon: 'vuesax-linear:truck-tick', - title: 'برداشت فیزیکی', - disabled: false, - hideMenu: false, - hideChildren: true, - order: 7.5 - }, - children: [ - { - name: 'physicalWithdrawMain', - path: '', - component: () => import('@/pages/menuPages/physicalWithdraw/index.vue'), - meta: { - icon: 'vuesax-linear:truck-tick', - title: 'برداشت فیزیکی', - disabled: false, - hideMenu: false - } - } - ] + hideMenu: true + } } export default PhysicalWithdraw diff --git a/src/router/routes/pricing.ts b/src/router/routes/pricing.ts index 15c8976..753a6ac 100644 --- a/src/router/routes/pricing.ts +++ b/src/router/routes/pricing.ts @@ -1,6 +1,6 @@ import type { RouteRecordRaw } from 'vue-router' -/** ریدایرکت آدرس قدیمی — منو زیر پیکربندی است */ +/** ریدایرکت آدرس قدیمی — منو زیر حساب کتاب است */ const Pricing: RouteRecordRaw = { name: 'pricing', path: '/pricing', diff --git a/src/router/routes/setting.ts b/src/router/routes/setting.ts index e33b9fb..bfbd84c 100644 --- a/src/router/routes/setting.ts +++ b/src/router/routes/setting.ts @@ -16,7 +16,7 @@ const Setting: RouteRecordRaw = { disabled: false, hideMenu: false, hideChildren: true, - order: 10 + order: 7 }, children: [ { @@ -43,17 +43,6 @@ const Setting: RouteRecordRaw = { order: 1 } }, - { - name: 'pricingMain', - path: 'pricing', - component: () => import('@/pages/menuPages/pricing/index.vue'), - meta: { - permissionsKey: 'pricing', - icon: 'vuesax-linear:dollar-circle', - title: 'تاریخچه قیمت', - order: 2 - } - }, { name: 'captureSitesMain', path: 'capture-sites', @@ -62,7 +51,7 @@ const Setting: RouteRecordRaw = { permissionsKey: 'pricing', icon: 'vuesax-linear:global', title: 'سایت‌های ری‌گیری', - order: 2.5 + order: 2 } }, { @@ -115,17 +104,6 @@ const Setting: RouteRecordRaw = { } } }, - { - name: 'priceTriggers', - path: 'priceTriggers', - component: () => import('@/pages/menuPages/priceTriggers/index.vue'), - meta: { - permissionsKey: 'priceTriggers', - icon: 'vuesax-linear:notification-bing', - title: 'هشدار قیمت', - order: 5 - } - }, { name: 'smsMain', path: 'sms', @@ -134,7 +112,7 @@ const Setting: RouteRecordRaw = { permissionsKey: 'sms', icon: 'vuesax-linear:sms', title: 'پیامک‌ها', - order: 6 + order: 5 } }, { @@ -146,7 +124,7 @@ const Setting: RouteRecordRaw = { icon: 'vuesax-linear:gift', title: 'کارت هدیه', hideMenu: true, - order: 7 + order: 6 } }, { @@ -158,7 +136,7 @@ const Setting: RouteRecordRaw = { icon: 'vuesax-linear:discount-shape', title: 'تخفیفات', hideMenu: true, - order: 8 + order: 7 } }, { @@ -169,19 +147,27 @@ const Setting: RouteRecordRaw = { permissionsKey: 'user', icon: 'vuesax-linear:profile', title: 'مدیران', - order: 9 + order: 8 } }, + /** ریدایرکت آدرس قدیمی — به حساب کتاب منتقل شد */ { - name: 'accountingMain', + name: 'settingsPricingRedirect', + path: 'pricing', + redirect: { name: 'pricingMain' }, + meta: { hideMenu: true } + }, + { + name: 'settingsPriceTriggersRedirect', + path: 'priceTriggers', + redirect: { name: 'priceTriggers' }, + meta: { hideMenu: true } + }, + { + name: 'settingsAccountingRedirect', path: 'accounting', - component: () => import('@/pages/menuPages/accounting/index.vue'), - meta: { - permissionsKey: 'accounting', - icon: 'vuesax-linear:calculator', - title: 'حسابداری', - order: 10 - } + redirect: { name: 'accountingMain' }, + meta: { hideMenu: true } } ] } diff --git a/src/router/routes/transactions.ts b/src/router/routes/transactions.ts index 57d1199..dba9593 100644 --- a/src/router/routes/transactions.ts +++ b/src/router/routes/transactions.ts @@ -12,7 +12,7 @@ const Transactions: RouteRecordRaw = { disabled: false, hideMenu: false, hideChildren: true, - order: 5 + order: 4 }, children: [ { diff --git a/src/router/routes/wallet.ts b/src/router/routes/wallet.ts index 61ac1fd..234f9f4 100644 --- a/src/router/routes/wallet.ts +++ b/src/router/routes/wallet.ts @@ -1,35 +1,13 @@ 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 - } - } - ] + hideMenu: true + } } export default Wallet diff --git a/src/router/routes/withdraw.ts b/src/router/routes/withdraw.ts index f7415da..85472aa 100644 --- a/src/router/routes/withdraw.ts +++ b/src/router/routes/withdraw.ts @@ -1,35 +1,13 @@ 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 - } - } - ] + hideMenu: true + } } export default Withdraw