tariffs/src/swagger/account/index.ts

92 lines
3.2 KiB
TypeScript
Raw Normal View History

import { getAccountParams, setAccountRoleBody, getAccountsQuerystring } from "./inputs";
2023-03-17 17:40:26 +00:00
import {
getAccountResponse,
createAccountResponse,
setAccountRoleResponse,
getAccountsResponse,
removeAccountResponse,
2023-03-17 17:40:26 +00:00
} from "./responses";
import type { SwaggerSchema } from "@/types/swagger.type";
export const getAccountsSchema: SwaggerSchema = {
summary: "Получение информации об аккаунтах",
description: "Получение список аккаунтов с пагинацией из БД",
2023-03-17 17:40:26 +00:00
tags: ["account"],
querystring: getAccountsQuerystring,
2023-03-17 17:40:26 +00:00
response: getAccountsResponse,
};
2023-04-19 13:28:23 +00:00
export const getAccountByIdSchema: SwaggerSchema = {
2023-03-17 17:40:26 +00:00
summary: "Получение информации об аккаунте",
description: "Получение аккаунта по ID",
tags: ["account"],
params: getAccountParams,
response: getAccountResponse,
};
2023-04-19 13:28:23 +00:00
export const getAccountSchema: SwaggerSchema = {
summary: "Получение информации об аккаунте",
description: "Получение информации об аккаунте через токен доступа",
tags: ["account"],
security: [{ bearer: [] }],
response: getAccountResponse,
};
2023-03-17 17:40:26 +00:00
export const createAccountSchema: SwaggerSchema = {
summary: "Создание аккаунта",
tags: ["account"],
response: createAccountResponse,
security: [{ bearer: [] }],
};
export const setAccountRoleSchema: SwaggerSchema = {
summary: "Присвоение роли пользователя",
tags: ["account"],
body: setAccountRoleBody,
response: setAccountRoleResponse,
security: [{ bearer: [] }],
};
export const removeAccountSchema: SwaggerSchema = {
summary: "Удаление аккаунта",
description: "Помечает аккаунт удалённым, но не удаляет его из БД",
tags: ["account"],
response: removeAccountResponse,
security: [{ bearer: [] }],
};
export const removeAccountByIdSchema: SwaggerSchema = {
summary: "Удаление аккаунта по ID",
description: "Помечает аккаунт удалённым, но не удаляет его из БД",
tags: ["account"],
params: getAccountParams,
response: removeAccountResponse,
2023-03-17 17:40:26 +00:00
security: [{ bearer: [] }],
};
export const deleteAccountSchema: SwaggerSchema = {
summary: "Удаление аккаунта",
description: "Удаляет аккаунт из БД окончательно",
tags: ["account"],
response: removeAccountResponse,
security: [{ bearer: [] }],
};
export const deleteAccountByIdSchema: SwaggerSchema = {
summary: "Удаление аккаунта по ID",
description: "Удаляет аккаунт из БД окончательно",
tags: ["account"],
params: getAccountParams,
response: removeAccountResponse,
2023-03-17 17:40:26 +00:00
security: [{ bearer: [] }],
};
export const restoreAccountSchema: SwaggerSchema = {
summary: "Восстановление аккаунта",
description: "Восстанавливает аккаунт, который не был удалён окончательно",
tags: ["account"],
response: removeAccountResponse,
2023-03-17 17:40:26 +00:00
security: [{ bearer: [] }],
};