diff --git a/src/router/index.ts b/src/router/index.ts index 84cb70c..a512d98 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -115,7 +115,20 @@ export const constantRoutes: RouteRecordRaw[] = [ component: () => import('@/views/oa/erp/erpProjectPlan/edit.vue'), name: 'ErpProjectPlanView', meta: { title: '项目计划查看', activeMenu: '/oa/erp/erpProjectPlan' } - } + }, + + { + path: 'erpProjectPlan/gantt/:projectPlanId', + component: () => import('@/views/oa/erp/erpProjectPlan/gantt.vue'), + name: 'ErpProjectPlanGantt', + meta: { title: '项目计划甘特图', activeMenu: '/oa/erp/erpProjectPlan' } + }, + { + path: 'erpProjectChange/edit/:projectChangeId', + component: () => import('@/views/oa/erp/erpProjectChange/edit.vue'), + name: 'ErpProjectChangeEdit', + meta: { title: '项目变更编辑', activeMenu: '/oa/erp/erpProjectPlan' } + }, ] }, { @@ -128,7 +141,13 @@ export const constantRoutes: RouteRecordRaw[] = [ component: () => import('@/views/oa/crm/crmQuoteInfo/edit.vue'), name: 'crmQuoteInfoEdit', meta: { title: '报价单编辑', activeMenu: '/oa/crm/crmQuoteInfo' } - } + }, + { + path: 'crmQuoteInfo/view/:quoteId', + component: () => import('@/views/oa/crm/crmQuoteInfo/edit.vue'), + name: 'crmQuoteInfoView', + meta: { title: '报价单查看', activeMenu: '/oa/crm/crmQuoteInfo' } + }, ] }, { diff --git a/src/views/oa/erp/erpProjectPlan/edit.vue b/src/views/oa/erp/erpProjectPlan/edit.vue index 6071315..16188d5 100644 --- a/src/views/oa/erp/erpProjectPlan/edit.vue +++ b/src/views/oa/erp/erpProjectPlan/edit.vue @@ -93,7 +93,7 @@ 添加阶段 - + @@ -140,11 +140,33 @@ - + + + + + + + - + @@ -372,6 +378,21 @@ approvalRecordRef.value?.init(row.projectPlanId); } + /** 项目计划变更按钮操作 */ + const handlePlanChange = (row: ErpProjectPlanVO) => { + // 跳转到项目变更编辑页面,传递项目 ID + router.push(`/oa/erp/erpProjectChange/edit/0?projectId=${row.projectId}`); + } + + /** 甘特图按钮 */ + const handleGantt = (row: ErpProjectPlanVO) => { + if (!row.projectPlanId) { + proxy?.$modal.msgWarning('请先保存项目计划信息'); + return; + } + router.push(`/oa/erp/erpProjectPlan/gantt/${row.projectPlanId}`); + } + /** 修改按钮操作(保留用于对话框形式) */ const handleUpdate = async (row?: ErpProjectPlanVO) => { reset();