2.7 KiB
2.7 KiB
Why
中科兴皖 V0.3「基础信息管理」下 2.2.1~2.2.5 为后续采集协议单、样本等业务的主数据入口;当前仓库仅有 SQL 模型定义,缺少租户内一致的 REST API 与 Web 管理端 CRUD,无法支撑业务录入与引用。
What Changes
- 在
backend为五类主数据提供租户隔离的列表/详情/新增/修改/软删接口,字段与校验对齐docs/sql/zkxw.sql与docs/中科兴皖需求V0.3.md2.2.1~2.2.5。 - 在
web-admin增加五个列表+弹窗表单页(或等价结构),遵循 Fresh Mint 规范与既有 Demo 模板页(如unit、dict类页面)的布局与交互。 - 客户:同一租户下身份证号非空且重复时拒绝创建并提示;姓名不强制唯一。
- 细胞样本类型:
type_code租户内唯一(与表uk_sample_type一致)。 - 采集地区与医院:地区 CRUD;医院为子表(
biz_collection_hospital),通过「地区医院配置」弹窗维护,不采用需求文中「医院名称逗号分隔」的冗余存储(以当前 schema 1:N 为准)。 - 采集协议号池、样本编码池:
protocol_no/sample_code租户内唯一;维护issued(是否下发)。 - 提供初始化菜单/SQL 片段(若项目惯例为
docs/sql/),便于挂到 Web 侧栏。
Capabilities
New Capabilities
customer-management:客户biz_customer的展示、增删改、身份证重复校验、标签逗号分隔编辑。cell-sample-type-management:细胞样本类型biz_cell_sample_type的展示与增删改、编码唯一性。collection-region-hospital-management:采集地区biz_collection_region与下属医院biz_collection_hospital的维护及子表弹窗配置。collection-protocol-no-management:采集协议号池biz_collection_protocol_no的维护与下发标记。sample-code-management:样本编码池biz_sample_code的维护与下发标记。
Modified Capabilities
- (无)不修改
openspec/changes/zkxw-engineering-standards中既有 SHALL 语义;本变更在其实现约束下新增业务能力。
Impact
- 后端:新增路由模块(建议
app/api/下业务域路由)、对应schemas/、crud/、services/(如需);在app/api/__init__.py与app/main.py注册;SQLAlchemy 模型若尚未覆盖上述表则补充。 - 前端:
src/api/、src/router/、src/views/(建议views/business/或按项目惯例)、菜单静态或后端菜单数据。 - 数据库:以现有
docs/sql/zkxw.sql全库导出基线为准;本变更可附带种子数据(如三种预设样本类型)的 可选 增量 SQL(置于docs/sql/)。 - 权限:菜单与按钮权限与现有
sys_menu/ 角色授权模式对齐。