Files
cinema-ticket-management-sy…/data/sql/halls_repository.h
T
2026-07-12 14:34:52 +04:00

40 lines
912 B
C++

#ifndef HALLS_REPOSITORY_H
#define HALLS_REPOSITORY_H
#include "base_sql_table_repository.h"
#include "halls_repository_interface.h"
#include <QSqlDatabase>
#include <QVector>
class HallsRepository : public HallsRepositoryInterface,
public BaseSqlTableRepository {
public:
explicit HallsRepository(QSqlDatabase &database, QObject *parent);
// CRUD operations
// clang-format off
RepositoryResult
createHall(const CreateHallRequest &request) override;
RepositoryResult
getHallById(qint32 hallId, HallDTO &hall) const override;
RepositoryResult
getAllHalls(QVector<HallDTO> &halls) const override;
RepositoryResult
updateHall(const UpdateHallRequest &request) override;
RepositoryResult
deleteHallById(qint32 hallId) override;
// clang-format on
private:
HallDTO mapQueryToDTO(const QSqlQuery &query) const;
};
#endif // HALLS_REPOSITORY_H