natib21
eb5d8a7411
fix
2026-07-02 14:42:04 +00:00
natib21
b7da024968
fix
2026-07-02 14:37:38 +00:00
natib21
2424e96e74
fix
2026-07-02 14:34:22 +00:00
natib21
e5fed081fc
fix
2026-07-02 14:27:09 +00:00
natib21
7d85f5dc2e
fix
2026-07-02 14:18:53 +00:00
natib21
c2c29f0735
fix
2026-07-02 14:14:13 +00:00
natib21
7f6c9c6313
fix
2026-07-02 13:55:08 +00:00
natib21
1869790eab
fix
2026-07-02 13:18:34 +00:00
natib21
e429a2cebf
fix
2026-07-02 13:15:44 +00:00
natib21
64e346324b
fix issue
2026-07-02 13:11:12 +00:00
natib21
58b3805d0b
fix
2026-07-02 12:43:03 +00:00
natib21
a0f4de05f8
log full error
2026-07-02 12:37:02 +00:00
natib21
ff7e20d2ee
fix
2026-07-02 11:22:35 +00:00
natib21
4519a1d75d
fix
2026-07-02 10:33:32 +00:00
yaschalew
10e442deb1
fix
2026-07-02 13:18:49 +03:00
natib21
07abe9b679
fix
2026-07-02 08:51:21 +00:00
yaschalew
54b2114e7f
fix issue
2026-07-02 11:28:56 +03:00
yaschalew
8b8a993953
fix conflict
2026-07-02 09:28:02 +03:00
ghost2023
2f79178496
fix: booking invoice issue
2026-07-01 16:11:47 +03:00
ghost2023
174df0b7aa
chore: fix script and add seed company
2026-07-01 15:46:25 +03:00
ghost2023
aef868bc40
fix: the invoice status syncing with booking payment window
2026-07-01 15:46:13 +03:00
ghost2023
7e96fa65b9
feat: rm the hardcoded invoice types
2026-07-01 15:10:04 +03:00
ghost2023
fbda15bac8
Merge branch 'dev' into freight/feat/invoice
2026-07-01 14:40:58 +03:00
ghost2023
b7be6d6229
feat: add the seed schedules
2026-07-01 14:37:47 +03:00
ghost2023
abdf459289
feat: add the seed contracts
2026-07-01 14:26:32 +03:00
ghost2023
c88c5ee450
chore: setup script
2026-07-01 12:26:37 +03:00
Nathnael
94982d3c5a
feat: setup pdf on the central billing
2026-07-01 06:25:24 +00:00
Nathnael
8ab27a6721
feat: add expiration to invoice
2026-07-01 06:19:07 +00:00
natib21
558f7f38cd
feat: add fleet-wide fuel and maintenance stats endpoints
...
Backend:
FuelService + FuelController:
- Added getFleetFuelStats() aggregating all vehicles
- Route: GET /api/fuel/stats (before :vehicleId route)
- Returns: totalCost, totalLiters, totalPurchases, averagePricePerLiter
MaintenanceService + MaintenanceController:
- Added getFleetMaintenanceStats() aggregating all vehicles
- Route: GET /api/maintenance/stats (before :vehicleId route)
- Returns: totalCost, numberOfMaintenanceItems, averageCostPerMaintenance, costByType
Both endpoints aggregate over past 12 months (customizable via query param).
Enables dashboard to show fleet-wide operating costs.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-30 14:32:12 +00:00
natib21
fea869a19c
feat: display vehicle name instead of ID in fuel purchases table
...
Backend:
- FuelService.getAllFuelPurchases() now loads vehicle relationship
- Uses leftJoinAndSelect to eagerly load Vehicle data
- Returns complete FuelPurchase with nested vehicle object
Frontend:
- Table displays vehicle.registrationNumber (primary)
- Falls back to vehicle.plateNumber if registration unavailable
- Falls back to vehicleId as last resort
Better UX: shows human-readable vehicle info instead of UUID.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-30 14:23:54 +00:00
natib21
796e63cc59
fix: add missing GET /api/fuel/purchases endpoint
...
Problem:
- Frontend calls GET /fuel/purchases (all purchases)
- Backend only had GET /fuel/purchases/:vehicleId (specific vehicle)
- Result: 404 when loading fuel purchases list
Solution:
- Added getAllFuelPurchases() to FuelService
- Added GET /fuel/purchases route to FuelController
- Route placed before parameterized route so it gets matched first
- Returns all fuel purchases ordered by date DESC
Endpoints:
- GET /api/fuel/purchases → all purchases
- GET /api/fuel/purchases/:vehicleId → specific vehicle
- POST /api/fuel/purchases → record purchase
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-30 14:18:26 +00:00
Nathnael
0056dec924
style: clean up the invoice and setup event for warehouse.
2026-06-30 13:28:14 +00:00
Nathnael
fa3138f2ac
refactor: migrate the warehouse invoice to use the central one
2026-06-30 12:54:04 +00:00
natib21
f436916c42
feat: complete maintenance tracking backend
...
Service/Controller/Module:
- scheduleMaintenanceAsync: schedule work
- recordMaintenanceCost: log expenses
- getUpcomingMaintenance: due items
- getVehicleMaintenanceStats: cost aggregation
Endpoints:
- POST /maintenance/schedules
- POST /maintenance/costs
- PATCH /maintenance/schedules/:id
- GET /maintenance/upcoming/:vehicleId
- GET /maintenance/history/:vehicleId
- GET /maintenance/stats/:vehicleId
Migration: idempotent maintenance tables creation
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-30 12:33:29 +00:00
natib21
e59a77b859
feat: add maintenance tracking module foundation
...
Entities:
- MaintenanceSchedule: track preventive/corrective maintenance
- MaintenanceCost: record actual maintenance expenses
DTOs:
- CreateMaintenanceScheduleDto: schedule maintenance
- CreateMaintenanceCostDto: log costs
- UpdateMaintenanceScheduleDto: mark complete/adjust cost
Repository:
- getUpcomingMaintenance(): find due maintenance
- getMaintenanceCosts(): historical costs by date
- getTotalMaintenanceCost(): aggregate spending
Also fixed fuel-consumption.entity.ts: totalDistanceKm default 0
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-30 12:28:00 +00:00
natib21
5d70c3b557
fix
2026-06-30 12:13:48 +00:00
Nathnael
5ad4efd7eb
feat: add pdf to the central invoice system
2026-06-30 11:58:28 +00:00
Nathnael
7fa18b8ee7
fix: reference type in payment service
2026-06-30 11:54:43 +00:00
Nathnael
228b840c26
Merge branch 'dev' into freight/feat/invoice
2026-06-30 11:26:32 +00:00
Nathnael
21cf24950d
feat: add partial payment to match the warehouse invoice before migration
2026-06-30 10:50:43 +00:00
natib21
7b9cd88712
fix: correct fuel module TypeScript errors
...
- Use @InjectRepository decorators for proper dependency injection
- Fix BaseRepository initialization with Repository instance
- Remove unnecessary DataSource references
- Add proper type annotations to reduce handlers
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-30 10:08:56 +00:00
natib21
df6e417a56
feat: add fuel management system backend
...
- FuelPurchase entity: record fuel purchases with cost tracking
- FuelConsumption entity: monthly aggregation of fuel metrics
- FuelService: record purchases, calculate stats, efficiency
- FuelController: REST API for fuel operations
- FuelModule: integrated into app
- Migration: create fuel_purchases and fuel_consumption tables
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-30 10:07:13 +00:00
SennayT
3c5f5b5861
fix: add docker cache for pnpm installations
2026-06-30 09:54:59 +00:00
Nathnael Wondisha
fec235c433
Merge pull request #372 from Tria-plc/freight/fix/migrate-undo
...
fix
2026-06-30 08:39:57 +03:00
ghost2023
c299973bb0
fix
2026-06-30 08:38:27 +03:00
Nathnael Wondisha
b5a2bd537f
Merge pull request #370 from Tria-plc/freight/fix/migrate-undo
...
fix
2026-06-30 08:32:29 +03:00
ghost2023
468ac8b28a
fix
2026-06-30 08:31:26 +03:00
hagiye
831ac59a8e
Merge branch 'dev' of github.com:Tria-plc/edr-platform into importhandover
2026-06-30 07:20:10 +03:00
hagiye
9f5c22c1ee
Goods recieved notes and Booking delivery
2026-06-30 07:19:12 +03:00
natib21
14dde418f7
fix(migrations): check if tables exist before CREATE TABLE
...
Make invoices migration idempotent - skip table/index creation if they
already exist. Prevents 'relation already exists' errors on redeployment.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-06-30 03:55:57 +00:00