**Motivations :** * Allow associating administrative procedures to module components with status tracking * Centralize regulation characteristics configuration for better data consistency * Link regulation characteristics to wastes, regulators, ecosystems, and module components **Root causes :** * Need to track administrative procedures per module component * Regulation characteristics were hardcoded in multiple places, causing inconsistency * No centralized way to manage and reference regulation characteristics **Correctifs :** * Added ModuleComponentProcedureAssociation interface with procedureId, status, and notes * Created RegulationCharacteristic entity with name, code, category, description, unit, isBoolean, minValue, maxValue * Added regulationCharacteristicIds field to Waste, NaturalRegulator, Ecosystem, and ModuleComponent * Updated all configuration pages to use regulation characteristics from centralized configuration * Created RegulationCharacteristicsConfigurationPage for managing characteristics * Added seeds for regulation characteristics (31 characteristics covering all categories) * Added seeds for companies (4NK Water & Waste default company) **Evolutions :** * Module components can now have associated administrative procedures with status (toDo, done, na) * Regulation characteristics are now centralized and can be referenced by multiple entities * All regulation needs and characteristics are now managed through a single configuration page * Business plans can be added to all entities (already implemented, documented in data_schemas.md) * Updated data_schemas.md with complete documentation of all entities, relations, and validation rules **Page affectées :** * src/pages/configuration/ModuleComponentsConfigurationPage.tsx - Added administrative procedures section * src/pages/configuration/RegulationCharacteristicsConfigurationPage.tsx - New page for managing characteristics * src/pages/configuration/WasteConfigurationPage.tsx - Updated to use regulation characteristics * src/pages/configuration/RegulatorsConfigurationPage.tsx - Updated to use regulation characteristics * src/pages/configuration/EcosystemsConfigurationPage.tsx - Updated to use regulation characteristics * src/types/index.ts - Added new interfaces and fields * src/utils/storage.ts - Added regulation characteristics and companies to storage * data_schemas.md - Complete documentation update * data/seeds/regulation-characteristics-seeds.json - New seed file * data/seeds/companies-seeds.json - New seed file
64 lines
2.3 KiB
JSON
64 lines
2.3 KiB
JSON
{
|
|
"companies": [
|
|
{
|
|
"id": "company-4nkwaste",
|
|
"name": "4NK Water & Waste",
|
|
"legalName": "4NK Water & Waste",
|
|
"registrationNumber": "",
|
|
"address": "",
|
|
"contact": {
|
|
"email": "",
|
|
"phone": "",
|
|
"website": ""
|
|
},
|
|
"businessPlan": {
|
|
"revenues": {
|
|
"rawRental": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"biologicalTreatment": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"bitcoinManagement": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"fertilizers": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"wasteHeat": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"carbonCredits": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"brownfield": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"transport": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"commercialPartnerships": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"other": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
},
|
|
"variableCosts": {
|
|
"rentalServices": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"commissions": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"otherVariable": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"transport": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
},
|
|
"fixedCosts": {
|
|
"salaries": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"marketing": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"rd": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"administrative": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"otherGeneral": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
},
|
|
"investments": {
|
|
"equipment": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"technology": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"patents": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
},
|
|
"useOfFunds": {
|
|
"productDevelopment": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"marketing": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"team": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"structure": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
},
|
|
"kpis": {
|
|
"activeUsers": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"cac": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"ltv": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
|
|
"breakEvenDays": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
}
|
|
},
|
|
"createdAt": "2025-01-15T00:00:00.000Z",
|
|
"updatedAt": "2025-01-15T00:00:00.000Z"
|
|
}
|
|
]
|
|
}
|
|
|