получение списка администраторов и администратора по ID (любой администратор) #22

This commit is contained in:
2026-05-26 22:33:52 +03:00
parent ac5382fab4
commit ae6fe21ce6
4 changed files with 25 additions and 40 deletions
+5 -5
View File
@@ -1,6 +1,6 @@
%%%-------------------------------------------------------------------
%%% @doc Административный обработчик списка администраторов.
%%% GET – список всех администраторов (только для superadmin).
%%% GET – список всех администраторов (доступен всем администраторам).
%%% POST – создать нового администратора (только для superadmin).
%%% @end
%%%-------------------------------------------------------------------
@@ -26,7 +26,7 @@ trails() ->
ListGet = #{
path => <<"/v1/admin/admins">>,
method => <<"GET">>,
description => <<"List all admins (superadmin only)">>,
description => <<"List all admins (any admin)">>,
tags => [<<"Admins">>],
parameters => [
#{name => <<"role">>, in => <<"query">>, schema => #{type => string}},
@@ -98,10 +98,10 @@ admin_schema() ->
%%% HTTP-методы
%%%===================================================================
%% @doc GET /v1/admin/admins – список администраторов.
%% @doc GET /v1/admin/admins – список администраторов (доступен всем администраторам).
-spec list_admins(cowboy_req:req()) -> {ok, binary(), cowboy_req:req()}.
list_admins(Req) ->
case handler_utils:is_superadmin(Req) of
case handler_utils:auth_admin(Req) of
{ok, _AdminId, Req1} ->
Filters = parse_admin_filters(Req1),
Pagination = handler_utils:parse_pagination_params(Req1),
@@ -113,7 +113,7 @@ list_admins(Req) ->
handler_utils:send_error(Req1, Code, Msg)
end.
%% @doc POST /v1/admin/admins – создание администратора.
%% @doc POST /v1/admin/admins – создание администратора (только суперадмин).
-spec create_admin(cowboy_req:req()) -> {ok, binary(), cowboy_req:req()}.
create_admin(Req) ->
case handler_utils:is_superadmin(Req) of