База для ручки GetUserDiariesExecutor.h

This commit is contained in:
2026-01-17 11:24:12 +03:00
parent 8a61656343
commit 22be5842be
8 changed files with 74 additions and 27 deletions
+1 -1
View File
@@ -16,7 +16,7 @@ public:
virtual bool HasAuthorized(const std::string& auth_token) = 0;
virtual std::string_view GetLogin(const std::string& auth_token) = 0;
virtual std::string_view GetUUID(const std::string& auth_token) = 0;
virtual bool Logout(const std::string& user_token) = 0;
+1 -1
View File
@@ -10,7 +10,7 @@ namespace uad
class IDiariesDAO
{
public:
virtual std::vector<diary_dto> GetDiariesByLogin(const std::string& login) = 0;
virtual std::vector<diary_dto> GetDiariesByUserUUID(const std::string& login) = 0;
virtual ~IDiariesDAO() = default;
};
+1 -1
View File
@@ -25,7 +25,7 @@ bool MemoryAuthDAO::HasAuthorized(const std::string& auth_token)
return auth_tokens_to_users_uuids_.count(auth_token) > 0;
}
std::string_view MemoryAuthDAO::GetLogin(const std::string& auth_token)
std::string_view MemoryAuthDAO::GetUUID(const std::string& auth_token)
{
return auth_tokens_to_users_uuids_.at(auth_token);
}
+1 -1
View File
@@ -25,7 +25,7 @@ public:
bool HasAuthorized(const std::string& auth_token) override;
std::string_view GetLogin(const std::string& auth_token) override;
std::string_view GetUUID(const std::string& auth_token) override;
bool Logout(const std::string& auth_token) override;
};
+17 -19
View File
@@ -6,31 +6,29 @@ MySqlDiariesDAO::MySqlDiariesDAO(mysqlx::Session& session) : session_(session)
{
}
std::vector<diary_dto> MySqlDiariesDAO::GetDiariesByLogin(const std::string& login)
std::vector<diary_dto> MySqlDiariesDAO::GetDiariesByUserUUID(const std::string& user_uuid)
{
static const std::string query = R"(
SELECT
d.uuid,
UNIX_TIMESTAMP(d.time) * 1000 AS time_ms,
d.mania_level,
d.depression_level,
d.mood_level,
d.activity_level,
d.appetite_level,
d.dream_level,
d.anxiety_level,
d.comment,
d.user_treatment_schemes_uuid
FROM up_and_down.users u
JOIN up_and_down.diaries d
ON d.user_uuid = u.uuid
WHERE u.login = ?
ORDER BY d.time ASC
SELECT
d.uuid,
UNIX_TIMESTAMP(d.time) * 1000,
d.mania_level,
d.depression_level,
d.mood_level,
d.activity_level,
d.appetite_level,
d.dream_level,
d.anxiety_level,
d.comment,
d.user_treatment_schemes_uuid
FROM up_and_down.diaries d
WHERE d.user_uuid = ?
ORDER BY d.time;
)";
mysqlx::SqlResult result = session_
.sql(query)
.bind(login)
.bind(user_uuid)
.execute();
std::vector<diary_dto> diaries;
+1 -1
View File
@@ -14,7 +14,7 @@ class MySqlDiariesDAO final : public IDiariesDAO
public:
explicit MySqlDiariesDAO(mysqlx::Session& session);
std::vector<diary_dto> GetDiariesByLogin(const std::string& login) override;
std::vector<diary_dto> GetDiariesByUserUUID(const std::string& user_uuid) override;
};
}