feat(services): add detailed comments and specify return types in mysql.service

In the `mysql.service`, this commit adds detailed doc-block comments for `insert` and `update` functions under `Brand` and `Category`. Additionally, the return types of the `update` functions under `Brand` and `Category` are now specifically defined as `Promise<number>`, providing clarity on the expected returns.

Issue: #5
Signed-off-by: Mathis <yidhra@tuta.io>
This commit is contained in:
Mathis H (Avnyr) 2024-04-25 16:26:29 +02:00
parent 64aa814d2c
commit 44b04459fb
Signed by: Mathis
GPG Key ID: DD9E0666A747D126

View File

@ -271,7 +271,15 @@ const MySqlService = {
} }
}, },
Brand: { Brand: {
insert(handler: MysqlHandler, data: IDbBrand) { /**
* Inserts a record into the `brands` table.
*
* @param {MysqlHandler} handler - The MySQL handler instance.
* @param {IDbBrand} data - The data object representing the record to be inserted.
* @returns {Promise} A promise that resolves with the result of the insertion.
* The promise is rejected with an error if the insertion fails.
*/
insert(handler: MysqlHandler, data: IDbBrand): Promise<unknown> {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
if (!data.id) return reject('Id is undefined'); if (!data.id) return reject('Id is undefined');
if (data.id.length !== 36) return reject('Id invalid'); if (data.id.length !== 36) return reject('Id invalid');
@ -290,7 +298,14 @@ const MySqlService = {
} }
}) })
}, },
update(handler: MysqlHandler, data: IDbBrand) { /**
* Updates a brand in the database.
* @param {MysqlHandler} handler - The MySQL handler.
* @param {IDbBrand} data - The brand data to be updated.
* @returns {Promise<number>} - A promise that resolves with the number of affected rows in the database.
* @throws {Error} - If an error occurs during the update process.
*/
update(handler: MysqlHandler, data: IDbBrand): Promise<number> {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
if (!data.id) return reject('Id is undefined'); if (!data.id) return reject('Id is undefined');
if (data.id.length !== 36) return reject('Id invalid'); if (data.id.length !== 36) return reject('Id invalid');
@ -308,7 +323,7 @@ const MySqlService = {
data.id data.id
] ]
const _sql = `UPDATE "brands" SET ${_template} WHERE 'id' = ?`; const _sql = `UPDATE "brands" SET ${_template} WHERE 'id' = ?`;
return resolve(handler.execute(_sql, _values)); return resolve(handler.execute(_sql, _values) as unknown as number);
} catch (err: unknown) { } catch (err: unknown) {
reject(err as Error); reject(err as Error);
@ -423,7 +438,7 @@ const MySqlService = {
* *
* @param {MysqlHandler} handler - The MySQL handler instance. * @param {MysqlHandler} handler - The MySQL handler instance.
* @param {IDbCategory} data - The category data to update. * @param {IDbCategory} data - The category data to update.
* @returns {Promise<unknown>} - A Promise that resolves with the result of the UPDATE query execution. * @returns {Promise<number>} - A promise that resolves with the number of affected rows in the database.
* @throws {Error} - If an error occurs during execution. * @throws {Error} - If an error occurs during execution.
*/ */
update(handler: MysqlHandler, data: IDbCategory): Promise<unknown> { update(handler: MysqlHandler, data: IDbCategory): Promise<unknown> {
@ -442,7 +457,7 @@ const MySqlService = {
data.id data.id
] ]
const _sql = `UPDATE "categories" SET ${_template} WHERE 'id' = ?`; const _sql = `UPDATE "categories" SET ${_template} WHERE 'id' = ?`;
return resolve(handler.execute(_sql, _values)); return resolve(handler.execute(_sql, _values) as unknown as number);
} catch (err: unknown) { } catch (err: unknown) {
reject(err as Error); reject(err as Error);