From dfd2d0218bbcea93b4bfb0e7ca7ac9b1cc1cc7da Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期四, 27 六月 2024 16:08:28 +0800 Subject: [PATCH] 工艺路线树形增加客户编码 --- src/layouts/default/menu/index.vue | 64 ++++++++++++++++++++++++-------- 1 files changed, 48 insertions(+), 16 deletions(-) diff --git a/src/layouts/default/menu/index.vue b/src/layouts/default/menu/index.vue index 1fa9d55..e7359eb 100644 --- a/src/layouts/default/menu/index.vue +++ b/src/layouts/default/menu/index.vue @@ -2,23 +2,24 @@ import type { PropType, CSSProperties } from 'vue'; import { computed, defineComponent, unref, toRef } from 'vue'; - import { BasicMenu } from '/@/components/Menu'; - import { SimpleMenu } from '/@/components/SimpleMenu'; - import { AppLogo } from '/@/components/Application'; + import { BasicMenu } from '@/components/Menu'; + import { SimpleMenu } from '@/components/SimpleMenu'; + import { AppLogo } from '@/components/Application'; - import { MenuModeEnum, MenuSplitTyeEnum } from '/@/enums/menuEnum'; + import { MenuModeEnum, MenuSplitTyeEnum } from '@/enums/menuEnum'; - import { useMenuSetting } from '/@/hooks/setting/useMenuSetting'; - import { ScrollContainer } from '/@/components/Container'; + import { useMenuSetting } from '@/hooks/setting/useMenuSetting'; + import { ScrollContainer } from '@/components/Container'; - import { useGo } from '/@/hooks/web/usePage'; + import { useGo } from '@/hooks/web/usePage'; import { useSplitMenu } from './useLayoutMenu'; - import { openWindow } from '/@/utils'; - import { propTypes } from '/@/utils/propTypes'; - import { isUrl } from '/@/utils/is'; - import { useRootSetting } from '/@/hooks/setting/useRootSetting'; - import { useAppInject } from '/@/hooks/web/useAppInject'; - import { useDesign } from '/@/hooks/web/useDesign'; + import { openWindow } from '@/utils'; + import { propTypes } from '@/utils/propTypes'; + import { isHttpUrl, isNullOrUnDef } from '@/utils/is'; + import { useRootSetting } from '@/hooks/setting/useRootSetting'; + import { useAppInject } from '@/hooks/web/useAppInject'; + import { useDesign } from '@/hooks/web/useDesign'; + import { getEntity } from '/@/api/tigerapi/system'; export default defineComponent({ name: 'LayoutMenu', @@ -111,7 +112,38 @@ */ function handleMenuClick(path: string) { - go(path); + if (path.split('/').length > 2 && path.split('/')[2] == 'LC') { + getEntity({ + sqlcmd: `ASSEMBLY_NAME ='${path.split('/')[1]}'`, + entityName: 'SYS_LOW_CODE', + }).then((data) => { + var searchForms = JSON.parse(data.Data.Items[0].SEARCH_FORM_JSON); + let colSlots = [] as string[]; + for (const i in searchForms) { + if (!isNullOrUnDef(searchForms[i]['colSlot'])) { + colSlots.push('form-' + searchForms[i]['colSlot']); + } + } + + var _cruds = JSON.parse(data.Data.Items[0].FORM_JSON); + let crudColSlots = [] as string[]; + for (const i in _cruds) { + if (!isNullOrUnDef(_cruds[i]['colSlot'])) { + crudColSlots.push(_cruds[i]['colSlot']); + } + } + const id = { ID: path.split('/')[1], colSlots: colSlots, crudColSlots: crudColSlots }; + go(`/${path.split('/')[1]}/${path.split('/')[2]}/${encodeURI(JSON.stringify(id))}`); + }); + } else if ( + (path.split('/').length > 2 && path.split('/')[2] == 'High') || + path.split('/')[2] == 'CP' + ) { + const id = { Name: path.split('/')[1] }; + go(`/${path.split('/')[1]}/${path.split('/')[2]}/${encodeURI(JSON.stringify(id))}`); + } else { + go(path); + } } /** @@ -119,7 +151,7 @@ * @param menu */ async function beforeMenuClickFn(path: string) { - if (!isUrl(path)) { + if (!isHttpUrl(path)) { return true; } openWindow(path); @@ -181,7 +213,7 @@ padding: 10px 4px 10px 10px; img { - width: 150px; //@logo-width; + width: @logo-width; height: @logo-width; } } -- Gitblit v1.9.3