ADDED Requirements
Requirement: Table naming for plan domain
All new plan-domain relational tables introduced for this program SHALL use the pl_ name prefix.
Scenario: Migration uses pl prefix
- WHEN a developer adds a new plan persistence table
- THEN its physical name SHALL start with
pl_
Requirement: SQL change discipline
The system evolution SHALL minimize alterations to existing CRM and weighbridge historical schemas; prefer additive columns, new link tables, and backward-compatible views.
Scenario: Additive change preferred
- WHEN a new field is needed on an existing CRM contract table
- THEN the change SHALL be documented as additive with default for old rows unless an exception is approved in migration risk log
Requirement: Reuse CRM identity administration
User management and role management for plan-related access SHALL integrate with the existing CRM user/role administration (single source of truth or delegated sync documented in deployment guide).
Scenario: CRM role maps to plan permission
- WHEN a CRM role is granted a plan module permission code
- THEN holders of that role SHALL obtain corresponding authorization in the plan service after integration milestone completion
Requirement: Menu dimensions for web and mobile
The permission model SHALL distinguish web menus from mobile menus for the unified platform.
Scenario: Mobile menu entry without web
- WHEN an administrator assigns only mobile menu visibility for a plan screen
- THEN the web menu tree SHALL not show that entry and the mobile manifest SHALL include it
Requirement: Documentation location
Project documentation for this build SHALL be filed under docs/系统文档/ in the repository (paths relative to repo root).
Scenario: Stage summary discoverable
- WHEN a phase completes
- THEN a stage summary markdown file SHALL exist under
docs/系统文档/stages/ with naming including date and milestone id
Requirement: Exclude reimbursement system
The plan management delivery streams described in this change SHALL NOT require integration with the BX reimbursement subsystem for the current phase.
Scenario: No BX API dependency in M1 scope
- WHEN M1 services are deployed
- THEN the plan service SHALL operate without calling BX reimbursement endpoints