整个路由布局修改
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
# the base url of the application, the default is "/"
|
# the base url of the application, the default is "/"
|
||||||
# if use a sub directory, it must be end with "/", like "/admin/" but not "/admin"
|
# if use a sub directory, it must be end with "/", like "/admin/" but not "/admin"
|
||||||
VITE_BASE_URL=http://192.168.0.230:8086
|
VITE_BASE_URL=/
|
||||||
|
|
||||||
VITE_APP_TITLE=MOC变更管理系统
|
VITE_APP_TITLE=MOC变更管理系统
|
||||||
|
|
||||||
@@ -20,7 +20,7 @@ VITE_AUTH_ROUTE_MODE=static
|
|||||||
VITE_ROUTE_HOME=home
|
VITE_ROUTE_HOME=home
|
||||||
|
|
||||||
# default menu icon
|
# default menu icon
|
||||||
VITE_MENU_ICON=mdi:menu
|
VITE_MENU_ICON=
|
||||||
|
|
||||||
# whether to enable http proxy when is dev mode
|
# whether to enable http proxy when is dev mode
|
||||||
VITE_HTTP_PROXY=N
|
VITE_HTTP_PROXY=N
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# backend service base url, prod environment
|
# backend service base url, prod environment
|
||||||
VITE_BASE_URL=http://192.168.0.230:8086
|
VITE_BASE_URL=/
|
||||||
VITE_SERVICE_BASE_URL=http://192.168.0.230:8086
|
VITE_SERVICE_BASE_URL=http://192.168.0.230:8086
|
||||||
|
|
||||||
# other backend service base url, prod environment
|
# other backend service base url, prod environment
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# backend service base url, test environment
|
# backend service base url, test environment
|
||||||
VITE_BASE_URL=http://192.168.0.230:8086
|
VITE_BASE_URL=/
|
||||||
VITE_SERVICE_BASE_URL=http://192.168.0.230:8086
|
VITE_SERVICE_BASE_URL=http://192.168.0.230:8086
|
||||||
|
|
||||||
# other backend service base url, test environment
|
# other backend service base url, test environment
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ export function createViteProxy(env: Env.ImportMeta, enable: boolean) {
|
|||||||
|
|
||||||
function createProxyItem(item: App.Service.ServiceConfigItem, enableLog: boolean) {
|
function createProxyItem(item: App.Service.ServiceConfigItem, enableLog: boolean) {
|
||||||
const proxy: Record<string, ProxyOptions> = {};
|
const proxy: Record<string, ProxyOptions> = {};
|
||||||
|
|
||||||
proxy[item.proxyPattern] = {
|
proxy[item.proxyPattern] = {
|
||||||
target: item.baseURL,
|
target: item.baseURL,
|
||||||
changeOrigin: true,
|
changeOrigin: true,
|
||||||
|
|||||||
+16
-15
@@ -224,16 +224,20 @@ const local: App.I18n.Schema = {
|
|||||||
403: '无权限',
|
403: '无权限',
|
||||||
404: '页面不存在',
|
404: '页面不存在',
|
||||||
500: '服务器错误',
|
500: '服务器错误',
|
||||||
home: '我的操作台',
|
home: '首页',
|
||||||
home_index: '工作台首页',
|
my: '我的操作台',
|
||||||
home_initiatechange: '发起变更',
|
my_initiatechange: '发起变更',
|
||||||
home_highrisk: '本专业高风险',
|
my_highrisk: '本专业高风险',
|
||||||
home_highriskdetail: '高风险场景详情',
|
my_highriskdetail: '高风险场景详情',
|
||||||
home_mytask: '我的任务',
|
my_mytask: '我的任务',
|
||||||
home_mydraft: '我的草稿',
|
my_mydraft: '我的草稿',
|
||||||
home_pending: '待我处理',
|
my_pending: '待我处理',
|
||||||
home_process: '流程演示',
|
my_process: '流程演示',
|
||||||
home_processdetail: '流程演示详情',
|
my_processdetail: '流程演示详情',
|
||||||
|
my_pendingchange: '待投用变更',
|
||||||
|
my_effect: '变更投入和效果',
|
||||||
|
my_datachangecenter: '变更数据中心',
|
||||||
|
my_closeconfirm: '关闭确认',
|
||||||
changeledger: '变更台账',
|
changeledger: '变更台账',
|
||||||
changeledger_mychanges: '我发起的变更',
|
changeledger_mychanges: '我发起的变更',
|
||||||
changeledger_workshopchanges: '本车间变更',
|
changeledger_workshopchanges: '本车间变更',
|
||||||
@@ -245,12 +249,9 @@ const local: App.I18n.Schema = {
|
|||||||
systemmanage_user: '架构及用户管理',
|
systemmanage_user: '架构及用户管理',
|
||||||
systemmanage_role: '角色管理',
|
systemmanage_role: '角色管理',
|
||||||
systemmanage_template: '审批模板管理',
|
systemmanage_template: '审批模板管理',
|
||||||
home_pssr: 'PSSR监督',
|
my_pssr: 'PSSR监督',
|
||||||
riskstatistics: '安全与风险统计',
|
riskstatistics: '安全与风险统计',
|
||||||
home_pendingchange: '待投用变更',
|
|
||||||
home_effect: '变更投入和效果',
|
|
||||||
home_datachangecenter: '变更数据中心',
|
|
||||||
home_closeconfirm: '关闭确认',
|
|
||||||
report: '统计报表',
|
report: '统计报表',
|
||||||
signstatistics: '质量会签统计',
|
signstatistics: '质量会签统计',
|
||||||
factoryoverview: '全工厂统计概览',
|
factoryoverview: '全工厂统计概览',
|
||||||
|
|||||||
@@ -24,21 +24,21 @@ export const views: Record<LastLevelRouteKey, RouteComponent | (() => Promise<Ro
|
|||||||
docs_archives: () => import("@/views/docs/archives/index.vue"),
|
docs_archives: () => import("@/views/docs/archives/index.vue"),
|
||||||
docs_query: () => import("@/views/docs/query/index.vue"),
|
docs_query: () => import("@/views/docs/query/index.vue"),
|
||||||
factoryoverview: () => import("@/views/factoryOverview/index.vue"),
|
factoryoverview: () => import("@/views/factoryOverview/index.vue"),
|
||||||
home_closeconfirm: () => import("@/views/home/closeConfirm/index.vue"),
|
home: () => import("@/views/home/index.vue"),
|
||||||
home_datachangecenter: () => import("@/views/home/dataChangeCenter/index.vue"),
|
|
||||||
home_effect: () => import("@/views/home/effect/index.vue"),
|
|
||||||
home_highrisk: () => import("@/views/home/highRisk/index.vue"),
|
|
||||||
home_highriskdetail: () => import("@/views/home/highRiskDetail/index.vue"),
|
|
||||||
home_index: () => import("@/views/home/index/index.vue"),
|
|
||||||
home_initiatechange: () => import("@/views/home/initiateChange/index.vue"),
|
|
||||||
home_mydraft: () => import("@/views/home/myDraft/index.vue"),
|
|
||||||
home_mytask: () => import("@/views/home/myTask/index.vue"),
|
|
||||||
home_pending: () => import("@/views/home/pending/index.vue"),
|
|
||||||
home_pendingchange: () => import("@/views/home/pendingChange/index.vue"),
|
|
||||||
home_process: () => import("@/views/home/process/index.vue"),
|
|
||||||
home_processdetail: () => import("@/views/home/processDetail/index.vue"),
|
|
||||||
home_pssr: () => import("@/views/home/pssr/index.vue"),
|
|
||||||
login: () => import("@/views/login/index.vue"),
|
login: () => import("@/views/login/index.vue"),
|
||||||
|
my_closeconfirm: () => import("@/views/my/closeConfirm/index.vue"),
|
||||||
|
my_datachangecenter: () => import("@/views/my/dataChangeCenter/index.vue"),
|
||||||
|
my_effect: () => import("@/views/my/effect/index.vue"),
|
||||||
|
my_highrisk: () => import("@/views/my/highRisk/index.vue"),
|
||||||
|
my_highriskdetail: () => import("@/views/my/highRiskDetail/index.vue"),
|
||||||
|
my_initiatechange: () => import("@/views/my/initiateChange/index.vue"),
|
||||||
|
my_mydraft: () => import("@/views/my/myDraft/index.vue"),
|
||||||
|
my_mytask: () => import("@/views/my/myTask/index.vue"),
|
||||||
|
my_pending: () => import("@/views/my/pending/index.vue"),
|
||||||
|
my_pendingchange: () => import("@/views/my/pendingChange/index.vue"),
|
||||||
|
my_process: () => import("@/views/my/process/index.vue"),
|
||||||
|
my_processdetail: () => import("@/views/my/processDetail/index.vue"),
|
||||||
|
my_pssr: () => import("@/views/my/pssr/index.vue"),
|
||||||
report: () => import("@/views/report/index.vue"),
|
report: () => import("@/views/report/index.vue"),
|
||||||
riskstatistics: () => import("@/views/riskStatistics/index.vue"),
|
riskstatistics: () => import("@/views/riskStatistics/index.vue"),
|
||||||
signstatistics: () => import("@/views/signStatistics/index.vue"),
|
signstatistics: () => import("@/views/signStatistics/index.vue"),
|
||||||
|
|||||||
+148
-161
@@ -47,7 +47,7 @@ export const generatedRoutes: GeneratedRoute[] = [
|
|||||||
title: 'changeledger',
|
title: 'changeledger',
|
||||||
i18nKey: 'route.changeledger',
|
i18nKey: 'route.changeledger',
|
||||||
icon: 'tabler:table',
|
icon: 'tabler:table',
|
||||||
order: 2
|
order: 3
|
||||||
},
|
},
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
@@ -130,172 +130,14 @@ export const generatedRoutes: GeneratedRoute[] = [
|
|||||||
{
|
{
|
||||||
name: 'home',
|
name: 'home',
|
||||||
path: '/home',
|
path: '/home',
|
||||||
component: 'layout.base',
|
component: 'layout.base$view.home',
|
||||||
meta: {
|
meta: {
|
||||||
title: 'home',
|
title: 'home',
|
||||||
i18nKey: 'route.home',
|
i18nKey: 'route.home',
|
||||||
icon: 'lucide:home',
|
icon: 'ant-design:home-outlined',
|
||||||
order: 1
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
name: 'home_closeconfirm',
|
|
||||||
path: '/home/closeconfirm',
|
|
||||||
component: 'view.home_closeconfirm',
|
|
||||||
meta: {
|
|
||||||
title: 'home_closeconfirm',
|
|
||||||
i18nKey: 'route.home_closeconfirm',
|
|
||||||
icon: '',
|
|
||||||
order: 6
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_datachangecenter',
|
|
||||||
path: '/home/datachangecenter',
|
|
||||||
component: 'view.home_datachangecenter',
|
|
||||||
meta: {
|
|
||||||
title: 'home_datachangecenter',
|
|
||||||
i18nKey: 'route.home_datachangecenter',
|
|
||||||
icon: '',
|
|
||||||
order: 5
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_effect',
|
|
||||||
path: '/home/effect',
|
|
||||||
component: 'view.home_effect',
|
|
||||||
meta: {
|
|
||||||
title: 'home_effect',
|
|
||||||
i18nKey: 'route.home_effect',
|
|
||||||
icon: '',
|
|
||||||
order: 6
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_highrisk',
|
|
||||||
path: '/home/highrisk',
|
|
||||||
component: 'view.home_highrisk',
|
|
||||||
meta: {
|
|
||||||
title: 'home_highrisk',
|
|
||||||
i18nKey: 'route.home_highrisk',
|
|
||||||
icon: '',
|
|
||||||
order: 6
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_highriskdetail',
|
|
||||||
path: '/home/highriskdetail',
|
|
||||||
component: 'view.home_highriskdetail',
|
|
||||||
meta: {
|
|
||||||
title: 'home_highriskdetail',
|
|
||||||
i18nKey: 'route.home_highriskdetail',
|
|
||||||
activeMenu: 'home_highrisk',
|
|
||||||
hideInMenu: true,
|
|
||||||
icon: ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_index',
|
|
||||||
path: '/home/index',
|
|
||||||
component: 'view.home_index',
|
|
||||||
meta: {
|
|
||||||
title: 'home_index',
|
|
||||||
i18nKey: 'route.home_index',
|
|
||||||
icon: '',
|
|
||||||
order: 1
|
order: 1
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
|
||||||
name: 'home_initiatechange',
|
|
||||||
path: '/home/initiatechange',
|
|
||||||
component: 'view.home_initiatechange',
|
|
||||||
meta: {
|
|
||||||
title: 'home_initiatechange',
|
|
||||||
i18nKey: 'route.home_initiatechange',
|
|
||||||
icon: '',
|
|
||||||
order: 2
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_mydraft',
|
|
||||||
path: '/home/mydraft',
|
|
||||||
component: 'view.home_mydraft',
|
|
||||||
meta: {
|
|
||||||
title: 'home_mydraft',
|
|
||||||
i18nKey: 'route.home_mydraft',
|
|
||||||
icon: '',
|
|
||||||
order: 3
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_mytask',
|
|
||||||
path: '/home/mytask',
|
|
||||||
component: 'view.home_mytask',
|
|
||||||
meta: {
|
|
||||||
title: 'home_mytask',
|
|
||||||
i18nKey: 'route.home_mytask',
|
|
||||||
icon: '',
|
|
||||||
order: 5
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_pending',
|
|
||||||
path: '/home/pending',
|
|
||||||
component: 'view.home_pending',
|
|
||||||
meta: {
|
|
||||||
title: 'home_pending',
|
|
||||||
i18nKey: 'route.home_pending',
|
|
||||||
icon: '',
|
|
||||||
order: 4
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_pendingchange',
|
|
||||||
path: '/home/pendingchange',
|
|
||||||
component: 'view.home_pendingchange',
|
|
||||||
meta: {
|
|
||||||
title: 'home_pendingchange',
|
|
||||||
i18nKey: 'route.home_pendingchange',
|
|
||||||
icon: '',
|
|
||||||
order: 5
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_process',
|
|
||||||
path: '/home/process',
|
|
||||||
component: 'view.home_process',
|
|
||||||
meta: {
|
|
||||||
title: 'home_process',
|
|
||||||
i18nKey: 'route.home_process',
|
|
||||||
icon: '',
|
|
||||||
order: 7
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_processdetail',
|
|
||||||
path: '/home/processdetail',
|
|
||||||
component: 'view.home_processdetail',
|
|
||||||
meta: {
|
|
||||||
title: 'home_processdetail',
|
|
||||||
i18nKey: 'route.home_processdetail',
|
|
||||||
activeMenu: 'home_process',
|
|
||||||
hideInMenu: true,
|
|
||||||
icon: ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'home_pssr',
|
|
||||||
path: '/home/pssr',
|
|
||||||
component: 'view.home_pssr',
|
|
||||||
meta: {
|
|
||||||
title: 'home_pssr',
|
|
||||||
i18nKey: 'route.home_pssr',
|
|
||||||
icon: '',
|
|
||||||
order: 6
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: 'login',
|
name: 'login',
|
||||||
path: '/login/:module(pwd-login)?',
|
path: '/login/:module(pwd-login)?',
|
||||||
@@ -308,6 +150,151 @@ export const generatedRoutes: GeneratedRoute[] = [
|
|||||||
hideInMenu: true
|
hideInMenu: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: 'my',
|
||||||
|
path: '/my',
|
||||||
|
component: 'layout.base',
|
||||||
|
meta: {
|
||||||
|
title: 'my',
|
||||||
|
i18nKey: 'route.my',
|
||||||
|
icon: 'heroicons:computer-desktop',
|
||||||
|
order: 2
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
name: 'my_closeconfirm',
|
||||||
|
path: '/my/closeconfirm',
|
||||||
|
component: 'view.my_closeconfirm',
|
||||||
|
meta: {
|
||||||
|
title: 'my_closeconfirm',
|
||||||
|
i18nKey: 'route.my_closeconfirm',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_datachangecenter',
|
||||||
|
path: '/my/datachangecenter',
|
||||||
|
component: 'view.my_datachangecenter',
|
||||||
|
meta: {
|
||||||
|
title: 'my_datachangecenter',
|
||||||
|
i18nKey: 'route.my_datachangecenter',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_effect',
|
||||||
|
path: '/my/effect',
|
||||||
|
component: 'view.my_effect',
|
||||||
|
meta: {
|
||||||
|
title: 'my_effect',
|
||||||
|
i18nKey: 'route.my_effect',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_highrisk',
|
||||||
|
path: '/my/highrisk',
|
||||||
|
component: 'view.my_highrisk',
|
||||||
|
meta: {
|
||||||
|
title: 'my_highrisk',
|
||||||
|
i18nKey: 'route.my_highrisk',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_highriskdetail',
|
||||||
|
path: '/my/highriskdetail',
|
||||||
|
component: 'view.my_highriskdetail',
|
||||||
|
meta: {
|
||||||
|
title: 'my_highriskdetail',
|
||||||
|
i18nKey: 'route.my_highriskdetail',
|
||||||
|
icon: '',
|
||||||
|
hideInMenu: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_initiatechange',
|
||||||
|
path: '/my/initiatechange',
|
||||||
|
component: 'view.my_initiatechange',
|
||||||
|
meta: {
|
||||||
|
title: 'my_initiatechange',
|
||||||
|
i18nKey: 'route.my_initiatechange',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_mydraft',
|
||||||
|
path: '/my/mydraft',
|
||||||
|
component: 'view.my_mydraft',
|
||||||
|
meta: {
|
||||||
|
title: 'my_mydraft',
|
||||||
|
i18nKey: 'route.my_mydraft',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_mytask',
|
||||||
|
path: '/my/mytask',
|
||||||
|
component: 'view.my_mytask',
|
||||||
|
meta: {
|
||||||
|
title: 'my_mytask',
|
||||||
|
i18nKey: 'route.my_mytask',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_pending',
|
||||||
|
path: '/my/pending',
|
||||||
|
component: 'view.my_pending',
|
||||||
|
meta: {
|
||||||
|
title: 'my_pending',
|
||||||
|
i18nKey: 'route.my_pending',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_pendingchange',
|
||||||
|
path: '/my/pendingchange',
|
||||||
|
component: 'view.my_pendingchange',
|
||||||
|
meta: {
|
||||||
|
title: 'my_pendingchange',
|
||||||
|
i18nKey: 'route.my_pendingchange',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_process',
|
||||||
|
path: '/my/process',
|
||||||
|
component: 'view.my_process',
|
||||||
|
meta: {
|
||||||
|
title: 'my_process',
|
||||||
|
i18nKey: 'route.my_process',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_processdetail',
|
||||||
|
path: '/my/processdetail',
|
||||||
|
component: 'view.my_processdetail',
|
||||||
|
meta: {
|
||||||
|
title: 'my_processdetail',
|
||||||
|
i18nKey: 'route.my_processdetail',
|
||||||
|
icon: '',
|
||||||
|
hideInMenu: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'my_pssr',
|
||||||
|
path: '/my/pssr',
|
||||||
|
component: 'view.my_pssr',
|
||||||
|
meta: {
|
||||||
|
title: 'my_pssr',
|
||||||
|
i18nKey: 'route.my_pssr',
|
||||||
|
icon: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: 'report',
|
name: 'report',
|
||||||
path: '/report',
|
path: '/report',
|
||||||
|
|||||||
@@ -175,21 +175,21 @@ const routeMap: RouteMap = {
|
|||||||
"docs_query": "/docs/query",
|
"docs_query": "/docs/query",
|
||||||
"factoryoverview": "/factoryoverview",
|
"factoryoverview": "/factoryoverview",
|
||||||
"home": "/home",
|
"home": "/home",
|
||||||
"home_closeconfirm": "/home/closeconfirm",
|
|
||||||
"home_datachangecenter": "/home/datachangecenter",
|
|
||||||
"home_effect": "/home/effect",
|
|
||||||
"home_highrisk": "/home/highrisk",
|
|
||||||
"home_highriskdetail": "/home/highriskdetail",
|
|
||||||
"home_index": "/home/index",
|
|
||||||
"home_initiatechange": "/home/initiatechange",
|
|
||||||
"home_mydraft": "/home/mydraft",
|
|
||||||
"home_mytask": "/home/mytask",
|
|
||||||
"home_pending": "/home/pending",
|
|
||||||
"home_pendingchange": "/home/pendingchange",
|
|
||||||
"home_process": "/home/process",
|
|
||||||
"home_processdetail": "/home/processdetail",
|
|
||||||
"home_pssr": "/home/pssr",
|
|
||||||
"login": "/login/:module(pwd-login)?",
|
"login": "/login/:module(pwd-login)?",
|
||||||
|
"my": "/my",
|
||||||
|
"my_closeconfirm": "/my/closeconfirm",
|
||||||
|
"my_datachangecenter": "/my/datachangecenter",
|
||||||
|
"my_effect": "/my/effect",
|
||||||
|
"my_highrisk": "/my/highrisk",
|
||||||
|
"my_highriskdetail": "/my/highriskdetail",
|
||||||
|
"my_initiatechange": "/my/initiatechange",
|
||||||
|
"my_mydraft": "/my/mydraft",
|
||||||
|
"my_mytask": "/my/mytask",
|
||||||
|
"my_pending": "/my/pending",
|
||||||
|
"my_pendingchange": "/my/pendingchange",
|
||||||
|
"my_process": "/my/process",
|
||||||
|
"my_processdetail": "/my/processdetail",
|
||||||
|
"my_pssr": "/my/pssr",
|
||||||
"report": "/report",
|
"report": "/report",
|
||||||
"riskstatistics": "/riskstatistics",
|
"riskstatistics": "/riskstatistics",
|
||||||
"signstatistics": "/signstatistics",
|
"signstatistics": "/signstatistics",
|
||||||
|
|||||||
Vendored
+29
-28
@@ -29,21 +29,21 @@ declare module "@elegant-router/types" {
|
|||||||
"docs_query": "/docs/query";
|
"docs_query": "/docs/query";
|
||||||
"factoryoverview": "/factoryoverview";
|
"factoryoverview": "/factoryoverview";
|
||||||
"home": "/home";
|
"home": "/home";
|
||||||
"home_closeconfirm": "/home/closeconfirm";
|
|
||||||
"home_datachangecenter": "/home/datachangecenter";
|
|
||||||
"home_effect": "/home/effect";
|
|
||||||
"home_highrisk": "/home/highrisk";
|
|
||||||
"home_highriskdetail": "/home/highriskdetail";
|
|
||||||
"home_index": "/home/index";
|
|
||||||
"home_initiatechange": "/home/initiatechange";
|
|
||||||
"home_mydraft": "/home/mydraft";
|
|
||||||
"home_mytask": "/home/mytask";
|
|
||||||
"home_pending": "/home/pending";
|
|
||||||
"home_pendingchange": "/home/pendingchange";
|
|
||||||
"home_process": "/home/process";
|
|
||||||
"home_processdetail": "/home/processdetail";
|
|
||||||
"home_pssr": "/home/pssr";
|
|
||||||
"login": "/login/:module(pwd-login)?";
|
"login": "/login/:module(pwd-login)?";
|
||||||
|
"my": "/my";
|
||||||
|
"my_closeconfirm": "/my/closeconfirm";
|
||||||
|
"my_datachangecenter": "/my/datachangecenter";
|
||||||
|
"my_effect": "/my/effect";
|
||||||
|
"my_highrisk": "/my/highrisk";
|
||||||
|
"my_highriskdetail": "/my/highriskdetail";
|
||||||
|
"my_initiatechange": "/my/initiatechange";
|
||||||
|
"my_mydraft": "/my/mydraft";
|
||||||
|
"my_mytask": "/my/mytask";
|
||||||
|
"my_pending": "/my/pending";
|
||||||
|
"my_pendingchange": "/my/pendingchange";
|
||||||
|
"my_process": "/my/process";
|
||||||
|
"my_processdetail": "/my/processdetail";
|
||||||
|
"my_pssr": "/my/pssr";
|
||||||
"report": "/report";
|
"report": "/report";
|
||||||
"riskstatistics": "/riskstatistics";
|
"riskstatistics": "/riskstatistics";
|
||||||
"signstatistics": "/signstatistics";
|
"signstatistics": "/signstatistics";
|
||||||
@@ -92,6 +92,7 @@ declare module "@elegant-router/types" {
|
|||||||
| "factoryoverview"
|
| "factoryoverview"
|
||||||
| "home"
|
| "home"
|
||||||
| "login"
|
| "login"
|
||||||
|
| "my"
|
||||||
| "report"
|
| "report"
|
||||||
| "riskstatistics"
|
| "riskstatistics"
|
||||||
| "signstatistics"
|
| "signstatistics"
|
||||||
@@ -121,21 +122,21 @@ declare module "@elegant-router/types" {
|
|||||||
| "docs_archives"
|
| "docs_archives"
|
||||||
| "docs_query"
|
| "docs_query"
|
||||||
| "factoryoverview"
|
| "factoryoverview"
|
||||||
| "home_closeconfirm"
|
| "home"
|
||||||
| "home_datachangecenter"
|
|
||||||
| "home_effect"
|
|
||||||
| "home_highrisk"
|
|
||||||
| "home_highriskdetail"
|
|
||||||
| "home_index"
|
|
||||||
| "home_initiatechange"
|
|
||||||
| "home_mydraft"
|
|
||||||
| "home_mytask"
|
|
||||||
| "home_pending"
|
|
||||||
| "home_pendingchange"
|
|
||||||
| "home_process"
|
|
||||||
| "home_processdetail"
|
|
||||||
| "home_pssr"
|
|
||||||
| "login"
|
| "login"
|
||||||
|
| "my_closeconfirm"
|
||||||
|
| "my_datachangecenter"
|
||||||
|
| "my_effect"
|
||||||
|
| "my_highrisk"
|
||||||
|
| "my_highriskdetail"
|
||||||
|
| "my_initiatechange"
|
||||||
|
| "my_mydraft"
|
||||||
|
| "my_mytask"
|
||||||
|
| "my_pending"
|
||||||
|
| "my_pendingchange"
|
||||||
|
| "my_process"
|
||||||
|
| "my_processdetail"
|
||||||
|
| "my_pssr"
|
||||||
| "report"
|
| "report"
|
||||||
| "riskstatistics"
|
| "riskstatistics"
|
||||||
| "signstatistics"
|
| "signstatistics"
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import {
|
|||||||
countOpenStatus, type ChangeLevel, type ChangeOrder, type ChangeStatus, type ChangeType,
|
countOpenStatus, type ChangeLevel, type ChangeOrder, type ChangeStatus, type ChangeType,
|
||||||
} from "@/typings/model";
|
} from "@/typings/model";
|
||||||
import { getColorWithOpacity } from "@/utils/common";
|
import { getColorWithOpacity } from "@/utils/common";
|
||||||
import FlowRing from "../modules/FlowRing.vue";
|
import FlowRing from "./modules/FlowRing.vue";
|
||||||
|
|
||||||
const appStore = useAppStore();
|
const appStore = useAppStore();
|
||||||
const themeStore = useThemeStore();
|
const themeStore = useThemeStore();
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
<script setup lang="ts">
|
|
||||||
const props = defineProps<{ status: any }>();
|
|
||||||
const BIG_STAGES = ["申请审批", "实施与关闭", "变更关闭"];
|
|
||||||
const bigStageOf = (s: any) => (s === "审批中" ? 0 : s === "已关闭" ? 2 : 1);
|
|
||||||
const cur = bigStageOf(props.status);
|
|
||||||
const pct = ((cur + 1) / BIG_STAGES.length) * 100;
|
|
||||||
const size = 34, stroke = 4, r = (size - stroke) / 2, c = 2 * Math.PI * r;
|
|
||||||
const title = `阶段进度 ${cur + 1}/${BIG_STAGES.length}:${BIG_STAGES.slice(0, cur + 1).join(" → ")}${cur < BIG_STAGES.length - 1 ? " → …" : ""}`;
|
|
||||||
</script>
|
|
||||||
<template>
|
|
||||||
<span class="relative inline-flex shrink-0 items-center justify-center" :style="{ width: size + 'px', height: size + 'px' }" :title="title">
|
|
||||||
<svg :width="size" :height="size" class="-rotate-90">
|
|
||||||
<circle :cx="size / 2" :cy="size / 2" :r="r" stroke="#E2E8F0" :stroke-width="stroke" fill="none" />
|
|
||||||
<circle :cx="size / 2" :cy="size / 2" :r="r" stroke="#2080f0" :stroke-width="stroke" fill="none"
|
|
||||||
:stroke-dasharray="c" :stroke-dashoffset="c * (1 - pct / 100)" stroke-linecap="round" />
|
|
||||||
</svg>
|
|
||||||
<span class="absolute inset-0 flex items-center justify-center text-[9px] font-bold text-[#2080f0] dark:text-white">{{ cur + 1 }}/3</span>
|
|
||||||
</span>
|
|
||||||
</template>
|
|
||||||
@@ -313,13 +313,13 @@ const toggle = (v: boolean) => {
|
|||||||
<div class="py-3 px-4">
|
<div class="py-3 px-4">
|
||||||
<NTabs type="segment" animated>
|
<NTabs type="segment" animated>
|
||||||
<NTabPane name="chap1" tab="HAZOP分析矩阵">
|
<NTabPane name="chap1" tab="HAZOP分析矩阵">
|
||||||
|
HAZOP分析矩阵
|
||||||
</NTabPane>
|
</NTabPane>
|
||||||
<NTabPane name="chap2" tab="JSA分析矩阵">
|
<NTabPane name="chap2" tab="JSA分析矩阵">
|
||||||
|
JSA分析矩阵
|
||||||
</NTabPane>
|
</NTabPane>
|
||||||
<NTabPane name="chap3" tab="SCL分析矩阵">
|
<NTabPane name="chap3" tab="SCL分析矩阵">
|
||||||
|
SCL分析矩阵
|
||||||
</NTabPane>
|
</NTabPane>
|
||||||
</NTabs>
|
</NTabs>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user