мелкие правки

This commit is contained in:
Антон
2025-10-02 15:04:39 +03:00
parent d57e6c3414
commit 2b5e601387
2 changed files with 13 additions and 8 deletions
+5 -2
View File
@@ -10,10 +10,13 @@
- ~~Перевести GetByUUID GetByLogin на const ref/string_view в IUserDAO - также не vector, а span(погуглить)~~ - span не применим
- ~~Привести к единому виду функции IUserDAO~~
- ~~Пройтись по коду и максимально наставить const~~
- Указать возможные исключения в интерфейсах DAO
- ~~Указать возможные исключения в интерфейсах DAO - почему может выбросить исключение~~
- ~~Вынести User в структуру. Hashed Password структура должна изначально состоять в другой структуре~~
- ~~SharedPtr - передавать по константной ссылке.~~
- Вынести обработку исключений в RootExecutor
- ~~Вынести обработку исключений в RootExecutor~~
- Уменьшить дублирование кода в исключениях
- Покрыть логами
- Сделать один класс исключений, имеющих метод HTTP code - код и сообщение записывать уже в ловушке
- Сделать интеграционный тест по ручкам
# UseCase'ы приложения:
+8 -6
View File
@@ -21,7 +21,7 @@ string MySQLUserDAO::Create(const user& created_user)
const std::string uuid_str = boost::uuids::to_string(uuid);
const string sql_script =
static const string sql_script =
"INSERT INTO `up_and_down`.`users` (`uuid`, `login`, `hashed_password`) VALUES (?, ?, ?);"s;
session_.
@@ -33,7 +33,7 @@ string MySQLUserDAO::Create(const user& created_user)
optional<user> MySQLUserDAO::GetByUUID(const string& uuid)
{
const string sql_script = "SELECT * FROM `up_and_down`.`users` WHERE (uuid = ?) LIMIT 1;"s;
static const string sql_script = "SELECT * FROM `up_and_down`.`users` WHERE (uuid = ?) LIMIT 1;"s;
mysqlx::SqlResult sql_result = session_.
sql(sql_script)
.bind(uuid)
@@ -44,7 +44,7 @@ optional<user> MySQLUserDAO::GetByUUID(const string& uuid)
optional<user> MySQLUserDAO::GetByLogin(const string& login)
{
const std::string sql_script = "SELECT * FROM `up_and_down`.`users` WHERE (login = ?) LIMIT 1;"s;
static const std::string sql_script = "SELECT * FROM `up_and_down`.`users` WHERE (login = ?) LIMIT 1;"s;
mysqlx::SqlResult sql_result = session_.
sql(sql_script)
.bind(login)
@@ -55,8 +55,10 @@ optional<user> MySQLUserDAO::GetByLogin(const string& login)
pair<bool, vector<user>> MySQLUserDAO::GetAll(size_t limit, size_t offset)
{
static const string sql_script = "SELECT * FROM `up_and_down`.`users` LIMIT ? OFFSET ?;"s;
mysqlx::SqlResult sql_result = session_
.sql("SELECT * FROM `up_and_down`.`users` LIMIT ? OFFSET ?;"s)
.sql(sql_script)
.bind(limit, offset)
.execute();
list<mysqlx::Row> rows = sql_result.fetchAll();
@@ -96,7 +98,7 @@ pair<bool, vector<user>> MySQLUserDAO::GetAll(size_t limit, size_t offset)
bool MySQLUserDAO::Update(const user& u)
{
const string sql_script = "UPDATE `up_and_down`.`users` SET `login` = ? WHERE `uuid` = ?;"s;
static const string sql_script = "UPDATE `up_and_down`.`users` SET `login` = ? WHERE `uuid` = ?;"s;
auto schema = session_.sql(sql_script)
.bind(u.login, u.uuid)
@@ -107,7 +109,7 @@ bool MySQLUserDAO::Update(const user& u)
bool MySQLUserDAO::Delete(const string& uuid)
{
const string sql_script = "DELETE FROM `up_and_down`.`users` WHERE `uuid` = ?;";
static const string sql_script = "DELETE FROM `up_and_down`.`users` WHERE `uuid` = ?;";
auto schema = session_.sql(sql_script)
.bind(uuid)