diff --git a/apps/web-antd/src/api/workflow/task/model.d.ts b/apps/web-antd/src/api/workflow/task/model.d.ts index 5f638a8f..b79e0a22 100644 --- a/apps/web-antd/src/api/workflow/task/model.d.ts +++ b/apps/web-antd/src/api/workflow/task/model.d.ts @@ -21,7 +21,7 @@ export interface TaskInfo { permissionList?: any; userList?: any; formCustom: string; - formPath?: any; + formPath: string; flowCode: string; version: string; flowStatus: string; diff --git a/apps/web-antd/src/router/routes/index.ts b/apps/web-antd/src/router/routes/index.ts index 1a92413f..4ae6745d 100644 --- a/apps/web-antd/src/router/routes/index.ts +++ b/apps/web-antd/src/router/routes/index.ts @@ -3,7 +3,6 @@ import type { RouteRecordRaw } from 'vue-router'; import { mergeRouteModules, traverseTreeValues } from '@vben/utils'; import { coreRoutes, fallbackNotFoundRoute } from './core'; -import { workflowIframeRoutes } from './workflow-iframe'; const dynamicRouteFiles = import.meta.glob('./modules/**/*.ts', { eager: true, @@ -27,12 +26,11 @@ const externalRoutes: RouteRecordRaw[] = []; const routes: RouteRecordRaw[] = [ ...coreRoutes, ...externalRoutes, - ...workflowIframeRoutes, fallbackNotFoundRoute, ]; -/** 基本路由(登录, 第三方登录, 注册等) + workflowIframe路由不需要拦截 */ -const basicRoutes = [...coreRoutes, ...workflowIframeRoutes]; +/** 基本路由(登录, 第三方登录, 注册等) */ +const basicRoutes = [...coreRoutes]; /** 基本路由列表,这些路由不需要进入权限拦截 */ const coreRouteNames = traverseTreeValues(basicRoutes, (route) => route.name); diff --git a/apps/web-antd/src/router/routes/workflow-iframe.ts b/apps/web-antd/src/router/routes/workflow-iframe.ts deleted file mode 100644 index 137088f6..00000000 --- a/apps/web-antd/src/router/routes/workflow-iframe.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { RouteRecordRaw } from '@vben/types'; - -/** - * 该文件存放workflow表单的iframe内嵌路由 - * 不需要权限认证 少走两个接口😅 - */ -export const workflowIframeRoutes: RouteRecordRaw[] = [ - // 这里是iframe使用的 去掉外层的BasicLayout - { - name: 'WorkflowLeaveInner', - path: '/workflow/leaveEdit/index/iframe', - component: () => import('#/views/workflow/leave/leave-form.vue'), - meta: { - hideInTab: true, - title: '请假申请', - }, - }, -]; diff --git a/apps/web-antd/src/views/workflow/components/approval-details.vue b/apps/web-antd/src/views/workflow/components/approval-details.vue index 09adcff9..1634f236 100644 --- a/apps/web-antd/src/views/workflow/components/approval-details.vue +++ b/apps/web-antd/src/views/workflow/components/approval-details.vue @@ -1,16 +1,17 @@ - diff --git a/apps/web-antd/src/views/workflow/leave/leave-form.vue b/apps/web-antd/src/views/workflow/leave/leave-form.vue index 0e4d7751..da26a5a7 100644 --- a/apps/web-antd/src/views/workflow/leave/leave-form.vue +++ b/apps/web-antd/src/views/workflow/leave/leave-form.vue @@ -1,9 +1,7 @@ - - diff --git a/apps/web-antd/src/views/workflow/register.ts b/apps/web-antd/src/views/workflow/register.ts new file mode 100644 index 00000000..62ebfae4 --- /dev/null +++ b/apps/web-antd/src/views/workflow/register.ts @@ -0,0 +1,21 @@ +import { defineAsyncComponent, markRaw } from 'vue'; + +/** + * 这里定义流程描述组件 + */ + +const LeaveDescription = defineAsyncComponent( + () => import('#/views/workflow/leave/leave-description.vue'), +); + +/** + * key为流程的路径(task.formPath) value为要显示的组件 + */ +export const flowDescripionsMap = { + /** + * 请假申请 详情 + */ + '/workflow/leaveEdit/index': markRaw(LeaveDescription), +}; + +export type DescripionsMapKey = keyof typeof flowDescripionsMap;