40 lines
912 B
C++
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
|