diff --git a/.a0/next_steps.md b/.a0/next_steps.md index 55577fb..74ab73c 100644 --- a/.a0/next_steps.md +++ b/.a0/next_steps.md @@ -4,33 +4,41 @@ - Phase 0: Project Setup (T001-T003) - Phase 1: Auth System (T004-T008) - Phase 2: Contacts & Tags (T009-T011) +- Phase 3: Equipment Catalog (T012-T014) +- Phase 4: Crew Management (T015-T017) +- Phase 5: Vehicle Fleet (T018-T020) -## Next Phase: 3 – Equipment Catalog +## Current Phase: 6 – Projects + +### Completed in Phase 6 +- **T021**: DB-Modelle Project-Hierarchie ✅ +- **T022**: Project CRUD API ✅ +- **T023**: Project List & Detail UI ✅ ### Priority Tasks -1. **T012**: Create database models for Equipment catalog and StockLocation - - Equipment model: name, category, brand, serial_number, barcode, qr_code, status, purchase_price, current_value, weight_kg, dimensions, power_watt, notes, custom_fields - - StockLocation model: name, address, is_default - - EquipmentGroup (Bundle) with M2M items - - Relationships to Account, Contact (supplier?) +1. **T024**: Project function group and function editor UI + - Inside project detail, allow CRUD of function groups and functions + - Drag-and-drop reordering + - Time period inheritance from group + - Amount, rate fields + - Type: crew, equipment, transport + - **Estimated**: 14h | **Depends on**: T023 ✅ + +2. **T025**: Create database models for ProjectEquipment and ProjectCrew + - Models: ProjectEquipmentGroup, ProjectEquipment (quantity, price, discount) + - ProjectCrew (with function link, crew_id, period) - Alembic migration + - **Depends on**: T021 -2. **T013**: Implement Equipment catalog API - - CRUD endpoints: GET/POST /api/v1/equipment, GET/PUT/DELETE /api/v1/equipment/{id} - - Search, filter by category/status/location, pagination - - Auto-generate barcode/QR code - - Batch import/export CSV - - Permission: equipment:read, equipment:write, equipment:delete - -3. **T014**: Equipment catalog UI - - Equipment list page with grid/table toggle - - Search/filter by category, status, location - - Detail page with image, edit form - - Barcode/QR code display and print label +3. **T026**: Implement project equipment group and items API +4. **T027**: Project equipment management UI +5. **T028**: Implement crew assignment API +6. **T029**: Crew assignment UI in project +7. **T030**: Implement vehicle assignment API and UI ## Implementation Notes -- Use existing patterns from contacts module: models → schemas → router → frontend pages +- Use existing patterns from contacts/equipment modules: models → schemas → router → frontend pages - All endpoints must use tenant isolation (account_id filter) - All endpoints must use RBAC permissions via require_permission dependency - Frontend uses existing API client, Zustand for auth, React state for data -- AppLayout sidebar already has Equipment link (placeholder) +- FunctionGroupEditor.tsx already exists as initial component (from T023) diff --git a/.a0/project_state.json b/.a0/project_state.json index ded767a..fd4d45d 100644 --- a/.a0/project_state.json +++ b/.a0/project_state.json @@ -72,9 +72,9 @@ "score": 0 }, "next_action": { - "summary": "Phase 6: Projects (T022-T026+). T022 abgeschlossen. Nächstes: T023 – Project list and detail UI.", + "summary": "Phase 6: Projects (T022-T030). T021-T023 abgeschlossen. Nächstes: T024 – Project function group and function editor UI.", "owner_agent": "implementation_engineer", - "required_skill": null + "required_skill": "implementation-loop" }, "plan_mode": "implementation_allowed" } \ No newline at end of file diff --git a/.a0/todo.md b/.a0/todo.md index be99e79..5cebcd0 100644 --- a/.a0/todo.md +++ b/.a0/todo.md @@ -1,21 +1,14 @@ # Todo ## Open -- [x] T012: Create database models for Equipment catalog and StockLocation -- [x] T013: Implement Equipment catalog API -- [ ] T014: Equipment catalog UI (in progress) -- [x] T015: Create database models for Crew and CrewAvailability -- [x] T016: Implement Crew catalog and availability API -- [x] T017: Crew management UI -- [x] T018: Create database models for Vehicles and VehicleAssignment -- [x] T019: Implement Vehicle catalog and assignment API -- [x] T020: Vehicle management UI -- [x] T021: Create database models for Project hierarchy -- [ ] T022: Implement Project CRUD API -- [ ] T023: Project list and detail UI - [ ] T024: Project function group and function editor UI - [ ] T025: Create database models for ProjectEquipment and ProjectCrew -- [ ] T026+: Remaining project tasks +- [ ] T026: Implement project equipment group and items API +- [ ] T027: Project equipment management UI +- [ ] T028: Implement crew assignment API +- [ ] T029: Crew assignment UI in project +- [ ] T030: Implement vehicle assignment API and UI +- [ ] T031-T060: Remaining tasks (Financial, Documents, Scheduling, PWA, etc.) - [ ] Test and validate - [ ] Verify runtime - [ ] Prepare deployment @@ -37,3 +30,15 @@ - T009: Create database models for Contacts and Tags - T010: Implement contacts CRUD API - T011: Contacts management UI (list, detail, form) +- T012: Create database models for Equipment catalog and StockLocation +- T013: Implement Equipment catalog API +- T014: Equipment catalog UI +- T015: Create database models for Crew and CrewAvailability +- T016: Implement Crew catalog and availability API +- T017: Crew management UI +- T018: Create database models for Vehicles and VehicleAssignment +- T019: Implement Vehicle catalog and assignment API +- T020: Vehicle management UI +- T021: Create database models for Project hierarchy +- T022: Implement Project CRUD API +- T023: Project list and detail UI