Files
cinema-ticket-management-sy…/data/sql/roles_repository.h
T

39 lines
895 B
C++
Raw Normal View History

2026-07-12 14:34:52 +04:00
#ifndef ROLES_REPOSITORY_H
#define ROLES_REPOSITORY_H
#include "base_sql_table_repository.h"
#include "roles_repository_interface.h"
#include <QSqlDatabase>
class RolesRepository : public RolesRepositoryInterface,
public BaseSqlTableRepository {
public:
explicit RolesRepository(QSqlDatabase &database, QObject *parent);
// CRUD operations
// clang-format off
RepositoryResult
createRole(const CreateRoleRequest &request) override;
RepositoryResult
getRoleById(qint32 roleId, RoleDTO &role) const override;
RepositoryResult
getAllRoles(QVector<RoleDTO> &roles) const override;
RepositoryResult
updateRole(const UpdateRoleRequest &request) override;
RepositoryResult
deleteRoleById(qint32 roleId) override;
// clang-format on
private:
RoleDTO mapQueryToDTO(const QSqlQuery &query) const;
};
#endif // ROLES_REPOSITORY_H