Skip to main content

Administration

Nextcloud admin panel for case type management, plus the foundational OpenRegister integration that stores all case management data.

Specs​

  • openspec/specs/admin-settings/spec.md
  • openspec/specs/openregister-integration/spec.md

Features​

Nextcloud Admin Panel (MVP)​

Dossiq registers a settings section in Nextcloud's admin panel for case type configuration.

Case Type List View (MVP)​

Admin panel shows all case types in a list with:

  • Title, status (draft/published), validity period
  • Click-through to detail/edit view
  • Create new case type action

Case Type Detail/Edit View (MVP)​

Tabbed interface for comprehensive case type editing:

  • General tab: Title, description, processing deadline, validity dates
  • Statuses tab: Status type management (add, reorder, edit, delete)

Default Case Type Selection (MVP)​

One case type can be marked as the default, pre-selected when creating new cases.

Case Type Publish Action (MVP)​

Transition a case type from draft to published state, making it available for case creation. Validates completeness before publishing.

Planned (V1): Admin Tabs​

Additional case type configuration tabs:

  • Results tab: Result type management (with archival rules)
  • Roles tab: Role type management (with generic role mapping)
  • Properties tab: Custom field definitions (with type and validation)
  • Documents tab: Document type management (with direction)

OpenRegister Integration (MVP)​

Dossiq owns no database tables: all data is stored as OpenRegister objects in the dossiq register with 12 schemas:

Configuration schemas (admin-managed):

  • caseType: Case behavior configuration
  • statusType: Allowed statuses per case type
  • resultType: Outcome types with archival rules
  • roleType: Participant role definitions
  • propertyDefinition: Custom field definitions
  • documentType: Required document types
  • decisionType: Decision type definitions

Instance schemas (user-created):

  • case: Case records
  • task: Task work items
  • role: Participant assignments
  • result: Case outcomes
  • decision: Formal decisions

Auto-Configuration on Install (MVP)​

The repair step automatically imports the register configuration, checks OpenRegister availability (skips gracefully if not installed), and sets up default case types.

Pinia Store Pattern (MVP)​

Dedicated Pinia stores for each of the 12 entity types, providing typed CRUD operations, error handling, pagination, and caching.

Error Handling (MVP)​

Comprehensive error handling:

  • Structured errors with HTTP status distinction (404, 403, 422, 500)
  • Validation error parsing with field-level feedback
  • Network error detection and retry support
  • Error toasts and inline error displays

Cross-Entity References (MVP)​

UUID-based references between entities (e.g., case → caseType, task → case, role → case) with resolution and orphaned reference detection.

RBAC Integration (MVP)​

All data access respects OpenRegister's role-based access control.

Audit Trail (MVP)​

OpenRegister tracks all object modifications automatically.

Planned (V1)​

  • Cascade behaviors (e.g., deleting a case type affects its sub-types)
  • NL Design System theming support
  • Eager loading for related entities

Planned (Enterprise)​

  • Field-level access control
  • Archival management (archiefwet)
  • Data retention policies