From 580410f70f6080747986a964a9e14f0eec9d4aaa 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 23:31:09 +0800 Subject: [PATCH] =?UTF-8?q?docs(manager=5Fmeetings):=20=E9=87=8D=E5=86=99,?= =?UTF-8?q?=20=E6=8C=89=20skill=20=E6=A0=87=E5=87=86=2011=20=E7=AB=A0?= =?UTF-8?q?=E8=B5=B0,=20=E4=BF=AE=E5=A4=8D=E8=AE=B0=E5=BD=95=E5=BD=92?= =?UTF-8?q?=E9=99=84=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _self/manager_meetings.md | 455 ++++++++++++++++---------------------- 1 file changed, 186 insertions(+), 269 deletions(-) diff --git a/_self/manager_meetings.md b/_self/manager_meetings.md index c10d765..c26793d 100644 --- a/_self/manager_meetings.md +++ b/_self/manager_meetings.md @@ -3,73 +3,18 @@ > **审查时间**: 2026-08-18 > **触发场景**: 用户访问 `/manager/meetings` (manager 角色) > **审查范围**: `ry-vue3/src/views/manager/Meetings.vue` (会议管理列表页) + 后端 BizMeeting 全链路 + DB 实测 -> **对比原型**: `proto/html/components/meetings.html` (我参与的会议 / doctor 端原型, 实装 manager 重用) -> **特别说明**: 本页是 manager 端"会议管理"列表, 跟原型"我参与的会议"(doctor 端) 功能相近但角色不同 — 复用原型 UI 是合理的 - ---- - -## 修复记录 (2026-08-18 落实) - -### 第一轮: 数据库正确性 (同 manager_meeting_new.md, 已 push) - -(略 — 见 `_self/manager_meeting_new.md` §修复记录 第一轮; 共享 `BizMeeting` 实体/mapper/service) - -### 第二轮: onCopy 改走 bizAdd + 三处双 toast (commit `08d81e9`) - -| 问题 | 修复 | -|---|---| -| **P0#3 `onCopy` bug** — `meetingId=''` 走 `bizUpdate` → UPDATE 影响 0 行 + 误报"修改成功", 实际未创建副本 | `Meetings.vue:254-263 onCopy` 加 `editMode='copy'` 标志; `submitEdit()` 按 mode 分支: copy 走 `bizAdd('meeting', payload, { __silentError: true })` (删 meetingId, 走 AUTO_INCREMENT), edit 走 `bizUpdate`; Dialog title 动态 `'复制会议'` vs `'修改会议'`; Toast 文案动态 `'复制成功'` vs `'修改成功'` | -| **P0#4 双 toast (3 处)** — `submitEdit` / `onSubmit` / `onBatchSubmit` 缺 `__silentError`, 拦截器+catch 双 toast | 三处 `bizUpdate` 都加 `{ __silentError: true }`; catch 统一 `ElMessage.error(e?.msg || '...')`, 拦截器不再自动 toast | -| 附带: editForm 补 `projectId` / `projectNo` / `projectName` / `currentStage` (复制需要) | `Meetings.vue:222-231` 加 4 字段; onEdit/onCopy 都从 row 回填 | -| 后端核对 | `POST /business/meeting` 已存在 (BizMeetingController.add:36-40); Mapper INSERT (BizMeetingMapper.xml:43-87) 已覆盖所有字段; Spring Boot 默认 `fail-on-unknown=false`, 前端发的 `remark` 字段被静默忽略, 不报错; `meetingId` 走 AUTO_INCREMENT; `create_by/create_time/update_by/update_time` 由 MyBatis-Plus MetaObjectHandler 自动填充; **后端零改动** ✅ | - -### 第三轮: style-alignment + 批量提交按钮去 plain (commits `6d4f1e6` + `6774c44`) - -| 问题 | 修复 | -|---|---| -| **批量提交按钮 disabled 顺色** (`type="primary" plain`) — outlined primary 在 disabled 状态下文字极淡灰色, 跟透明背景对比度低, 看不清 | `Meetings.vue:41` 去掉 `plain` 属性; 现 `批量提交` — disabled 状态浅蓝底 + 白字, 一眼可识别 | -| **"已选 X 条" 提示紧贴按钮左边** — 应推到 batch-bar 最右侧 (跟 People.vue 风格一致) | `Meetings.vue:324 .filter-tip { ... margin-left: auto; }` | -| `` — 残留 inline style | `Meetings.vue:13` 改 ``; `Meetings.vue:325` 新增 `.date-sep { margin: 0 4px; color: #606266; }` | -| `.batch-bar` 属性顺序跟 People.vue 不一致 | `Meetings.vue:323` 改成 `margin-bottom: 12px; display: flex; gap: 8px; align-items: center;` (margin 提前) | -| 自查 (style-alignment 验证清单) | ✅ 1 层 page-card / ✅ breadcrumb / ✅ 无 desc / ✅ 无 h2 page-title / ✅ filter-form/batch-bar/pager 三 class / ✅ 蓝色全用 `var(--brand-primary)` 无 #1890ff / ✅ 边框全 #f0f0f0 无 #ebeef5 / ✅ 无 `:deep(.el-button--primary)` 大段覆盖 / ✅ el-pagination 在 .pager / ✅ el-form-item label 无冒号 / ✅ `