Compare commits

..

No commits in common. "ef83ad18a46dad19576ee878c37930e4611226e3" and "896b01f8b4b9c1d4f1d9203bd0a794e1ede02190" have entirely different histories.

View File

@ -2,7 +2,6 @@ import mysql, {type Connection, type ConnectionOptions} from 'mysql2';
import {Logger} from "tslog"; import {Logger} from "tslog";
import type {IDbModel} from "@interfaces/database/IDbModel"; import type {IDbModel} from "@interfaces/database/IDbModel";
import type {IDbUser} from "@interfaces/database/IDbUser"; import type {IDbUser} from "@interfaces/database/IDbUser";
import type IDbCategory from "@interfaces/database/IDbCategory";
const access: ConnectionOptions = { const access: ConnectionOptions = {
@ -89,27 +88,27 @@ const MySqlService = {
* Insert a user into the database. * Insert a user into the database.
* *
* @param {MysqlHandler} handler - The MySQL database handler. * @param {MysqlHandler} handler - The MySQL database handler.
* @param {IDbUser} data - The user data to insert. * @param {IDbUser} userData - The user data to insert.
* @returns {Promise<void>} A promise that resolves if the user was inserted successfully, or rejects with an error. * @returns {Promise<void>} A promise that resolves if the user was inserted successfully, or rejects with an error.
* @throws {Error} If an error occurs while executing the query. * @throws {Error} If an error occurs while executing the query.
*/ */
insert(handler: MysqlHandler, data: IDbUser) { insert(handler: MysqlHandler, userData: IDbUser) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
if (!data.id) return reject('Id is undefined'); if (!userData.id) return reject('Id is undefined');
if (data.id.length !== 36) return reject('Id invalid'); if (userData.id.length !== 36) return reject('Id invalid');
const _sql = "INSERT INTO `users`(`id`,`username`, `firstname`, `lastname`, `dob`, `email`, `is_mail_verified`, `is_admin`, `gdpr`, `hash`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)" const _sql = "INSERT INTO `users`(`id`,`username`, `firstname`, `lastname`, `dob`, `email`, `is_mail_verified`, `is_admin`, `gdpr`, `hash`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)"
const _values = [ const _values = [
data.id, userData.id,
data.username, userData.username,
data.firstname, userData.firstname,
data.lastname, userData.lastname,
data.dob, userData.dob,
data.email, userData.email,
data.is_mail_verified, userData.is_mail_verified,
data.is_admin, userData.is_admin,
data.gdpr, userData.gdpr,
data.hash userData.hash
] ]
try { try {
resolve(handler.execute(_sql, _values)) resolve(handler.execute(_sql, _values))
@ -122,37 +121,37 @@ const MySqlService = {
/** /**
* Updates user data in the database. * Updates user data in the database.
* @param {MysqlHandler} handler - The MySQL handler object. * @param {MysqlHandler} handler - The MySQL handler object.
* @param {IDbUser} data - The user data to be updated. * @param {IDbUser} userData - The user data to be updated.
* @returns {Promise<unknown>} - A promise that resolves when the update is successful. * @returns {Promise<unknown>} - A promise that resolves when the update is successful.
* @throws {Error} - If an error occurs during the update process. * @throws {Error} - If an error occurs during the update process.
*/ */
update(handler: MysqlHandler, data: IDbUser): Promise<unknown> { update(handler: MysqlHandler, userData: IDbUser): Promise<unknown> {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
if (!data.id) return reject('Id is undefined'); if (!userData.id) return reject('Id is undefined');
if (data.id.length !== 36) return reject('Id invalid'); if (userData.id.length !== 36) return reject('Id invalid');
try { try {
const _template = ` const _template = `
${data.username ? "`username` = ?," : null} ${userData.username ? "`username` = ?," : null}
${data.firstname ? "`firstname` = ?," : null} ${userData.firstname ? "`firstname` = ?," : null}
${data.lastname ? "`lastname` = ?," : null} ${userData.lastname ? "`lastname` = ?," : null}
${data.dob ? "`dob` = ?," : null} ${userData.dob ? "`dob` = ?," : null}
${data.email ? "`email` = ?," : null} ${userData.email ? "`email` = ?," : null}
${data.is_mail_verified ? "`is_mail_verified` = ?," : null} ${userData.is_mail_verified ? "`is_mail_verified` = ?," : null}
${data.is_admin ? "`is_admin` = ?," : null} ${userData.is_admin ? "`is_admin` = ?," : null}
${data.gdpr ? "`gdpr` = ?," : null} ${userData.gdpr ? "`gdpr` = ?," : null}
${data.hash ? "`hash` = ?" : null}` ${userData.hash ? "`hash` = ?" : null}`
const _values = [ const _values = [
data.username, userData.username,
data.firstname, userData.firstname,
data.lastname, userData.lastname,
data.dob, userData.dob,
data.email, userData.email,
data.is_mail_verified, userData.is_mail_verified,
data.is_admin, userData.is_admin,
data.gdpr, userData.gdpr,
data.hash, userData.hash,
data.id userData.id
] ]
const _sql = `UPDATE "users" SET ${_template} WHERE 'id' = ?`; const _sql = `UPDATE "users" SET ${_template} WHERE 'id' = ?`;
@ -343,27 +342,6 @@ const MySqlService = {
} }
}) })
} }
},
Category: {
insert(handler: MysqlHandler, data: IDbCategory) {
return new Promise((resolve, reject) => {
if (!data.id) return reject('Id is undefined');
if (data.id.length !== 36) return reject('Id invalid');
const _sql = "INSERT INTO `users`(`id`,`slug_name`, `display_name`) VALUES (?, ?, ?)"
const _values = [
data.id,
data.slug_name,
data.display_name
]
try {
resolve(handler.execute(_sql, _values))
} catch (err: unknown) {
reject(err as Error);
}
})
}
} }
} }