125 lines
4.5 KiB
Markdown
125 lines
4.5 KiB
Markdown
# Proposal: 添加中介人员黑名单管理模块
|
||
|
||
## Change ID
|
||
`add-intermediary-blacklist`
|
||
|
||
## Summary
|
||
添加中介人员黑名单管理模块,实现外部中介人员/机构黑名单库的建立和维护。该模块支持 Excel 模板下载、批量导入、增删改查等功能,是系统中信息维护模块的核心子功能之一。
|
||
|
||
## Motivation
|
||
目前系统缺少中介人员黑名单管理功能。用户需要:
|
||
1. 建立并维护外部中介人员/机构黑名单库
|
||
2. 通过 Excel 批量导入中介名单数据
|
||
3. 对中介名单进行增、删、改、查操作
|
||
4. 支持按姓名、证件号、机构名称等条件查询
|
||
5. 在项目工作台中选择确认后的可疑名单
|
||
6. 当员工交易对手命中该库时,系统自动产生高风险预警
|
||
|
||
## Scope
|
||
本提案实现以下功能:
|
||
|
||
### 包含的功能
|
||
- **3.1.1 名单导入**
|
||
- Excel 模板下载(包含必填字段示例)
|
||
- Excel 批量导入中介名单
|
||
- 导入数据验证与错误提示
|
||
|
||
- **3.1.2 名单维护**
|
||
- 新增中介信息(个人/机构)
|
||
- 编辑中介信息
|
||
- 删除中介信息(带使用检查)
|
||
- 批量删除
|
||
|
||
- **3.1.3 名单查询**
|
||
- 按姓名/机构名称模糊搜索
|
||
- 按证件号精确搜索
|
||
- 按中介类型筛选(个人/机构)
|
||
- 按状态筛选(有效/失效)
|
||
|
||
- **3.1.4 名单导出**
|
||
- 导出当前查询结果为 Excel
|
||
|
||
### 明确排除
|
||
- **3.1.5 名单选择**(在项目工作台中选择名单的功能,属于项目工作台模块)
|
||
- **3.1.6 自动预警**(命中黑名单产生预警的功能,属于风险分析模块)
|
||
|
||
## Proposed Design
|
||
详见 [design.md](./design.md)
|
||
|
||
## Alternatives Considered
|
||
|
||
### 选项1:使用若依代码生成器
|
||
**优点**:
|
||
- 快速生成标准 CRUD 代码
|
||
- 自动生成前端页面和 API
|
||
- 符合项目基本规范
|
||
|
||
**缺点**:
|
||
- 需要手动调整 Excel 导入导出逻辑
|
||
- 需要手动添加数据验证规则
|
||
- 需要手动处理个人/机构两种类型的差异显示
|
||
|
||
**决定**:部分采用。使用代码生成器生成基础 CRUD 代码,然后手动添加 Excel 导入导出和业务验证逻辑。
|
||
|
||
### 选项2:完全自定义开发
|
||
**优点**:
|
||
- 完全控制实现细节
|
||
- 可以根据业务需求灵活定制
|
||
|
||
**缺点**:
|
||
- 开发周期较长
|
||
- 需要确保代码风格与若依框架一致
|
||
|
||
**决定**:不采用。中介黑名单管理是标准 CRUD 功能,使用代码生成器可提高开发效率。
|
||
|
||
## Impact
|
||
|
||
### 后端影响
|
||
- 新建 `ruoyi-dpc` 模块(如果不存在),与若依框架代码分离
|
||
- 新增表:`dpc_intermediary_blacklist`(中介黑名单主表)
|
||
- 新增权限:`dpc:intermediary:list`, `dpc:intermediary:query`, `dpc:intermediary:add`, `dpc:intermediary:edit`, `dpc:intermediary:remove`, `dpc:intermediary:export`, `dpc:intermediary:import`
|
||
- Controller 层:`ruoyi-dpc/src/main/java/com/ruoyi/dpc/controller/DpcIntermediaryBlacklistController.java`
|
||
|
||
### 前端影响
|
||
- 新增视图:`ruoyi-ui/src/views/dpcIntermediary/`
|
||
- 新增 API:`ruoyi-ui/src/api/dpcIntermediary.js`
|
||
- 新增菜单:信息维护 > 中介库管理(注意与数据库中菜单表进行联动修改)
|
||
|
||
### 数据库影响
|
||
- 新增表:`dpc_intermediary_blacklist`
|
||
|
||
## Dependencies
|
||
- 依赖 EasyExcel 进行 Excel 导入导出(参考 `replace-poi-with-easyexcel` change)
|
||
- 依赖若依框架的文件上传功能
|
||
- 依赖若依框架的权限系统
|
||
|
||
## Related Changes
|
||
- `replace-poi-with-easyexcel` - 依赖 EasyExcel 替换完成后的 Excel 工具
|
||
|
||
## Open Questions
|
||
1. **证件号校验**:
|
||
- 是否需要添加格式校验?
|
||
- 建议:添加基本格式校验,但不强制要求(可能是历史数据)
|
||
|
||
2. **删除前的使用检查**:
|
||
- 如何判断中介信息是否在项目中使用?
|
||
- 建议:暂时不实现使用检查,允许直接删除(可在后续版本中添加关联表)
|
||
|
||
3. **中介类型的数据结构**:
|
||
- 个人和机构是否分开存储?
|
||
- 建议:使用同一张表,通过 `intermediary_type` 字段区分
|
||
|
||
## Success Criteria
|
||
- [ ] 用户可以下载 Excel 导入模板
|
||
- [ ] 用户可以通过 Excel 批量导入中介名单
|
||
- [ ] 用户可以新增中介信息(个人/机构)
|
||
- [ ] 用户可以编辑中介信息
|
||
- [ ] 用户可以删除中介信息
|
||
- [ ] 用户可以按多种条件查询中介名单
|
||
- [ ] 用户可以导出查询结果为 Excel
|
||
- [ ] 导入时进行数据验证并提示错误
|
||
|
||
## References
|
||
- [模块设计文档](../../../doc/modules/03-信息维护模块.md)
|
||
- [若依开发文档](https://doc.ruoyi.vip/)
|