Files
weihai_erp/docs/组织管理_关联物料分类.md
T
xiaojibeier f3726f0810 first
2026-07-06 03:36:46 +08:00

46 lines
2.6 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 组织管理 · 关联物料分类
面向联调/产品:编辑组织弹窗右侧「关联物料分类」的实现说明。与 **应用内更新说明**`src/data/appChangelog.js`)及根目录 **`PROJECT_OVERVIEW.md` →「8. showtime_weihai」** 同日(2026-05-10)条目对齐。
---
## 1. 接口约定
| 用途 | 方法 | 路径 | Body 要点 |
|------|------|------|-----------|
| 当前组织已关联的物料分类 | POST | `/api/company/category_listed` | `{ company_code }` |
| 新增关联 | POST | `/api/company/link_category` | `{ company_code, category_code }` |
| 解除关联 | POST | `/api/company/unlink_category` | `{ company_code, category_code }` |
| 全量物料分类树(勾选用 + 路径索引) | POST | `/api/category/listed` | `{}` |
响应解析:关联列表兼容 `data` 为数组或 `list` / `rows` / `categories` 等字段;分类树与物料分类页一致,节点映射为 `id``category_code`)、`label``children`
---
## 2. 交互流程
1. **编辑组织**(已有 `company_code`):打开弹窗后请求 `category_listed`,并行请求 `category/listed` 构建 **code →「父 / 子 / …」** 路径表;列表每项上方展示灰色路径行,下方为名称与编码。
2. **新建组织**:无组织编码,右侧仅说明文案,不调列表与维护接口。
3. **管理关联**:点击「管理关联」加载树,预勾选当前已关联节点;用户勾选/取消勾选后点「确认」,与进入管理时的勾选快照 diff,分别调用 `link_category``unlink_category`
4. **加载文案**:列表与树加载态为「加载中」;提交关联过程遮罩为 **「关联中」**。
5. **说明文案**:标题行右侧橘色小字提示进入管理后勾选 / 取消勾选与确认的含义(无编辑权限时仍可看到说明,可无按钮)。
---
## 3. 布局与样式(OrgManage.vue
- 弹窗宽度约 **1200px**`el-dialog__body` **固定高度**`min(68vh, 720px)`),避免树数据加载后整窗被撑高。
- 左侧表单区、右侧关联区 **内部纵向滚动**;分类票据双列、关联列表与树区域 **禁止横向滚动条**(树标签省略号截断)。
- 右侧虚线容器内:列表模式与管理模式(搜索 + 树 + 取消/确认)切换,高度在固定窗体内分配。
---
## 4. 代码位置
| 项 | 路径 |
|----|------|
| 页面 | `src/views/base/OrgManage.vue` |
| 权限 | `usePagePower('company')``canUpdate` 控制「管理关联」按钮 |
同名能力(**部门 `dept_code`**、页签入口)见 **`docs/部门管理_关联物料分类.md`**。