tariffs/src/swagger/tariff/models.ts

149 lines
4.0 KiB
TypeScript
Raw Normal View History

2023-03-17 17:42:31 +00:00
import type { SwaggerMessage } from "@/types/swagger.type";
export const tariff: SwaggerMessage = {
type: "object",
description: "Тариф",
properties: {
_id: { type: "string" },
name: { type: "string" },
2023-12-15 15:16:14 +00:00
description: { type: "string" },
2023-03-17 17:42:31 +00:00
price: { type: "number" },
2023-12-15 20:01:09 +00:00
order: { type: "number" },
2023-03-17 17:42:31 +00:00
isCustom: { type: "boolean" },
2023-08-22 08:14:53 +00:00
privileges: {
2023-05-29 06:20:39 +00:00
type: "array",
2023-05-31 14:19:19 +00:00
items: {
2023-05-31 19:51:37 +00:00
type: "object",
properties: {
name: { type: "string" },
privilegeId: { type: "string" },
serviceKey: { type: "string" },
description: { type: "string" },
type: { type: "string" },
value: { type: "string" },
price: { type: "number" },
amount: { type: "number" },
},
2023-05-31 14:19:19 +00:00
},
2023-03-17 17:42:31 +00:00
},
isDeleted: { type: "boolean" },
createdAt: {
type: "string",
format: "date-time",
},
updatedAt: {
type: "string",
format: "date-time",
},
deletedAt: {
type: "string",
format: "date-time",
},
},
examples: [
{
name: "Использование сервисов",
price: 14000,
isCustom: false,
2023-08-22 08:14:53 +00:00
privileges: [
2023-05-29 06:20:39 +00:00
{
2023-05-31 14:19:19 +00:00
name: "name",
2023-03-17 17:42:31 +00:00
privilegeId: "507f1f77bcf86cd799439011",
serviceKey: "docx-templater-service",
description: "Количество попыток использования",
type: "count",
value: "200",
price: 12300,
2023-05-31 14:19:19 +00:00
amount: 300,
2023-03-17 17:42:31 +00:00
},
2023-05-29 06:20:39 +00:00
],
2023-03-17 17:42:31 +00:00
isDeleted: false,
createdAt: "2017-07-21T17:32:28Z",
updatedAt: "2017-07-21T17:32:28Z",
},
{
name: "user",
price: 14000,
isCustom: false,
2023-08-22 08:14:53 +00:00
privileges: [
2023-05-29 06:20:39 +00:00
{
2023-03-17 17:42:31 +00:00
name: "507f1f77bcf86cd799439011",
privilegeId: "507f1f77bcf86cd799439011",
serviceKey: "docx-templater-service",
description: "Количество попыток использования",
type: "count",
value: "200",
price: 12300,
2023-05-31 14:19:19 +00:00
amount: 100,
2023-03-17 17:42:31 +00:00
},
2023-05-29 06:20:39 +00:00
],
2023-03-17 17:42:31 +00:00
isDeleted: true,
createdAt: "2017-07-21T17:32:28Z",
updatedAt: "2019-04-14T15:32:15Z",
deletedAt: "2021-08-17T13:23:44Z",
},
],
};
2023-06-01 22:03:59 +00:00
export const tariffs: SwaggerMessage = {
description: "Список тарифов",
type: "object",
required: ["tariffs", "totalPages"],
properties: {
tariffs: {
type: "array",
description: "Массив тарифов",
items: tariff,
},
totalPages: { type: "number" },
},
examples: [
{
totalPages: 10,
tariffs: [
{
name: "Использование сервисов",
price: 14000,
isCustom: false,
2023-08-22 08:14:53 +00:00
privileges: [
2023-06-01 22:03:59 +00:00
{
name: "name",
privilegeId: "507f1f77bcf86cd799439011",
serviceKey: "docx-templater-service",
description: "Количество попыток использования",
type: "count",
value: "200",
price: 12300,
amount: 300,
},
],
isDeleted: false,
createdAt: "2017-07-21T17:32:28Z",
updatedAt: "2017-07-21T17:32:28Z",
},
{
name: "user",
price: 14000,
isCustom: false,
2023-08-22 08:14:53 +00:00
privileges: [
2023-06-01 22:03:59 +00:00
{
name: "507f1f77bcf86cd799439011",
privilegeId: "507f1f77bcf86cd799439011",
serviceKey: "docx-templater-service",
description: "Количество попыток использования",
type: "count",
value: "200",
price: 12300,
amount: 100,
},
],
isDeleted: true,
createdAt: "2017-07-21T17:32:28Z",
updatedAt: "2019-04-14T15:32:15Z",
deletedAt: "2021-08-17T13:23:44Z",
},
],
},
],
};