140 lines
4.7 KiB
Markdown
140 lines
4.7 KiB
Markdown
# Tasks: 同步前端以支持中介黑名单详细字段和类型化模板导入
|
||
|
||
## 任务列表
|
||
|
||
### 阶段 1:API 接口层扩展
|
||
|
||
- [x] 1.1 在 `ruoyi-ui/src/api/dpcIntermediary.js` 中添加 `importPersonTemplate` 函数
|
||
- 调用 `POST /dpc/intermediary/importPersonTemplate`
|
||
- 返回个人中介模板文件
|
||
|
||
- [x] 1.2 在 `ruoyi-ui/src/api/dpcIntermediary.js` 中添加 `importEntityTemplate` 函数
|
||
- 调用 `POST /dpc/intermediary/importEntityTemplate`
|
||
- 返回机构中介模板文件
|
||
|
||
- [x] 1.3 在 `ruoyi-ui/src/api/dpcIntermediary.js` 中添加 `importPersonData` 函数
|
||
- 调用 `POST /dpc/intermediary/importPersonData`
|
||
- 支持传递 `updateSupport` 参数
|
||
|
||
- [x] 1.4 在 `ruoyi-ui/src/api/dpcIntermediary.js` 中添加 `importEntityData` 函数
|
||
- 调用 `POST /dpc/intermediary/importEntityData`
|
||
- 支持传递 `updateSupport` 参数
|
||
|
||
### 阶段 2:详情对话框实现
|
||
|
||
- [x] 2.1 在 `ruoyi-ui/src/views/dpcIntermediary/index.vue` 的 data 中添加详情相关属性
|
||
- 添加 `detailOpen: false`
|
||
- 添加 `detailData: {}`
|
||
|
||
- [x] 2.2 在 `ruoyi-ui/src/views/dpcIntermediary/index.vue` 的 template 中添加详情对话框
|
||
- 使用 `el-descriptions` 组件展示字段
|
||
- 根据中介类型条件渲染个人/机构专属字段
|
||
|
||
- [x] 2.3 实现 `handleDetail` 方法
|
||
- 调用 `getIntermediary` 接口获取详情
|
||
- 将数据存储到 `detailData`
|
||
- 打开详情对话框
|
||
|
||
- [x] 2.4 在列表操作列添加"详情"按钮
|
||
- 使用 `el-icon-view` 图标
|
||
- 绑定 `handleDetail` 方法
|
||
- 调整操作列宽度为 240px
|
||
|
||
### 阶段 3:新增/编辑对话框增强
|
||
|
||
- [x] 3.1 在 `ruoyi-ui/src/views/dpcIntermediary/index.vue` 的 data 中添加 `activeTab` 属性
|
||
- 默认值为 `'basic'`
|
||
|
||
- [x] 3.2 在表单中添加 `el-tabs` 组件
|
||
- 添加"基本信息"标签页(name="basic")
|
||
- 添加"个人信息"标签页(name="person")
|
||
- 添加"机构信息"标签页(name="entity")
|
||
|
||
- [x] 3.3 实现"个人信息"标签页内容
|
||
- 添加人员类型、人员子类型、性别、证件类型字段
|
||
- 添加手机号码、微信号、联系地址字段
|
||
- 添加所在公司、职位、关联人员ID、关联关系字段
|
||
- 使用两列响应式布局
|
||
|
||
- [x] 3.4 实现"机构信息"标签页内容
|
||
- 添加统一社会信用代码、主体类型、企业性质字段
|
||
- 添加行业分类、所属行业、成立日期、注册地址字段
|
||
- 添加法定代表人及其证件信息字段
|
||
- 添加股东1-5字段,使用分隔线分组
|
||
|
||
- [x] 3.5 更新 `reset` 方法
|
||
- 添加所有个人字段的初始化
|
||
- 添加所有机构字段的初始化
|
||
- 重置 `activeTab` 为 `'basic'`
|
||
|
||
- [x] 3.6 实现 `handleTypeChange` 方法
|
||
- 监听中介类型变化
|
||
- 自动切换到对应的标签页
|
||
|
||
- [x] 3.7 调整对话框宽度
|
||
- 将宽度从 600px 调整为 900px
|
||
- 适应更多字段的展示
|
||
|
||
### 阶段 4:导入对话框改造
|
||
|
||
- [x] 4.1 在导入对话框中添加类型选择单选框组
|
||
- 选项:个人中介(person)、机构中介(entity)
|
||
- 默认选择"个人中介"
|
||
|
||
- [x] 4.2 在 `upload` 数据中添加 `importType` 属性
|
||
- 默认值为 `'person'`
|
||
|
||
- [x] 4.3 修改 `downloadImportTemplate` 方法
|
||
- 根据 `upload.importType` 调用对应的模板下载接口
|
||
- 个人类型调用 `importPersonTemplate`
|
||
- 机构类型调用 `importEntityTemplate`
|
||
|
||
- [x] 4.4 修改 `submitFileForm` 方法
|
||
- 根据 `upload.importType` 动态设置 `upload.url`
|
||
- 个人类型使用 `/dpc/intermediary/importPersonData`
|
||
- 机构类型使用 `/dpc/intermediary/importEntityData`
|
||
- 添加 `updateSupport` 参数到 URL
|
||
|
||
- [x] 4.5 调整导入对话框宽度
|
||
- 从 400px 调整为 450px
|
||
- 适应新增的类型选择区域
|
||
|
||
### 阶段 5:测试验证
|
||
|
||
- [x] 5.1 测试详情对话框功能
|
||
- 测试个人类型详情显示
|
||
- 测试机构类型详情显示
|
||
- 测试旧数据详情显示(字段为空)
|
||
|
||
- [x] 5.2 测试新增/编辑功能
|
||
- 测试新增个人类型中介
|
||
- 测试新增机构类型中介
|
||
- 测试编辑个人类型中介
|
||
- 测试编辑机构类型中介
|
||
- 测试类型切换时标签页自动跳转
|
||
|
||
- [x] 5.3 测试导入功能
|
||
- 测试个人类型模板下载
|
||
- 测试机构类型模板下载
|
||
- 测试个人类型数据导入
|
||
- 测试机构类型数据导入
|
||
- 测试更新支持选项
|
||
|
||
- [x] 5.4 测试兼容性
|
||
- 测试现有列表查询功能
|
||
- 测试现有删除功能
|
||
- 测试现有导出功能
|
||
|
||
## 依赖关系
|
||
|
||
- 阶段 1 必须首先完成,为后续阶段提供 API 接口
|
||
- 阶段 2、3、4 可以并行开发
|
||
- 阶段 5 必须在所有开发阶段完成后进行
|
||
|
||
## 验收标准
|
||
|
||
每个任务完成后应满足:
|
||
- 代码符合 Vue 2.x 和 Element UI 规范
|
||
- 功能与设计文档描述一致
|
||
- 不影响现有功能的正常运行
|