EntitiesCore
CPD Category
CPD category entity with requirements
CPD category entity with requirements
Defines CPD categories and annual requirements.
Fields
Core Fields
| Field | Type | Required | Description |
|---|---|---|---|
| id | UUID | Auto | Primary key |
| name | string | Yes | Category name (unique) |
| description | text | No | Category description |
| requiredPointsPerYear | decimal | Yes | Annual requirement |
| requiredForCertification | boolean | Yes | Mandatory for cert |
System Fields
| Field | Type | Required | Description |
|---|---|---|---|
| active | boolean | Yes | Category active (default: true) |
| displayOrder | integer | No | Sort order |
| createdAt | datetime | Auto | Creation timestamp |
| updatedAt | datetime | Auto | Last update |
Relationships
| Relation | Type | Target Entity |
|---|---|---|
| cpdRecords | OneToMany | CpdRecord |
Validation Rules
- Name must be unique per organization
- Required points must be > 0 and divisible by 0.5
- At least one category must have requiredForCertification = true
- Cannot delete category with existing records
Features
CPD Category
Acceptance Criteria
Frontend
- Admin/client UI can view and manage
CPD Categoryrecords where applicable.
Backend / API
- CRUD operations exist for
CPD Category(create, read, update, delete/archive).
Permissions
- Access is restricted to appropriate roles (tenant-scoped).
Business Rules
- Fields and relationships documented on this page are enforced for
CPD Category.
Error Handling
- Invalid payloads return field-level validation errors.