diff --git a/src/handlers/account/index.ts b/src/handlers/account/index.ts index 09ed02a..342dce7 100644 --- a/src/handlers/account/index.ts +++ b/src/handlers/account/index.ts @@ -13,7 +13,7 @@ import type { Account } from "@/types/models/account.type"; import type { GetAccountRequest, SetAccountRoleRequest, GetAccountsRequest, GetAccountsResponse } from "./types"; export const getAccounts = async (request: GetAccountsRequest): Promise => { - const { page, limit } = determinePaginationParameters(request?.query || {}); + const { page, limit } = determinePaginationParameters(request?.query ?? {}); const accountsCount = await AccountModel.countDocuments(); @@ -53,7 +53,7 @@ export const createAccount = async (request: FastifyRequest, reply: FastifyReply }; export const getAccountByID = async (request: GetAccountRequest, reply: FastifyReply): Promise => { - const [getAccountRequestParams, error] = validateEmptyFields(request.params || {}, ["userId"]); + const [getAccountRequestParams, error] = validateEmptyFields(request.params ?? {}, ["userId"]); if (error) { void reply.status(400); @@ -139,7 +139,7 @@ export const removeAccount = async (request: FastifyRequest, reply: FastifyReply }; export const removeAccountById = async (request: GetAccountRequest, reply: FastifyReply): Promise => { - const [{ userId }, error] = validateEmptyFields(request.params || {}, ["userId"]); + const [{ userId }, error] = validateEmptyFields(request.params ?? {}, ["userId"]); if (error) { void reply.status(400); @@ -186,7 +186,7 @@ export const deleteAccount = async (request: FastifyRequest, reply: FastifyReply }; export const deleteAccountById = async (request: GetAccountRequest, reply: FastifyReply): Promise => { - const [{ userId }, error] = validateEmptyFields(request.params || {}, ["userId"]); + const [{ userId }, error] = validateEmptyFields(request.params ?? {}, ["userId"]); if (error) { void reply.status(400); diff --git a/src/handlers/permission/index.ts b/src/handlers/permission/index.ts index 6e19e06..ed4c2b1 100644 --- a/src/handlers/permission/index.ts +++ b/src/handlers/permission/index.ts @@ -15,7 +15,7 @@ export const getPermissionById = async ( request: GetPermissionByIdRequest, reply: FastifyReply ): Promise => { - const [{ permissionId }, validateParamsError] = validateEmptyFields(request.params || {}, ["permissionId"]); + const [{ permissionId }, validateParamsError] = validateEmptyFields(request.params ?? {}, ["permissionId"]); if (validateParamsError) { void reply.status(400); @@ -41,7 +41,7 @@ export const getPermissionById = async ( }; export const createPermission = async (request: CreatePermissionRequest, reply: FastifyReply): Promise => { - const [permission, error] = validateEmptyFields(request.body || {}, ["name", "description"]); + const [permission, error] = validateEmptyFields(request.body ?? {}, ["name", "description"]); if (error) { void reply.status(400); @@ -57,8 +57,8 @@ export const updatePermission = async ( request: UpdatePermissionRequest, reply: FastifyReply ): Promise => { - const [permission, validateBodyError] = validateEmptyFields(request.body || {}, ["name", "description"]); - const [{ permissionId }, validateParamsError] = validateEmptyFields(request.params || {}, ["permissionId"]); + const [permission, validateBodyError] = validateEmptyFields(request.body ?? {}, ["name", "description"]); + const [{ permissionId }, validateParamsError] = validateEmptyFields(request.params ?? {}, ["permissionId"]); if (validateBodyError) { void reply.status(400); @@ -94,7 +94,7 @@ export const removePermission = async ( request: GetPermissionByIdRequest, reply: FastifyReply ): Promise => { - const [{ permissionId }, validateParamsError] = validateEmptyFields(request.params || {}, ["permissionId"]); + const [{ permissionId }, validateParamsError] = validateEmptyFields(request.params ?? {}, ["permissionId"]); if (validateParamsError) { void reply.status(400); @@ -131,7 +131,7 @@ export const restorePermission = async ( request: GetPermissionByIdRequest, reply: FastifyReply ): Promise => { - const [{ permissionId }, validateParamsError] = validateEmptyFields(request.params || {}, ["permissionId"]); + const [{ permissionId }, validateParamsError] = validateEmptyFields(request.params ?? {}, ["permissionId"]); if (validateParamsError) { void reply.status(400); diff --git a/src/handlers/roles/index.ts b/src/handlers/roles/index.ts index 88ca6f9..dd10181 100644 --- a/src/handlers/roles/index.ts +++ b/src/handlers/roles/index.ts @@ -103,7 +103,7 @@ export const getRole = async (request: GetRoleRequest, reply: FastifyReply) => { }; export const replaceRole = async (request: UpdateRoleRequest, reply: FastifyReply) => { - const [replaceRoleRequest, error] = validateEmptyFields(request.body || {}, ["name", "permissions"]); + const [replaceRoleRequest, error] = validateEmptyFields(request.body ?? {}, ["name", "permissions"]); const { query } = request.params || {}; if (error || !replaceRoleRequest) { diff --git a/src/swagger/tariff/index.ts b/src/swagger/tariff/index.ts index d869b8e..5fce6ba 100644 --- a/src/swagger/tariff/index.ts +++ b/src/swagger/tariff/index.ts @@ -1,4 +1,4 @@ -import { getTariffParams, tariffBody, replaceTariffParams } from "./inputs"; +import { getTariffParams, tariffBody, replaceTariffParams, getTariffsQuerystring } from "./inputs"; import { getTariffReponse, getTariffsReponse, @@ -19,6 +19,7 @@ export const getTariffSchema: SwaggerSchema = { export const getTariffsSchema: SwaggerSchema = { summary: "Получение списка тарифов", tags: ["tariff"], + querystring: getTariffsQuerystring, response: getTariffsReponse, }; diff --git a/src/swagger/tariff/inputs.ts b/src/swagger/tariff/inputs.ts index 23baeb2..1c2b5db 100644 --- a/src/swagger/tariff/inputs.ts +++ b/src/swagger/tariff/inputs.ts @@ -12,6 +12,20 @@ export const getTariffParams: SwaggerMessage = { examples: [{ id: "507f1f77bcf86cd799439011" }], }; +export const getTariffsQuerystring: SwaggerMessage = { + type: "object", + properties: { + page: { + type: "number", + description: "номер страницы", + }, + limit: { + type: "number", + description: "Лимит количества аккаунтов (больше 100 не обрабатывается)", + }, + }, +}; + export const tariffBody: SwaggerMessage = { type: "object", description: "Тариф", diff --git a/src/swagger/tariff/responses.ts b/src/swagger/tariff/responses.ts index 6339706..d8e4a7b 100644 --- a/src/swagger/tariff/responses.ts +++ b/src/swagger/tariff/responses.ts @@ -1,6 +1,6 @@ import { swaggerError } from "@/utils/swagger-error"; -import { tariff } from "./models"; +import { tariff, tariffs } from "./models"; import type { SwaggerMessage } from "@/types/swagger.type"; @@ -11,11 +11,7 @@ export const getTariffReponse: Record = { }; export const getTariffsReponse: Record = { - 200: { - type: "array", - description: "Массив тарифов", - items: tariff, - }, + 200: tariffs, }; export const createTariffReponse: Record = {