What are Catalogs?
Catalogs are reference tables that store fundamental business data used throughout the Muebles Roble system. They provide standardized options for colors, wood types, user roles, and measurement units.Active Catalogs
These catalogs are currently registered and accessible in the application:Colors
Manage color options for furniture finishes
Wood Types
Define types of wood used in production
Roles
Manage user roles and permissions
Units of Measure
Define measurement units for materials and products
Unregistered Catalog
Furniture Types
Code exists but blueprint not registered - requires manual activation
Common Features
All catalog modules share a consistent architecture and functionality:CRUD Operations
Every catalog supports:- Create: Add new entries with validation
- Read: List all active entries and view details
- Update: Modify existing entries
- Delete: Soft delete (logical deletion) that preserves data
Soft Delete Pattern
Catalogs use logical deletion rather than physical deletion:- Preserves historical data
- Maintains referential integrity
- Supports data recovery
- Enables audit trails
Data Validation
All catalogs enforce business rules:Exception Handling
The system uses custom exceptions for clear error handling:| Exception | Usage |
|---|---|
ValidationError | Empty or invalid input data |
ConflictError | Duplicate names or constraint violations |
NotFoundError | Entity not found by ID |
Architecture Pattern
All catalogs follow a consistent three-layer architecture:File Organization
Each catalog module contains:Common Model Structure
All catalog models inherit standard fields:Audit fields (
created_by, updated_by, deleted_by) are currently optional and ready for future authentication integration.Next Steps
Explore individual catalog modules:- Colors - Manage furniture color options
- Wood Types - Define wood materials
- Furniture Types - Categorize products
- Roles - Configure user permissions
- Units of Measure - Set up measurement units