From f63d5e9591f8ade8fa7ccb4523d27ff26be81feb Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周三, 07 5月 2025 14:10:14 +0800
Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/HIA24016N_PipeLineDemo

---
 HIAWms/web/src/widgets/HIAWms/Views/HIAWms.tsx |   81 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 81 insertions(+), 0 deletions(-)

diff --git a/HIAWms/web/src/widgets/HIAWms/Views/HIAWms.tsx b/HIAWms/web/src/widgets/HIAWms/Views/HIAWms.tsx
new file mode 100644
index 0000000..7e8b462
--- /dev/null
+++ b/HIAWms/web/src/widgets/HIAWms/Views/HIAWms.tsx
@@ -0,0 +1,81 @@
+import {
+  Component,
+  DefineComponent,
+  defineComponent,
+  markRaw,
+  ref,
+  SetupContext,
+  onMounted,
+} from 'vue'
+import styles from './HIAWms.module.scss'
+// import WmsContainer from './Pages/HIAWms/WmsContainer'
+import Tab from '@/components/Tab/Tab'
+import { useProvideModels } from '@/libs/Provider/app'
+import { usePermission } from '@/libs/Permission/Permission'
+import { permissionCodes } from '../enum'
+import { ModuleType, TabItem } from '../type/Type'
+import { getEntityNames } from '@/hooks/hook'
+import TabPane from '@/components/Tab/TabPane'
+
+const Models: ModuleType = import.meta.glob('./config/*.json', {
+  eager: true,
+})
+
+const entityNames = getEntityNames(Models)
+
+const nameToLabelMap = [{ name: 'WmsMaterial', label: '鐗╂枡鍩虹' }]
+
+export default defineComponent({
+  name: 'HIAWms',
+
+  setup(props, ctx: SetupContext) {
+    useProvideModels()
+    usePermission(props, permissionCodes)
+
+    const rf = ref<{
+      [key: string]: any
+    }>({})
+
+    const tabData = ref<TabItem[]>([])
+
+    const onTabChange = (v: string) => {
+      rf.value?.[v]?.reloadList()
+    }
+
+    const initTableData = async () => {
+      for (const i in entityNames) {
+        const name = entityNames[i]
+        const module = await import(`./Pages/${name}/${name}.tsx`)
+        const WmsMaterial = markRaw(module.default)
+        const foundLabel =
+          nameToLabelMap.find((item) => item.name === name)?.label || name
+        tabData.value.push({
+          label: foundLabel,
+          name,
+          component: WmsMaterial,
+        })
+      }
+    }
+
+    initTableData()
+
+    return () => {
+      return (
+        <div class={styles.HIAWms}>
+          <Tab data={tabData.value} type="list" onTab={onTabChange}>
+            {tabData.value.map((widgetInfo) => {
+              const Widget: any = widgetInfo.component
+              return (
+                <TabPane label={widgetInfo.label} name={widgetInfo.name}>
+                  <Widget
+                    ref={(r: any) => (rf.value['WmsMaterial'] = r)}
+                  ></Widget>
+                </TabPane>
+              )
+            })}
+          </Tab>
+        </div>
+      )
+    }
+  },
+})

--
Gitblit v1.9.3