Files
backend/services/AdminService.h
T
2026-06-05 11:56:28 +02:00

38 lines
1.4 KiB
C++

#pragma once
#include "common/Auth.h"
#include <json/json.h>
#include <optional>
#include <string>
namespace visione::services
{
class AdminService
{
public:
Json::Value listCategories();
Json::Value createCategory(const auth::UserContext &user, const Json::Value &body);
Json::Value listAreas();
Json::Value createArea(const auth::UserContext &user, const Json::Value &body);
Json::Value listTeams();
Json::Value createTeam(const auth::UserContext &user, const Json::Value &body);
Json::Value overviewStats(const auth::UserContext &user);
Json::Value listUsers(const auth::UserContext &user);
Json::Value listModeration(const auth::UserContext &user,
const std::optional<std::string> &status,
const std::optional<std::string> &page,
const std::optional<std::string> &perPage);
Json::Value updateModeration(const auth::UserContext &user,
long long flagId,
const Json::Value &body);
Json::Value updateUserRoles(const auth::UserContext &user,
long long targetUserId,
const Json::Value &body);
Json::Value updateUserBan(const auth::UserContext &user,
long long targetUserId,
const Json::Value &body);
};
} // namespace visione::services