feat(services): implement getById and getAll methods in mysql service
Implemented getById and getAll methods in the mysql service. The getById method retrieves a vehicle by its ID, and the getAll method fetches all vehicles from the database. These improvements facilitate more efficient data retrieval and enhance overall service functionality. Issue: #20 Signed-off-by: Mathis <yidhra@tuta.io>
This commit is contained in:
parent
8138231112
commit
37cfaf4bbd
@ -464,6 +464,7 @@ const MySqlService = {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retrieves a model by its ID from the database.
|
* Retrieves a model by its ID from the database.
|
||||||
*
|
*
|
||||||
@ -646,18 +647,44 @@ const MySqlService = {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
//TODO get by slug
|
/**
|
||||||
getBySlug(handler: MysqlHandler, data: IDbVehicle) {
|
* Retrieves a vehicle from the database by its ID.
|
||||||
|
*
|
||||||
|
* @param {MysqlHandler} handler - The instance of the MySQL handler.
|
||||||
|
* @param {string} vehicleId - The ID of the vehicle to retrieve.
|
||||||
|
* @returns {Promise<IDbVehicle>} - A promise that resolves to the retrieved vehicle.
|
||||||
|
* @throws {Error} - If an error occurs while retrieving the vehicle.
|
||||||
|
*/
|
||||||
|
getById(handler: MysqlHandler, vehicleId: string): Promise<IDbVehicle> {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
if (!vehicleId) return reject('Id is undefined');
|
||||||
})
|
if (vehicleId.length !== 36) return reject('Id invalid');
|
||||||
|
const _sql = "SELECT * FROM `vehicles` WHERE `id` = ?";
|
||||||
|
const _values = [vehicleId];
|
||||||
|
try {
|
||||||
|
resolve(handler.execute(_sql, _values) as unknown as IDbVehicle);
|
||||||
|
} catch (err: unknown) {
|
||||||
|
reject(err as Error);
|
||||||
|
}
|
||||||
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
//TODO get all
|
/**
|
||||||
getAll(handler: MysqlHandler, data: IDbVehicle) {
|
* Retrieves all vehicles from the database.
|
||||||
|
*
|
||||||
|
* @param {MysqlHandler} handler - The MySQL handler for executing queries.
|
||||||
|
* @return {Promise<Array<IDbVehicle>>} A promise that resolves with an array of database vehicles.
|
||||||
|
* @throws {Error} If an error occurs during the database query.
|
||||||
|
*/
|
||||||
|
getAll(handler: MysqlHandler): Promise<Array<IDbVehicle>> {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
const _sql = "SELECT * FROM `models`";
|
||||||
})
|
try {
|
||||||
|
resolve(handler.query(_sql) as unknown as Array<IDbVehicle>);
|
||||||
|
} catch (err: unknown) {
|
||||||
|
reject(err as Error);
|
||||||
|
}
|
||||||
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
//TODO get available
|
//TODO get available
|
||||||
|
Loading…
x
Reference in New Issue
Block a user