diff --git a/ui/src/components/common-list/index.vue b/ui/src/components/common-list/index.vue
new file mode 100644
index 000000000..a214a027a
--- /dev/null
+++ b/ui/src/components/common-list/index.vue
@@ -0,0 +1,50 @@
+
+
+
+
+
diff --git a/ui/src/components/index.ts b/ui/src/components/index.ts
index 0173c4248..1a35fe13a 100644
--- a/ui/src/components/index.ts
+++ b/ui/src/components/index.ts
@@ -11,6 +11,7 @@ import BackButton from './back-button/index.vue'
import AppTable from './app-table/index.vue'
import ReadWrite from './read-write/index.vue'
import TagEllipsis from './tag-ellipsis/index.vue'
+import CommonList from './common-list/index.vue'
export default {
install(app: App) {
@@ -26,5 +27,6 @@ export default {
app.component(AppTable.name, AppTable)
app.component(ReadWrite.name, ReadWrite)
app.component(TagEllipsis.name, TagEllipsis)
+ app.component(CommonList.name, CommonList)
}
}
diff --git a/ui/src/router/modules/application.ts b/ui/src/router/modules/application.ts
index 30b2844ae..da630133d 100644
--- a/ui/src/router/modules/application.ts
+++ b/ui/src/router/modules/application.ts
@@ -1,8 +1,68 @@
+import Layout from '@/layout/main-layout/index.vue'
const applicationRouter = {
- path: '/app',
- name: 'app',
+ path: '/application',
+ name: 'application',
meta: { icon: 'app-applicaiton', title: '应用', permission: 'APPLICATION:READ' },
- component: () => import('@/views/app/index.vue')
+ redirect: '/application',
+ children: [
+ {
+ path: '/application',
+ name: 'application',
+ component: () => import('@/views/application/index.vue')
+ },
+ {
+ path: '/application/create', // create
+ name: 'CreateApplication',
+ meta: { activeMenu: '/application' },
+ component: () => import('@/views/application/CreateApplication.vue'),
+ hidden: true
+ },
+ {
+ path: '/application/:appId',
+ name: 'ApplicationDetail',
+ meta: { title: '应用详情', activeMenu: '/application' },
+ component: Layout,
+ hidden: true,
+ children: [
+ {
+ path: 'overview',
+ name: 'AppOverview',
+ meta: {
+ icon: 'Document',
+ title: '概览',
+ active: 'overview',
+ parentPath: '/application/:appId',
+ parentName: 'ApplicationDetail'
+ },
+ component: () => import('@/views/application/AppOverview.vue')
+ },
+ {
+ path: 'setting',
+ name: 'AppSetting',
+ meta: {
+ icon: 'Setting',
+ title: '设置',
+ active: 'setting',
+ parentPath: '/application/:appId',
+ parentName: 'ApplicationDetail'
+ },
+ component: () => import('@/views/application/AppSetting.vue')
+ },
+ {
+ path: 'dialog',
+ name: 'DialogLog',
+ meta: {
+ icon: 'Setting',
+ title: '对话日志',
+ active: 'dialog',
+ parentPath: '/application/:appId',
+ parentName: 'ApplicationDetail'
+ },
+ component: () => import('@/views/application/DialogLog.vue')
+ }
+ ]
+ },
+ ]
}
export default applicationRouter
diff --git a/ui/src/router/modules/setting.ts b/ui/src/router/modules/setting.ts
index 48124a9a3..ac1c26490 100644
--- a/ui/src/router/modules/setting.ts
+++ b/ui/src/router/modules/setting.ts
@@ -16,6 +16,18 @@ const settingRouter = {
parentName: 'setting'
},
component: () => import('@/views/setting/index.vue')
+ },
+ {
+ path: '/template',
+ name: 'template',
+ meta: {
+ icon: 'app-team',
+ title: '模版管理',
+ activeMenu: '/setting',
+ parentPath: '/setting',
+ parentName: 'setting'
+ },
+ component: () => import('@/views/template/index.vue')
}
]
}
diff --git a/ui/src/styles/app.scss b/ui/src/styles/app.scss
index 07274de75..fbe03752a 100644
--- a/ui/src/styles/app.scss
+++ b/ui/src/styles/app.scss
@@ -292,5 +292,3 @@ h4 {
.primary {
color: var(--el-color-primary);
}
-
-
diff --git a/ui/src/styles/variables.scss b/ui/src/styles/variables.scss
index d07549c49..81869b6d8 100644
--- a/ui/src/styles/variables.scss
+++ b/ui/src/styles/variables.scss
@@ -29,8 +29,8 @@
--card-min-height: 160px;
--card-min-width: 220px;
- /** team */
- --team-manage-left-width: 280px;
+ /** setting */
+ --setting-left-width: 280px;
/** dataset */
--create-dataset-height: calc(
diff --git a/ui/src/views/app/index.vue b/ui/src/views/app/index.vue
deleted file mode 100644
index 18c16060e..000000000
--- a/ui/src/views/app/index.vue
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
- app
-
-
-
-
\ No newline at end of file
diff --git a/ui/src/views/application/AppOverview.vue b/ui/src/views/application/AppOverview.vue
new file mode 100644
index 000000000..77958af25
--- /dev/null
+++ b/ui/src/views/application/AppOverview.vue
@@ -0,0 +1,8 @@
+
+
+ 概览
+
+
+
+
diff --git a/ui/src/views/application/AppSetting.vue b/ui/src/views/application/AppSetting.vue
new file mode 100644
index 000000000..c0782e516
--- /dev/null
+++ b/ui/src/views/application/AppSetting.vue
@@ -0,0 +1,8 @@
+
+
+ 设置
+
+
+
+
diff --git a/ui/src/views/application/CreateApplication.vue b/ui/src/views/application/CreateApplication.vue
new file mode 100644
index 000000000..9e07d9608
--- /dev/null
+++ b/ui/src/views/application/CreateApplication.vue
@@ -0,0 +1,8 @@
+
+
+ 创建应用
+
+
+
+
diff --git a/ui/src/views/application/DialogLog.vue b/ui/src/views/application/DialogLog.vue
new file mode 100644
index 000000000..fc871dfdd
--- /dev/null
+++ b/ui/src/views/application/DialogLog.vue
@@ -0,0 +1,8 @@
+
+
+ 对话日志
+
+
+
+
diff --git a/ui/src/views/application/index.vue b/ui/src/views/application/index.vue
new file mode 100644
index 000000000..cf3b4bb81
--- /dev/null
+++ b/ui/src/views/application/index.vue
@@ -0,0 +1,148 @@
+
+
+
+
应用
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ui/src/views/setting/index.vue b/ui/src/views/setting/index.vue
index 9da493e52..c8784b35e 100644
--- a/ui/src/views/setting/index.vue
+++ b/ui/src/views/setting/index.vue
@@ -11,40 +11,34 @@
-
-
-
-
- -
-
- {{ item.username }}
- 所有者
- 用户
-
-
-
-
-
-
-
-
- 移除
-
-
-
+
+
+
+
+ {{ row.username }}
+ 所有者
+ 用户
+
+
+
+
+
-
-
-
-
-
-
+
+
+ 移除
+
+
+
+
+
+
+
@@ -181,9 +175,9 @@ function isManage(type: String) {
return type === 'manage'
}
-function clickMemberHandle(id: String) {
- currentUser.value = id
- MemberPermissions(id)
+function clickMemberHandle(item: any) {
+ currentUser.value = item.id
+ MemberPermissions(item.id)
}
function addMember() {
CreateMemberRef.value?.open()
@@ -223,23 +217,13 @@ onMounted(() => {
}
.team-member {
box-sizing: border-box;
- width: var(--team-manage-left-width);
- min-width: var(--team-manage-left-width);
- .member-list {
- li {
- padding: 11px 16px;
- &.active {
- background: var(--el-color-primary-light-9);
- border-radius: 4px;
- color: var(--el-color-primary);
- }
- }
- }
+ width: var(--setting-left-width);
+ min-width: var(--setting-left-width);
}
.permission-setting {
box-sizing: border-box;
- width: calc(100% - var(--team-manage-left-width));
+ width: calc(100% - var(--setting-left-width));
flex-direction: column;
}
diff --git a/ui/src/views/template/index.vue b/ui/src/views/template/index.vue
new file mode 100644
index 000000000..8ee68f28a
--- /dev/null
+++ b/ui/src/views/template/index.vue
@@ -0,0 +1,44 @@
+
+
+
+
+
供应商
+
+
+
+

+
{{ row.name }}
+
+
+
+
+
+
全部模型
+
+
+
+
+
+
+
+