feat(services): add vehicle update functionality in vehicle.service.ts

An `updateVehicleService` function has been introduced in `vehicle.service.ts` to enable vehicle data updates in the application. The function handles data validation, updates the MySQL database, and logs the process status.

Issue: #21
Signed-off-by: Mathis <yidhra@tuta.io>
This commit is contained in:
Mathis H (Avnyr) 2024-05-02 16:39:50 +02:00
parent 838ea4ad22
commit f310bedeff
Signed by: Mathis
GPG Key ID: DD9E0666A747D126

View File

@ -32,12 +32,37 @@ async function createVehicleService(data: IDbVehicle) {
} }
} }
async function updateVehicleService(data: IDbVehicle) {
if (isDebugMode()) logger.debug(`\n\n> Updating vehicle...\n`);
try {
if (!data.id) {
return false
}
const result = await MySqlService.Vehicle.update(DbHandler, {
id: data.id,
plate_number: data.plate_number,
model_id: data.model_id,
odometer: data.odometer | 0,
health_state: data.health_state
});
if (result.affectedRows !== 0) {
logger.info("\n\n> Success !");
return true;
}
return false;
} catch (error) {
logger.error(`\n\n> Error updating vehicle: \n${error}\n`);
return false;
}
}
if (isDebugMode()) logger.debug("\nService loaded."); if (isDebugMode()) logger.debug("\nService loaded.");
const VehicleService = { const VehicleService = {
create: createVehicleService, create: createVehicleService,
update: updateVehicleService,
} }
export default VehicleService; export default VehicleService;