From 4634339bc2a5e190055d215849f561683e08a525 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E5=BA=86=E6=B3=B0?= <12369755+htcloud1@user.noreply.gitee.com> Date: Tue, 18 Aug 2026 21:39:58 +0800 Subject: [PATCH] =?UTF-8?q?feat(executor/people):=20=E6=9F=A5=E7=9C=8B?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E6=96=B0=E9=A1=B5=E9=9D=A2=20(=E5=8F=AA?= =?UTF-8?q?=E8=AF=BB,=20=E6=97=A0=E8=B4=A6=E5=8F=B7/=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E5=AD=97=E6=AE=B5)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新建 executor/PersonDetail.vue, 结构与 NewPerson.vue 一致 (page-card + breadcrumb + el-card form-card + 两列 el-row), 但只读 + 不显示用户名/初始密码/状态 (6 字段: 姓名/手机号/所属公司/部门/职务/角色) - router 加 /executor/people/detail/:id → PersonDetail.vue - People.vue: onView 改为 router.push, 删 view dialog 块 + view/viewOpen refs Co-Authored-By: Claude --- ry-vue3/src/router/index.js | 1 + ry-vue3/src/views/executor/People.vue | 18 +-- ry-vue3/src/views/executor/PersonDetail.vue | 139 ++++++++++++++++++++ 3 files changed, 141 insertions(+), 17 deletions(-) create mode 100644 ry-vue3/src/views/executor/PersonDetail.vue diff --git a/ry-vue3/src/router/index.js b/ry-vue3/src/router/index.js index d476f38..6fd1f3f 100644 --- a/ry-vue3/src/router/index.js +++ b/ry-vue3/src/router/index.js @@ -106,6 +106,7 @@ const routes = [ { path: 'people', name: 'executor-people', component: () => import('@/views/executor/People.vue'), meta: { title: '人员管理' } }, { path: 'people/new', name: 'executor-people-new', component: () => import('@/views/executor/NewPerson.vue'), meta: { title: '新建人员' } }, { path: 'people/edit/:id', name: 'executor-people-edit', component: () => import('@/views/executor/NewPerson.vue'), meta: { title: '编辑人员' } }, + { path: 'people/detail/:id', name: 'executor-people-detail', component: () => import('@/views/executor/PersonDetail.vue'), meta: { title: '人员详情' } }, { path: 'account', name: 'executor-account', component: () => import('@/views/executor/Account.vue'), meta: { title: '账号信息' } }, { path: 'labor', name: 'executor-labor', component: () => import('@/views/executor/Labor.vue'), meta: { title: '劳务凭证' } } ] diff --git a/ry-vue3/src/views/executor/People.vue b/ry-vue3/src/views/executor/People.vue index 939e88d..a9174e8 100644 --- a/ry-vue3/src/views/executor/People.vue +++ b/ry-vue3/src/views/executor/People.vue @@ -101,20 +101,6 @@ 关闭 - - - - - {{ view.name }} - {{ view.phone }} - {{ view.orgName }} - {{ view.department }} - {{ view.position }} - {{ translatePersonRole(view.role) }} - {{ view.status || '正常' }} - - - @@ -137,8 +123,6 @@ const q = reactive({ name: '', phone: '', orgName: '', department: '', position: const page = reactive({ pageNum: 1, pageSize: 10, total: 0 }) const importOpen = ref(false) -const view = ref({}) -const viewOpen = ref(false) const uploadRef = ref() const importFile = ref(null) // el-upload 选中的原始 File 对象 (file.raw) @@ -165,7 +149,7 @@ function reset() { Object.assign(q, { name:'',phone:'',orgName:'',department:'', function goNew() { router.push('/executor/people/new') } function goEdit(row) { router.push(`/executor/people/edit/${row.personId}`) } -function onView(row) { view.value = row; viewOpen.value = true } +function onView(row) { router.push(`/executor/people/detail/${row.personId}`) } async function onToggleStatus(row, action) { try { diff --git a/ry-vue3/src/views/executor/PersonDetail.vue b/ry-vue3/src/views/executor/PersonDetail.vue new file mode 100644 index 0000000..c54ab2c --- /dev/null +++ b/ry-vue3/src/views/executor/PersonDetail.vue @@ -0,0 +1,139 @@ + + + + + \ No newline at end of file