## Overview Create the `AssetNote`, `Maintenance`, and `AssetDocument` supporting entities inside `backend/contrib/`. ## Location All work must be inside `backend/contrib/src/assets/`. ## Acceptance Criteria - [ ] `AssetNote` entity: `id`, `assetId`, `content`, `createdBy` (ManyToOne eager), `createdAt`, `updatedAt` - [ ] `Maintenance` entity: `id`, `assetId`, `type` (enum), `description`, `scheduledDate`, `completedDate`, `cost` (decimal), `performedBy`, `notes`, `status` (enum), `createdAt` - [ ] `AssetDocument` entity: `id`, `assetId`, `name`, `url`, `type` (MIME), `size` (bytes), `uploadedBy` (ManyToOne eager), `createdAt` - [ ] `MaintenanceType` enum: `PREVENTIVE`, `CORRECTIVE`, `SCHEDULED` - [ ] `MaintenanceStatus` enum: `SCHEDULED`, `IN_PROGRESS`, `COMPLETED`, `CANCELLED` - [ ] All entities registered in `AssetsModule`
Overview
Create the
AssetNote,Maintenance, andAssetDocumentsupporting entities insidebackend/contrib/.Location
All work must be inside
backend/contrib/src/assets/.Acceptance Criteria
AssetNoteentity:id,assetId,content,createdBy(ManyToOne eager),createdAt,updatedAtMaintenanceentity:id,assetId,type(enum),description,scheduledDate,completedDate,cost(decimal),performedBy,notes,status(enum),createdAtAssetDocumententity:id,assetId,name,url,type(MIME),size(bytes),uploadedBy(ManyToOne eager),createdAtMaintenanceTypeenum:PREVENTIVE,CORRECTIVE,SCHEDULEDMaintenanceStatusenum:SCHEDULED,IN_PROGRESS,COMPLETED,CANCELLEDAssetsModule