#ifndef HALLS_REPOSITORY_H #define HALLS_REPOSITORY_H #include "base_sql_table_repository.h" #include "halls_repository_interface.h" #include #include 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 &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