diff --git a/docs/openapi.md b/docs/openapi.md new file mode 100644 index 0000000..b1cc24a --- /dev/null +++ b/docs/openapi.md @@ -0,0 +1,59 @@ +# OpenAPI / Swagger + +API публикует OpenAPI-документ через `Swashbuckle.AspNetCore`. Описание +включает security-scheme `Bearer` (OpenIddict JWT), стабильные +`operationId = Controller_Action`, уникальные `schemaId` с префиксом из +неймспейса (одноимённые nested record'ы в разных контроллерах не схлопываются). + +## Эндпоинты + +| URL | Когда | +|---|---| +| `/swagger` | UI, только Development | +| `/swagger/v1/swagger.json` | JSON-документ, только Development | + +На stage/prod swagger отключён — отдельный endpoint enumeration +не должен раскрываться неавторизованным клиентам. Если нужно — поднимать +локальный API из той же ветки. + +## TypeScript-клиент + +В `src/food-market.web` подключён `openapi-typescript` (devDependency). +Команда: + +```bash +# Терминал 1: поднять API +ASPNETCORE_ENVIRONMENT=Development dotnet run --project src/food-market.api + +# Терминал 2: сгенерировать types +cd src/food-market.web +pnpm run gen:api # читает http://localhost:5081/swagger/v1/swagger.json + # → src/lib/api.generated.ts +``` + +Альтернативно (без живого API) — через `Swashbuckle.AspNetCore.Cli` (версия +должна совпадать с `Swashbuckle.AspNetCore`, у нас 6.9.0): + +```bash +dotnet tool install --global Swashbuckle.AspNetCore.Cli --version 6.9.0 +dotnet build src/food-market.api +swagger tofile --output /tmp/swagger.json \ + src/food-market.api/bin/Debug/net8.0/foodmarket.Api.dll v1 +cd src/food-market.web +pnpm exec openapi-typescript /tmp/swagger.json -o src/lib/api.generated.ts +``` + +## Использование + +Тонкая обёртка в `src/food-market.web/src/lib/apiClient.ts` экспортирует +типизированные хелперы для отчётов (Reports/Sales, Reports/ABC, +Reports/Profit) — образец постепенной миграции с ручных типов в +`types.ts`. В новом коде использовать обёртку и переэкспортированные +типы; старые страницы переписывать по мере правок. + +## Версионирование + +Document `v1` — единственный. Если будут breaking changes — поднимаем +`v2` рядом, не ломая `v1`. У `operationId` стабильное имя +`Controller_Action` — переименование контроллера ломает TS-клиент, +относиться как к public API. diff --git a/src/food-market.api/Program.cs b/src/food-market.api/Program.cs index 9653fc3..d176b64 100644 --- a/src/food-market.api/Program.cs +++ b/src/food-market.api/Program.cs @@ -158,7 +158,58 @@ o.Filters.AddService(); }); builder.Services.AddEndpointsApiExplorer(); - builder.Services.AddSwaggerGen(); + builder.Services.AddSwaggerGen(opts => + { + opts.SwaggerDoc("v1", new Microsoft.OpenApi.Models.OpenApiInfo + { + Title = "food-market API", + Version = "v1", + Description = "Multi-tenant POS/inventory backend. Все запросы " + + "ограничены организацией текущего JWT (claim `org_id`).", + }); + // Bearer JWT через OpenIddict. Swagger UI «Authorize» подставит в Authorization. + var bearer = new Microsoft.OpenApi.Models.OpenApiSecurityScheme + { + Type = Microsoft.OpenApi.Models.SecuritySchemeType.Http, + Scheme = "bearer", + BearerFormat = "JWT", + In = Microsoft.OpenApi.Models.ParameterLocation.Header, + Description = "Access token, полученный через POST /connect/token.", + }; + opts.AddSecurityDefinition("Bearer", bearer); + opts.AddSecurityRequirement(new Microsoft.OpenApi.Models.OpenApiSecurityRequirement + { + [new Microsoft.OpenApi.Models.OpenApiSecurityScheme + { + Reference = new Microsoft.OpenApi.Models.OpenApiReference + { + Type = Microsoft.OpenApi.Models.ReferenceType.SecurityScheme, + Id = "Bearer", + }, + }] = Array.Empty(), + }); + // Стабильные operationId для генерации TS-клиентов: + // _. Verb включён чтобы избежать коллизии + // когда ASP.NET стрипает Async-суффикс и два метода (WipeAll, WipeAllAsync) + // получают одинаковое имя action → одинаковый operationId → duplicate. + opts.CustomOperationIds(api => + { + var ctrl = api.ActionDescriptor.RouteValues["controller"]; + var action = api.ActionDescriptor.RouteValues["action"]; + var verb = api.HttpMethod is { Length: > 0 } m ? char.ToUpper(m[0]) + m[1..].ToLowerInvariant() : ""; + return $"{ctrl}_{verb}{action}"; + }); + // У нас есть одноимённые nested record'ы в разных контроллерах + // (например, StockRow в StockController и StockReportController). + // Включаем имя контроллера в schemaId через FullName-suffix чтобы не + // словить duplicate schemaId — Swashbuckle падает на этом по умолчанию. + opts.CustomSchemaIds(t => t.FullName! + .Replace("foodmarket.Api.Controllers.", "") + .Replace("foodmarket.Application.", "") + .Replace("foodmarket.Domain.", "") + .Replace("+", "_") + .Replace(".", "_")); + }); // MoySklad import integration. Auto-decompress gzip responses from MoySklad's edge. // BaseAddress берётся из конфигурации (MoySklad:BaseUrl) с дефолтом на боевой @@ -237,8 +288,15 @@ if (app.Environment.IsDevelopment()) { + // Swagger/OpenAPI: только в Development. /swagger/v1/swagger.json — JSON-документ, + // /swagger — UI. На prod не раскрываем (sensitive endpoint enumeration), на dev + // используется фронтом для генерации TS-клиента (`pnpm run gen:api`). app.UseSwagger(); - app.UseSwaggerUI(); + app.UseSwaggerUI(opts => + { + opts.DocumentTitle = "food-market API"; + opts.RoutePrefix = "swagger"; + }); } app.MapControllers(); diff --git a/src/food-market.web/package.json b/src/food-market.web/package.json index 8f9bd8f..b2ee08a 100644 --- a/src/food-market.web/package.json +++ b/src/food-market.web/package.json @@ -7,7 +7,8 @@ "dev": "vite", "build": "tsc -b && vite build", "lint": "eslint .", - "preview": "vite preview" + "preview": "vite preview", + "gen:api": "openapi-typescript http://localhost:5081/swagger/v1/swagger.json -o src/lib/api.generated.ts" }, "dependencies": { "@hookform/resolvers": "^5.2.2", @@ -40,6 +41,7 @@ "eslint-plugin-react-hooks": "^7.1.1", "eslint-plugin-react-refresh": "^0.5.2", "globals": "^17.5.0", + "openapi-typescript": "^7.5.2", "postcss": "^8.5.10", "tailwindcss": "^4.2.3", "typescript": "~6.0.2", diff --git a/src/food-market.web/pnpm-lock.yaml b/src/food-market.web/pnpm-lock.yaml index 84082f5..23d1c39 100644 --- a/src/food-market.web/pnpm-lock.yaml +++ b/src/food-market.web/pnpm-lock.yaml @@ -93,6 +93,9 @@ importers: globals: specifier: ^17.5.0 version: 17.5.0 + openapi-typescript: + specifier: ^7.5.2 + version: 7.13.0(typescript@6.0.3) postcss: specifier: ^8.5.10 version: 8.5.10 @@ -296,6 +299,16 @@ packages: '@oxc-project/types@0.126.0': resolution: {integrity: sha512-oGfVtjAgwQVVpfBrbtk4e1XDyWHRFta6BS3GWVzrF8xYBT2VGQAk39yJS/wFSMrZqoiCU4oghT3Ch0HaHGIHcQ==} + '@redocly/ajv@8.11.2': + resolution: {integrity: sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg==} + + '@redocly/config@0.22.0': + resolution: {integrity: sha512-gAy93Ddo01Z3bHuVdPWfCwzgfaYgMdaZPcfL7JZ7hWJoK9V0lXDbigTWkhiPFAaLWzbOJ+kbUQG1+XwIm0KRGQ==} + + '@redocly/openapi-core@1.34.15': + resolution: {integrity: sha512-HAwCnNyKcs5XGQqms+9t7OdAPM/5TDstmhF+0i7tdCFato2QKuYIlyWETwkXd8c5zbltr1oB+6y9NTeQLr2d6Q==} + engines: {node: '>=18.17.0', npm: '>=9.5.0'} + '@reduxjs/toolkit@2.11.2': resolution: {integrity: sha512-Kd6kAHTA6/nUpp8mySPqj3en3dm0tdMIgbttnQ1xFMVpufoj+ADi8pXLBsd4xzTRHQa7t/Jv8W5UnCuW4kuWMQ==} peerDependencies: @@ -657,9 +670,17 @@ packages: engines: {node: '>=0.4.0'} hasBin: true + agent-base@7.1.4: + resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} + engines: {node: '>= 14'} + ajv@6.14.0: resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} @@ -695,6 +716,9 @@ packages: brace-expansion@1.1.14: resolution: {integrity: sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==} + brace-expansion@2.1.1: + resolution: {integrity: sha512-WR1cURNjuvBLMZBMbqM0UoE+WAfdUcEV1ccD8PVBVOI+Z3ND4+SZbN8RsfT2bMuG1qwz5RFvPukSZm5fF2D5eA==} + brace-expansion@5.0.5: resolution: {integrity: sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==} engines: {node: 18 || 20 || >=22} @@ -719,6 +743,9 @@ packages: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} + change-case@5.4.4: + resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==} + class-variance-authority@0.7.1: resolution: {integrity: sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==} @@ -733,6 +760,9 @@ packages: color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + colorette@1.4.0: + resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + combined-stream@1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} @@ -1032,6 +1062,10 @@ packages: hermes-parser@0.25.1: resolution: {integrity: sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==} + https-proxy-agent@7.0.6: + resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} + engines: {node: '>= 14'} + ignore@5.3.2: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} @@ -1054,6 +1088,10 @@ packages: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} + index-to-position@1.2.0: + resolution: {integrity: sha512-Yg7+ztRkqslMAS2iFaU+Oa4KTSidr63OsFGlOrJoW981kIYO3CGCS3wA95P1mUi/IVSJkn0D479KTJpVpvFNuw==} + engines: {node: '>=18'} + internmap@2.0.3: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} @@ -1073,6 +1111,10 @@ packages: resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} hasBin: true + js-levenshtein@1.1.6: + resolution: {integrity: sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==} + engines: {node: '>=0.10.0'} + js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} @@ -1091,6 +1133,9 @@ packages: json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} @@ -1217,6 +1262,10 @@ packages: minimatch@3.1.5: resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + minimatch@5.1.9: + resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} + engines: {node: '>=10'} + ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -1231,6 +1280,12 @@ packages: node-releases@2.0.37: resolution: {integrity: sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg==} + openapi-typescript@7.13.0: + resolution: {integrity: sha512-EFP392gcqXS7ntPvbhBzbF8TyBA+baIYEm791Hy5YkjDYKTnk/Tn5OQeKm5BIZvJihpp8Zzr4hzx0Irde1LNGQ==} + hasBin: true + peerDependencies: + typescript: ^5.x + optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} @@ -1247,6 +1302,10 @@ packages: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} + parse-json@8.3.0: + resolution: {integrity: sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==} + engines: {node: '>=18'} + path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -1262,6 +1321,10 @@ packages: resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==} engines: {node: '>=12'} + pluralize@8.0.0: + resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} + engines: {node: '>=4'} + postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} @@ -1354,6 +1417,10 @@ packages: redux@5.0.1: resolution: {integrity: sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==} + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + reselect@5.1.1: resolution: {integrity: sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w==} @@ -1397,6 +1464,10 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} + supports-color@10.2.2: + resolution: {integrity: sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==} + engines: {node: '>=18'} + supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -1439,6 +1510,10 @@ packages: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} + type-fest@4.41.0: + resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} + engines: {node: '>=16'} + typescript-eslint@8.59.0: resolution: {integrity: sha512-BU3ONW9X+v90EcCH9ZS6LMackcVtxRLlI3XrYyqZIwVSHIk7Qf7bFw1z0M9Q0IUxhTMZCf8piY9hTYaNEIASrw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1460,6 +1535,9 @@ packages: peerDependencies: browserslist: '>= 4.21.0' + uri-js-replace@1.0.1: + resolution: {integrity: sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g==} + uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -1526,6 +1604,13 @@ packages: yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + yaml-ast-parser@0.0.43: + resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -1562,7 +1647,7 @@ snapshots: '@babel/types': 7.29.0 '@jridgewell/remapping': 2.3.5 convert-source-map: 2.0.0 - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -1632,7 +1717,7 @@ snapshots: '@babel/parser': 7.29.2 '@babel/template': 7.28.6 '@babel/types': 7.29.0 - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) transitivePeerDependencies: - supports-color @@ -1667,7 +1752,7 @@ snapshots: '@eslint/config-array@0.21.2': dependencies: '@eslint/object-schema': 2.1.7 - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) minimatch: 3.1.5 transitivePeerDependencies: - supports-color @@ -1683,7 +1768,7 @@ snapshots: '@eslint/eslintrc@3.3.5': dependencies: ajv: 6.14.0 - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) espree: 10.4.0 globals: 14.0.0 ignore: 5.3.2 @@ -1777,6 +1862,29 @@ snapshots: '@oxc-project/types@0.126.0': {} + '@redocly/ajv@8.11.2': + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js-replace: 1.0.1 + + '@redocly/config@0.22.0': {} + + '@redocly/openapi-core@1.34.15(supports-color@10.2.2)': + dependencies: + '@redocly/ajv': 8.11.2 + '@redocly/config': 0.22.0 + colorette: 1.4.0 + https-proxy-agent: 7.0.6(supports-color@10.2.2) + js-levenshtein: 1.1.6 + js-yaml: 4.1.1 + minimatch: 5.1.9 + pluralize: 8.0.0 + yaml-ast-parser: 0.0.43 + transitivePeerDependencies: + - supports-color + '@reduxjs/toolkit@2.11.2(react-redux@9.2.0(@types/react@19.2.14)(react@19.2.5)(redux@5.0.1))(react@19.2.5)': dependencies: '@standard-schema/spec': 1.1.0 @@ -1998,7 +2106,7 @@ snapshots: '@typescript-eslint/types': 8.59.0 '@typescript-eslint/typescript-estree': 8.59.0(typescript@6.0.3) '@typescript-eslint/visitor-keys': 8.59.0 - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) eslint: 9.39.4(jiti@2.6.1) typescript: 6.0.3 transitivePeerDependencies: @@ -2008,7 +2116,7 @@ snapshots: dependencies: '@typescript-eslint/tsconfig-utils': 8.59.0(typescript@6.0.3) '@typescript-eslint/types': 8.59.0 - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) typescript: 6.0.3 transitivePeerDependencies: - supports-color @@ -2027,7 +2135,7 @@ snapshots: '@typescript-eslint/types': 8.59.0 '@typescript-eslint/typescript-estree': 8.59.0(typescript@6.0.3) '@typescript-eslint/utils': 8.59.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) eslint: 9.39.4(jiti@2.6.1) ts-api-utils: 2.5.0(typescript@6.0.3) typescript: 6.0.3 @@ -2042,7 +2150,7 @@ snapshots: '@typescript-eslint/tsconfig-utils': 8.59.0(typescript@6.0.3) '@typescript-eslint/types': 8.59.0 '@typescript-eslint/visitor-keys': 8.59.0 - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) minimatch: 10.2.5 semver: 7.7.4 tinyglobby: 0.2.16 @@ -2078,6 +2186,8 @@ snapshots: acorn@8.16.0: {} + agent-base@7.1.4: {} + ajv@6.14.0: dependencies: fast-deep-equal: 3.1.3 @@ -2085,6 +2195,8 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 + ansi-colors@4.1.3: {} + ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 @@ -2121,6 +2233,10 @@ snapshots: balanced-match: 1.0.2 concat-map: 0.0.1 + brace-expansion@2.1.1: + dependencies: + balanced-match: 1.0.2 + brace-expansion@5.0.5: dependencies: balanced-match: 4.0.4 @@ -2147,6 +2263,8 @@ snapshots: ansi-styles: 4.3.0 supports-color: 7.2.0 + change-case@5.4.4: {} + class-variance-authority@0.7.1: dependencies: clsx: 2.1.1 @@ -2159,6 +2277,8 @@ snapshots: color-name@1.1.4: {} + colorette@1.4.0: {} + combined-stream@1.0.8: dependencies: delayed-stream: 1.0.0 @@ -2217,9 +2337,11 @@ snapshots: date-fns@4.1.0: {} - debug@4.4.3: + debug@4.4.3(supports-color@10.2.2): dependencies: ms: 2.1.3 + optionalDependencies: + supports-color: 10.2.2 decimal.js-light@2.5.1: {} @@ -2306,7 +2428,7 @@ snapshots: ajv: 6.14.0 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.3 + debug: 4.4.3(supports-color@10.2.2) escape-string-regexp: 4.0.0 eslint-scope: 8.4.0 eslint-visitor-keys: 4.2.1 @@ -2443,6 +2565,13 @@ snapshots: dependencies: hermes-estree: 0.25.1 + https-proxy-agent@7.0.6(supports-color@10.2.2): + dependencies: + agent-base: 7.1.4 + debug: 4.4.3(supports-color@10.2.2) + transitivePeerDependencies: + - supports-color + ignore@5.3.2: {} ignore@7.0.5: {} @@ -2458,6 +2587,8 @@ snapshots: imurmurhash@0.1.4: {} + index-to-position@1.2.0: {} + internmap@2.0.3: {} is-extglob@2.1.1: {} @@ -2470,6 +2601,8 @@ snapshots: jiti@2.6.1: {} + js-levenshtein@1.1.6: {} + js-tokens@4.0.0: {} js-yaml@4.1.1: @@ -2482,6 +2615,8 @@ snapshots: json-schema-traverse@0.4.1: {} + json-schema-traverse@1.0.0: {} + json-stable-stringify-without-jsonify@1.0.1: {} json5@2.2.3: {} @@ -2578,6 +2713,10 @@ snapshots: dependencies: brace-expansion: 1.1.14 + minimatch@5.1.9: + dependencies: + brace-expansion: 2.1.1 + ms@2.1.3: {} nanoid@3.3.11: {} @@ -2586,6 +2725,16 @@ snapshots: node-releases@2.0.37: {} + openapi-typescript@7.13.0(typescript@6.0.3): + dependencies: + '@redocly/openapi-core': 1.34.15(supports-color@10.2.2) + ansi-colors: 4.1.3 + change-case: 5.4.4 + parse-json: 8.3.0 + supports-color: 10.2.2 + typescript: 6.0.3 + yargs-parser: 21.1.1 + optionator@0.9.4: dependencies: deep-is: 0.1.4 @@ -2607,6 +2756,12 @@ snapshots: dependencies: callsites: 3.1.0 + parse-json@8.3.0: + dependencies: + '@babel/code-frame': 7.29.0 + index-to-position: 1.2.0 + type-fest: 4.41.0 + path-exists@4.0.0: {} path-key@3.1.1: {} @@ -2615,6 +2770,8 @@ snapshots: picomatch@4.0.4: {} + pluralize@8.0.0: {} + postcss-value-parser@4.2.0: {} postcss@8.5.10: @@ -2699,6 +2856,8 @@ snapshots: redux@5.0.1: {} + require-from-string@2.0.2: {} + reselect@5.1.1: {} resolve-from@4.0.0: {} @@ -2742,6 +2901,8 @@ snapshots: strip-json-comments@3.1.1: {} + supports-color@10.2.2: {} + supports-color@7.2.0: dependencies: has-flag: 4.0.0 @@ -2776,6 +2937,8 @@ snapshots: dependencies: prelude-ls: 1.2.1 + type-fest@4.41.0: {} + typescript-eslint@8.59.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3): dependencies: '@typescript-eslint/eslint-plugin': 8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3))(eslint@9.39.4(jiti@2.6.1))(typescript@6.0.3) @@ -2797,6 +2960,8 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.1 + uri-js-replace@1.0.1: {} + uri-js@4.4.1: dependencies: punycode: 2.3.1 @@ -2842,6 +3007,10 @@ snapshots: yallist@3.1.1: {} + yaml-ast-parser@0.0.43: {} + + yargs-parser@21.1.1: {} + yocto-queue@0.1.0: {} zod-validation-error@4.0.2(zod@4.3.6): diff --git a/src/food-market.web/src/lib/api.generated.ts b/src/food-market.web/src/lib/api.generated.ts new file mode 100644 index 0000000..eba5489 --- /dev/null +++ b/src/food-market.web/src/lib/api.generated.ts @@ -0,0 +1,7745 @@ +/** + * This file was auto-generated by openapi-typescript. + * Do not make direct changes to the file. + */ + +export interface paths { + "/api/reports/abc": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["AbcReport_GetGet"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/reports/abc/export": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["AbcReport_GetExport"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/cleanup/stats": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["AdminCleanup_GetGetStats"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/cleanup/counterparties": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + delete: operations["AdminCleanup_DeleteWipeCounterparties"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/cleanup/all/async": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["AdminCleanup_PostWipeAll"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/cleanup/all": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + delete: operations["AdminCleanup_DeleteWipeAll"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/jobs/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["AdminJobs_GetGet"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/jobs/recent": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["AdminJobs_GetRecent"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/auth/forgot-password": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["AuthForgotPassword_PostForgot"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/auth/reset-password": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["AuthForgotPassword_PostReset"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/connect/token": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Authorization_PostExchange"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/auth/signup": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["AuthSignup_PostSignup"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/counterparties": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Counterparties_GetList"]; + put?: never; + post: operations["Counterparties_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/counterparties/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Counterparties_GetGet"]; + put: operations["Counterparties_PutUpdate"]; + post?: never; + delete: operations["Counterparties_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/countries": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Countries_GetList"]; + put?: never; + post: operations["Countries_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/countries/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Countries_GetGet"]; + put: operations["Countries_PutUpdate"]; + post?: never; + delete: operations["Countries_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/currencies": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Currencies_GetList"]; + put?: never; + post: operations["Currencies_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/currencies/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Currencies_GetGet"]; + put: operations["Currencies_PutUpdate"]; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/organization/employee-roles": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["EmployeeRoles_GetList"]; + put?: never; + post: operations["EmployeeRoles_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/organization/employee-roles/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["EmployeeRoles_GetGet"]; + put: operations["EmployeeRoles_PutUpdate"]; + post?: never; + delete: operations["EmployeeRoles_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/organization/employees": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Employees_GetList"]; + put?: never; + post: operations["Employees_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/organization/employees/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Employees_GetGet"]; + put: operations["Employees_PutUpdate"]; + post?: never; + delete: operations["Employees_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/enters": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Enters_GetList"]; + put?: never; + post: operations["Enters_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/enters/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Enters_GetGet"]; + put: operations["Enters_PutUpdate"]; + post?: never; + delete: operations["Enters_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/enters/{id}/post": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Enters_PostPost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/enters/{id}/unpost": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Enters_PostUnpost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/inventories": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Inventories_GetList"]; + put?: never; + post: operations["Inventories_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/inventories/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Inventories_GetGet"]; + put: operations["Inventories_PutUpdate"]; + post?: never; + delete: operations["Inventories_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/inventories/{id}/post": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Inventories_PostPost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/inventories/{id}/unpost": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Inventories_PostUnpost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/losses": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Losses_GetList"]; + put?: never; + post: operations["Losses_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/losses/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Losses_GetGet"]; + put: operations["Losses_PutUpdate"]; + post?: never; + delete: operations["Losses_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/losses/{id}/post": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Losses_PostPost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/losses/{id}/unpost": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Losses_PostUnpost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/moysklad/settings": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["MoySkladImport_GetGetSettings"]; + put: operations["MoySkladImport_PutSetSettings"]; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/moysklad/test": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["MoySkladImport_PostTestConnection"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/moysklad/import-products": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["MoySkladImport_PostImportProducts"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/admin/moysklad/import-counterparties": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["MoySkladImport_PostImportCounterparties"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/organization/settings": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["OrganizationSettings_GetGet"]; + put: operations["OrganizationSettings_PutUpdate"]; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/platform-settings": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["PlatformSettings_GetGet"]; + put: operations["PlatformSettings_PutUpdate"]; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/platform-settings/test-send": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["PlatformSettings_PostTestSend"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/price-types": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["PriceTypes_GetList"]; + put?: never; + post: operations["PriceTypes_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/price-types/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["PriceTypes_GetGet"]; + put: operations["PriceTypes_PutUpdate"]; + post?: never; + delete: operations["PriceTypes_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/product-groups": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["ProductGroups_GetList"]; + put?: never; + post: operations["ProductGroups_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/product-groups/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["ProductGroups_GetGet"]; + put: operations["ProductGroups_PutUpdate"]; + post?: never; + delete: operations["ProductGroups_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products/{productId}/images": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["ProductImages_GetList"]; + put?: never; + post: operations["ProductImages_PostUpload"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products/{productId}/images/{imageId}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + delete: operations["ProductImages_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products/{productId}/images/{imageId}/main": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["ProductImages_PostSetMain"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Products_GetList"]; + put?: never; + post: operations["Products_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Products_GetGet"]; + put: operations["Products_PutUpdate"]; + post?: never; + delete: operations["Products_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products/{id}/recalc-retail": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Products_PostRecalcRetail"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products/barcode-duplicates": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Products_GetBarcodeDuplicates"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products/quick-search": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Products_GetQuickSearch"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/products/by-barcode/{value}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Products_GetByBarcode"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/reports/profit": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["ProfitReport_GetGet"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/reports/profit/export": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["ProfitReport_GetExport"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/retail-points": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["RetailPoints_GetList"]; + put?: never; + post: operations["RetailPoints_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/retail-points/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["RetailPoints_GetGet"]; + put: operations["RetailPoints_PutUpdate"]; + post?: never; + delete: operations["RetailPoints_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/sales/retail/stats": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["RetailSales_GetStats"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/sales/retail": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["RetailSales_GetList"]; + put?: never; + post: operations["RetailSales_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/sales/retail/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["RetailSales_GetGet"]; + put: operations["RetailSales_PutUpdate"]; + post?: never; + delete: operations["RetailSales_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/sales/retail/{id}/post": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["RetailSales_PostPost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/sales/retail/{id}/unpost": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["RetailSales_PostUnpost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/sales/retail/{id}/create-return": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["RetailSales_PostCreateReturnFrom"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/reports/sales": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SalesReport_GetGet"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/reports/sales/export": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SalesReport_GetExport"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/stock": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Stock_GetGetStock"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/movements": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Stock_GetGetMovements"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/reports/stock": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["StockReport_GetGet"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/reports/stock/export": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["StockReport_GetExport"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/stores": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Stores_GetList"]; + put?: never; + post: operations["Stores_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/stores/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Stores_GetGet"]; + put: operations["Stores_PutUpdate"]; + post?: never; + delete: operations["Stores_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/setup-status": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdmin_GetGetSetupStatus"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/dashboard": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdmin_GetDashboard"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/settings": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdmin_GetGetSettings"]; + put: operations["SuperAdmin_PutUpdateSettings"]; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/audit-log": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdmin_GetAuditLog"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{orgId}/employees": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdminEmployees_GetList"]; + put?: never; + post: operations["SuperAdminEmployees_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{orgId}/employees/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdminEmployees_GetGet"]; + put: operations["SuperAdminEmployees_PutUpdate"]; + post?: never; + delete: operations["SuperAdminEmployees_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{orgId}/employees/{id}/toggle-active": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["SuperAdminEmployees_PostToggleActive"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{orgId}/employees/{id}/account/toggle-active": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["SuperAdminEmployees_PostToggleAccountActive"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{orgId}/employees/{id}/reset-password": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["SuperAdminEmployees_PostResetPassword"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdminOrganizations_GetList"]; + put?: never; + post: operations["SuperAdminOrganizations_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdminOrganizations_GetGet"]; + put: operations["SuperAdminOrganizations_PutUpdate"]; + post?: never; + delete: operations["SuperAdminOrganizations_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{id}/archive": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["SuperAdminOrganizations_PostArchive"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{id}/restore": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["SuperAdminOrganizations_PostRestore"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/organizations/{id}/change-owner": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["SuperAdminOrganizations_PostChangeOwner"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/units-of-measure": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdminUnitsOfMeasure_GetList"]; + put?: never; + post: operations["SuperAdminUnitsOfMeasure_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/super-admin/units-of-measure/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SuperAdminUnitsOfMeasure_GetGet"]; + put: operations["SuperAdminUnitsOfMeasure_PutUpdate"]; + post?: never; + delete: operations["SuperAdminUnitsOfMeasure_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/purchases/supplier-returns": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SupplierReturns_GetList"]; + put?: never; + post: operations["SupplierReturns_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/purchases/supplier-returns/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["SupplierReturns_GetGet"]; + put: operations["SupplierReturns_PutUpdate"]; + post?: never; + delete: operations["SupplierReturns_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/purchases/supplier-returns/{id}/post": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["SupplierReturns_PostPost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/purchases/supplier-returns/{id}/unpost": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["SupplierReturns_PostUnpost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/purchases/supplies": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Supplies_GetList"]; + put?: never; + post: operations["Supplies_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/purchases/supplies/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Supplies_GetGet"]; + put: operations["Supplies_PutUpdate"]; + post?: never; + delete: operations["Supplies_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/purchases/supplies/{id}/post": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Supplies_PostPost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/purchases/supplies/{id}/unpost": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Supplies_PostUnpost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/transfers": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Transfers_GetList"]; + put?: never; + post: operations["Transfers_PostCreate"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/transfers/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["Transfers_GetGet"]; + put: operations["Transfers_PutUpdate"]; + post?: never; + delete: operations["Transfers_DeleteDelete"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/transfers/{id}/post": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Transfers_PostPost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/inventory/transfers/{id}/unpost": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["Transfers_PostUnpost"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/units-of-measure": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["UnitsOfMeasure_GetList"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/units-of-measure/{id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get: operations["UnitsOfMeasure_GetGet"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/api/catalog/units-of-measure/{id}/enable": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post: operations["UnitsOfMeasure_PostEnable"]; + delete: operations["UnitsOfMeasure_DeleteDisable"]; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; +} +export type webhooks = Record; +export interface components { + schemas: { + Admin_AdminCleanupController_CleanupResult: { + scope?: string | null; + deleted?: components["schemas"]["Admin_AdminCleanupController_CleanupStats"]; + }; + Admin_AdminCleanupController_CleanupStats: { + /** Format: int32 */ + counterparties?: number; + /** Format: int32 */ + products?: number; + /** Format: int32 */ + productGroups?: number; + /** Format: int32 */ + productBarcodes?: number; + /** Format: int32 */ + productPrices?: number; + /** Format: int32 */ + supplies?: number; + /** Format: int32 */ + retailSales?: number; + /** Format: int32 */ + stocks?: number; + /** Format: int32 */ + stockMovements?: number; + }; + Admin_AdminJobsController_JobView: { + /** Format: uuid */ + id?: string; + kind?: string | null; + status?: string | null; + stage?: string | null; + /** Format: date-time */ + startedAt?: string; + /** Format: date-time */ + finishedAt?: string | null; + /** Format: int32 */ + total?: number; + /** Format: int32 */ + created?: number; + /** Format: int32 */ + updated?: number; + /** Format: int32 */ + skipped?: number; + /** Format: int32 */ + deleted?: number; + /** Format: int32 */ + groupsCreated?: number; + message?: string | null; + errors?: string[] | null; + }; + Admin_MoySkladImportController_ImportRequest: { + token?: string | null; + overwriteExisting?: boolean; + }; + Admin_MoySkladImportController_SettingsDto: { + hasToken?: boolean; + masked?: string | null; + }; + Admin_MoySkladImportController_SettingsInput: { + token?: string | null; + }; + Admin_MoySkladImportController_TestRequest: { + token?: string | null; + }; + AuthForgotPasswordController_ForgotInput: { + email?: string | null; + }; + AuthForgotPasswordController_ResetInput: { + email?: string | null; + token?: string | null; + newPassword?: string | null; + }; + AuthSignupController_SignupInput: { + email?: string | null; + password?: string | null; + organizationName?: string | null; + phone?: string | null; + plan?: string | null; + }; + AuthSignupController_SignupResult: { + /** Format: uuid */ + organizationId?: string; + email?: string | null; + }; + /** + * Format: int32 + * @enum {integer} + */ + Catalog_BarcodeType: 1 | 2 | 3 | 4 | 5 | 6 | 99; + Catalog_CounterpartyDto: { + /** Format: uuid */ + id?: string; + name?: string | null; + legalName?: string | null; + type?: components["schemas"]["Catalog_CounterpartyType"]; + bin?: string | null; + iin?: string | null; + taxNumber?: string | null; + /** Format: uuid */ + countryId?: string | null; + countryName?: string | null; + address?: string | null; + phone?: string | null; + email?: string | null; + bankName?: string | null; + bankAccount?: string | null; + bik?: string | null; + contactPerson?: string | null; + notes?: string | null; + }; + Catalog_CounterpartyInput: { + name?: string | null; + legalName?: string | null; + type?: components["schemas"]["Catalog_CounterpartyType"]; + bin?: string | null; + iin?: string | null; + taxNumber?: string | null; + /** Format: uuid */ + countryId?: string | null; + address?: string | null; + phone?: string | null; + email?: string | null; + bankName?: string | null; + bankAccount?: string | null; + bik?: string | null; + contactPerson?: string | null; + notes?: string | null; + }; + /** + * Format: int32 + * @enum {integer} + */ + Catalog_CounterpartyType: 1 | 2; + Catalog_CountryDto: { + /** Format: uuid */ + id?: string; + code?: string | null; + name?: string | null; + /** Format: uuid */ + defaultCurrencyId?: string | null; + defaultCurrencyCode?: string | null; + defaultCurrencySymbol?: string | null; + /** Format: double */ + vatRate?: number; + }; + Catalog_CountryInput: { + code?: string | null; + name?: string | null; + /** Format: uuid */ + defaultCurrencyId?: string | null; + /** Format: double */ + vatRate?: number; + }; + Catalog_CurrencyDto: { + /** Format: uuid */ + id?: string; + code?: string | null; + name?: string | null; + symbol?: string | null; + }; + Catalog_CurrencyInput: { + code?: string | null; + name?: string | null; + symbol?: string | null; + }; + /** + * Format: int32 + * @enum {integer} + */ + Catalog_Packaging: 1 | 2 | 3; + Catalog_PriceTypeDto: { + /** Format: uuid */ + id?: string; + name?: string | null; + isRequired?: boolean; + isSystem?: boolean; + isRetail?: boolean; + /** Format: int32 */ + sortOrder?: number; + }; + Catalog_PriceTypeInput: { + name?: string | null; + isRequired?: boolean; + isRetail?: boolean; + /** Format: int32 */ + sortOrder?: number; + }; + Catalog_ProductBarcodeDto: { + /** Format: uuid */ + id?: string; + code?: string | null; + type?: components["schemas"]["Catalog_BarcodeType"]; + isPrimary?: boolean; + }; + Catalog_ProductBarcodeInput: { + code?: string | null; + type?: components["schemas"]["Catalog_BarcodeType"]; + isPrimary?: boolean; + }; + Catalog_ProductDto: { + /** Format: uuid */ + id?: string; + name?: string | null; + article?: string | null; + description?: string | null; + /** Format: uuid */ + unitOfMeasureId?: string; + unitName?: string | null; + /** Format: double */ + vat?: number; + vatEnabled?: boolean; + /** Format: uuid */ + productGroupId?: string; + productGroupName?: string | null; + /** Format: uuid */ + defaultSupplierId?: string | null; + defaultSupplierName?: string | null; + /** Format: uuid */ + countryOfOriginId?: string | null; + countryOfOriginName?: string | null; + isService?: boolean; + packaging?: components["schemas"]["Catalog_Packaging"]; + isMarked?: boolean; + /** Format: double */ + minStock?: number | null; + /** Format: double */ + maxStock?: number | null; + /** Format: double */ + referencePrice?: number | null; + /** Format: date-time */ + referencePriceUpdatedAt?: string | null; + /** Format: uuid */ + purchaseCurrencyId?: string | null; + purchaseCurrencyCode?: string | null; + /** Format: double */ + cost?: number; + /** Format: date-time */ + lastSupplyAt?: string | null; + imageUrl?: string | null; + prices?: components["schemas"]["Catalog_ProductPriceDto"][] | null; + barcodes?: components["schemas"]["Catalog_ProductBarcodeDto"][] | null; + }; + Catalog_ProductGroupDto: { + /** Format: uuid */ + id?: string; + name?: string | null; + /** Format: uuid */ + parentId?: string | null; + path?: string | null; + /** Format: int32 */ + sortOrder?: number; + /** Format: double */ + markupPercent?: number | null; + /** Format: uuid */ + organizationId?: string | null; + }; + Catalog_ProductGroupInput: { + name?: string | null; + /** Format: uuid */ + parentId?: string | null; + /** Format: int32 */ + sortOrder?: number; + /** Format: double */ + markupPercent?: number | null; + }; + Catalog_ProductImagesController_ImageDto: { + /** Format: uuid */ + id?: string; + url?: string | null; + isMain?: boolean; + /** Format: int32 */ + sortOrder?: number; + }; + Catalog_ProductInput: { + name?: string | null; + article?: string | null; + description?: string | null; + /** Format: uuid */ + unitOfMeasureId?: string; + /** Format: double */ + vat?: number | null; + vatEnabled?: boolean; + /** Format: uuid */ + productGroupId?: string; + /** Format: uuid */ + defaultSupplierId?: string | null; + /** Format: uuid */ + countryOfOriginId?: string | null; + isService?: boolean; + packaging?: components["schemas"]["Catalog_Packaging"]; + isMarked?: boolean; + /** Format: double */ + minStock?: number | null; + /** Format: double */ + maxStock?: number | null; + /** Format: double */ + referencePrice?: number | null; + /** Format: uuid */ + purchaseCurrencyId?: string | null; + imageUrl?: string | null; + prices?: components["schemas"]["Catalog_ProductPriceInput"][] | null; + barcodes?: components["schemas"]["Catalog_ProductBarcodeInput"][] | null; + }; + Catalog_ProductPriceDto: { + /** Format: uuid */ + id?: string; + /** Format: uuid */ + priceTypeId?: string; + priceTypeName?: string | null; + /** Format: double */ + amount?: number; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + }; + Catalog_ProductPriceInput: { + /** Format: uuid */ + priceTypeId?: string; + /** Format: double */ + amount?: number; + /** Format: uuid */ + currencyId?: string; + }; + Catalog_ProductsController_BarcodeDuplicate: { + code?: string | null; + products?: components["schemas"]["Catalog_ProductsController_DuplicateProductRef"][] | null; + }; + Catalog_ProductsController_DuplicateProductRef: { + /** Format: uuid */ + productId?: string; + productName?: string | null; + article?: string | null; + }; + Catalog_ProductsController_QuickSearchItem: { + /** Format: uuid */ + id?: string; + name?: string | null; + article?: string | null; + defaultBarcode?: string | null; + /** Format: double */ + referencePrice?: number | null; + /** Format: double */ + stockQty?: number | null; + }; + Catalog_RetailPointDto: { + /** Format: uuid */ + id?: string; + name?: string | null; + code?: string | null; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + address?: string | null; + phone?: string | null; + fiscalSerial?: string | null; + fiscalRegNumber?: string | null; + isActive?: boolean; + }; + Catalog_RetailPointInput: { + name?: string | null; + code?: string | null; + /** Format: uuid */ + storeId?: string; + address?: string | null; + phone?: string | null; + fiscalSerial?: string | null; + fiscalRegNumber?: string | null; + isActive?: boolean; + }; + Catalog_StoreDto: { + /** Format: uuid */ + id?: string; + name?: string | null; + code?: string | null; + address?: string | null; + phone?: string | null; + managerName?: string | null; + isMain?: boolean; + isActive?: boolean; + }; + Catalog_StoreInput: { + name?: string | null; + code?: string | null; + address?: string | null; + phone?: string | null; + managerName?: string | null; + isMain?: boolean; + isActive?: boolean; + }; + Catalog_UnitOfMeasureDto: { + /** Format: uuid */ + id?: string; + code?: string | null; + name?: string | null; + /** Format: uuid */ + organizationId?: string | null; + isActive?: boolean; + isEnabledForOrg?: boolean; + }; + Catalog_UnitOfMeasureInput: { + code?: string | null; + name?: string | null; + }; + "Common_PagedResult`1[[Catalog_CounterpartyDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_CounterpartyDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Catalog_CountryDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_CountryDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Catalog_CurrencyDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_CurrencyDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Catalog_PriceTypeDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_PriceTypeDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Catalog_ProductDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_ProductDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Catalog_ProductGroupDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_ProductGroupDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Catalog_RetailPointDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_RetailPointDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Catalog_StoreDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_StoreDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Catalog_UnitOfMeasureDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Catalog_UnitOfMeasureDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Inventory_InventoriesController_InventoryListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Inventory_InventoriesController_InventoryListRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Inventory_LossesController_LossListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Inventory_LossesController_LossListRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Inventory_StockController_MovementRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Inventory_StockController_MovementRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Inventory_StockController_StockRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Inventory_StockController_StockRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Inventory_TransfersController_TransferListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Inventory_TransfersController_TransferListRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Organizations_EmployeeRolesController_EmployeeRoleDto, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Organizations_EmployeesController_EmployeeDto, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Organizations_EmployeesController_EmployeeDto"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Purchases_EntersController_EnterListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Purchases_EntersController_EnterListRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Purchases_SupplierReturnsController_SupplierReturnListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnListRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Purchases_SuppliesController_SupplyListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Purchases_SuppliesController_SupplyListRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[Sales_RetailSalesController_RetailSaleListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["Sales_RetailSalesController_RetailSaleListRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[SuperAdmin_SuperAdminController_AuditRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["SuperAdmin_SuperAdminController_AuditRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[SuperAdmin_SuperAdminEmployeesController_EmployeeRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["SuperAdmin_SuperAdminEmployeesController_EmployeeRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + "Common_PagedResult`1[[SuperAdmin_SuperAdminOrganizationsController_OrgRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]": { + items: components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgRow"][] | null; + /** Format: int32 */ + total: number; + /** Format: int32 */ + page: number; + /** Format: int32 */ + pageSize: number; + /** Format: int32 */ + readonly totalPages?: number; + }; + Inventory_InventoriesController_InventoryDto: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Inventory_InventoryStatus"]; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + notes?: string | null; + /** Format: date-time */ + postedAt?: string | null; + lines?: components["schemas"]["Inventory_InventoriesController_InventoryLineDto"][] | null; + }; + Inventory_InventoriesController_InventoryInput: { + /** Format: date-time */ + date?: string; + /** Format: uuid */ + storeId?: string; + notes?: string | null; + lines?: components["schemas"]["Inventory_InventoriesController_InventoryLineInput"][] | null; + }; + Inventory_InventoriesController_InventoryLineDto: { + /** Format: uuid */ + id?: string | null; + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + unitSymbol?: string | null; + /** Format: double */ + bookQty?: number; + /** Format: double */ + actualQty?: number; + /** Format: double */ + diff?: number; + /** Format: double */ + unitCost?: number; + /** Format: int32 */ + sortOrder?: number; + }; + Inventory_InventoriesController_InventoryLineInput: { + /** Format: uuid */ + productId?: string; + /** Format: double */ + actualQty?: number; + }; + Inventory_InventoriesController_InventoryListRow: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Inventory_InventoryStatus"]; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: int32 */ + lineCount?: number; + /** Format: double */ + surplusValue?: number; + /** Format: double */ + shortageValue?: number; + /** Format: date-time */ + postedAt?: string | null; + }; + /** + * Format: int32 + * @enum {integer} + */ + Inventory_InventoryStatus: 0 | 1; + /** + * Format: int32 + * @enum {integer} + */ + Inventory_LossReason: 0 | 1 | 2 | 3 | 99; + /** + * Format: int32 + * @enum {integer} + */ + Inventory_LossStatus: 0 | 1; + Inventory_LossesController_LossDto: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Inventory_LossStatus"]; + reason?: components["schemas"]["Inventory_LossReason"]; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + notes?: string | null; + /** Format: double */ + total?: number; + /** Format: date-time */ + postedAt?: string | null; + lines?: components["schemas"]["Inventory_LossesController_LossLineDto"][] | null; + }; + Inventory_LossesController_LossInput: { + /** Format: date-time */ + date?: string; + /** Format: uuid */ + storeId?: string; + /** Format: uuid */ + currencyId?: string; + reason?: components["schemas"]["Inventory_LossReason"]; + notes?: string | null; + lines?: components["schemas"]["Inventory_LossesController_LossLineInput"][] | null; + }; + Inventory_LossesController_LossLineDto: { + /** Format: uuid */ + id?: string | null; + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + unitSymbol?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitCost?: number; + /** Format: double */ + lineTotal?: number; + /** Format: int32 */ + sortOrder?: number; + /** Format: double */ + stockAtStore?: number | null; + }; + Inventory_LossesController_LossLineInput: { + /** Format: uuid */ + productId?: string; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitCost?: number; + }; + Inventory_LossesController_LossListRow: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Inventory_LossStatus"]; + reason?: components["schemas"]["Inventory_LossReason"]; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + /** Format: double */ + total?: number; + /** Format: int32 */ + lineCount?: number; + /** Format: date-time */ + postedAt?: string | null; + }; + Inventory_StockController_MovementRow: { + /** Format: uuid */ + id?: string; + /** Format: date-time */ + occurredAt?: string; + /** Format: uuid */ + productId?: string; + productName?: string | null; + article?: string | null; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitCost?: number | null; + type?: string | null; + documentType?: string | null; + /** Format: uuid */ + documentId?: string | null; + documentNumber?: string | null; + notes?: string | null; + }; + Inventory_StockController_StockRow: { + /** Format: uuid */ + productId?: string; + productName?: string | null; + article?: string | null; + unitSymbol?: string | null; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + reservedQuantity?: number; + /** Format: double */ + available?: number; + }; + /** + * Format: int32 + * @enum {integer} + */ + Inventory_TransferStatus: 0 | 1; + Inventory_TransfersController_TransferDto: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Inventory_TransferStatus"]; + /** Format: uuid */ + fromStoreId?: string; + fromStoreName?: string | null; + /** Format: uuid */ + toStoreId?: string; + toStoreName?: string | null; + notes?: string | null; + /** Format: double */ + total?: number; + /** Format: date-time */ + postedAt?: string | null; + lines?: components["schemas"]["Inventory_TransfersController_TransferLineDto"][] | null; + }; + Inventory_TransfersController_TransferInput: { + /** Format: date-time */ + date?: string; + /** Format: uuid */ + fromStoreId?: string; + /** Format: uuid */ + toStoreId?: string; + notes?: string | null; + lines?: components["schemas"]["Inventory_TransfersController_TransferLineInput"][] | null; + }; + Inventory_TransfersController_TransferLineDto: { + /** Format: uuid */ + id?: string | null; + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + unitSymbol?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitCost?: number; + /** Format: double */ + lineTotal?: number; + /** Format: int32 */ + sortOrder?: number; + /** Format: double */ + stockAtFrom?: number | null; + }; + Inventory_TransfersController_TransferLineInput: { + /** Format: uuid */ + productId?: string; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitCost?: number; + }; + Inventory_TransfersController_TransferListRow: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Inventory_TransferStatus"]; + /** Format: uuid */ + fromStoreId?: string; + fromStoreName?: string | null; + /** Format: uuid */ + toStoreId?: string; + toStoreName?: string | null; + /** Format: double */ + total?: number; + /** Format: int32 */ + lineCount?: number; + /** Format: date-time */ + postedAt?: string | null; + }; + Organizations_EmployeeRolesController_EmployeeRoleDto: { + /** Format: uuid */ + id?: string; + name?: string | null; + description?: string | null; + isSystem?: boolean; + /** Format: int32 */ + sortOrder?: number; + permissions?: components["schemas"]["Organizations_RolePermissions"]; + }; + Organizations_EmployeeRolesController_EmployeeRoleInput: { + name?: string | null; + description?: string | null; + permissions?: components["schemas"]["Organizations_RolePermissions"]; + }; + Organizations_EmployeesController_EmployeeCreateResult: { + employee?: components["schemas"]["Organizations_EmployeesController_EmployeeDto"]; + generatedPassword?: string | null; + }; + Organizations_EmployeesController_EmployeeDto: { + /** Format: uuid */ + id?: string; + /** Format: uuid */ + userId?: string | null; + lastName?: string | null; + firstName?: string | null; + middleName?: string | null; + position?: string | null; + email?: string | null; + phone?: string | null; + /** Format: double */ + salary?: number | null; + taxNumber?: string | null; + description?: string | null; + imageUrl?: string | null; + /** Format: uuid */ + roleId?: string; + roleName?: string | null; + isActive?: boolean; + /** Format: date-time */ + firedAt?: string | null; + isDeleted?: boolean; + /** Format: date-time */ + deletedAt?: string | null; + status?: string | null; + retailPointIds?: string[] | null; + isOwner?: boolean; + isSelf?: boolean; + }; + Organizations_EmployeesController_EmployeeInput: { + lastName?: string | null; + firstName?: string | null; + middleName?: string | null; + position?: string | null; + email?: string | null; + phone?: string | null; + /** Format: double */ + salary?: number | null; + taxNumber?: string | null; + description?: string | null; + imageUrl?: string | null; + /** Format: uuid */ + roleId?: string; + isActive?: boolean; + retailPointIds?: string[] | null; + createAccount?: boolean; + }; + Organizations_OrganizationSettingsController_OrgSettingsDto: { + /** Format: uuid */ + id?: string; + name?: string | null; + countryCode?: string | null; + /** Format: uuid */ + defaultCurrencyId?: string | null; + defaultCurrencyCode?: string | null; + defaultCurrencySymbol?: string | null; + multiCurrencyEnabled?: boolean; + /** Format: double */ + vatRate?: number; + showVatEnabledOnProduct?: boolean; + showServiceOnProduct?: boolean; + showMarkedOnProduct?: boolean; + showMinMaxStock?: boolean; + allowFractionalPrices?: boolean; + showReferencePriceOnProduct?: boolean; + showCountryOfOriginOnProduct?: boolean; + showDescriptionOnProduct?: boolean; + }; + Organizations_OrganizationSettingsController_OrgSettingsInput: { + name?: string | null; + countryCode?: string | null; + multiCurrencyEnabled?: boolean; + showVatEnabledOnProduct?: boolean; + showServiceOnProduct?: boolean; + showMarkedOnProduct?: boolean; + showMinMaxStock?: boolean; + allowFractionalPrices?: boolean; + showReferencePriceOnProduct?: boolean; + showCountryOfOriginOnProduct?: boolean; + showDescriptionOnProduct?: boolean; + }; + Organizations_RolePermissions: { + productsView?: boolean; + productsEdit?: boolean; + productsDelete?: boolean; + productGroupsManage?: boolean; + priceTypesManage?: boolean; + unitsManage?: boolean; + suppliesView?: boolean; + suppliesEdit?: boolean; + suppliesPost?: boolean; + suppliesDelete?: boolean; + demandsView?: boolean; + demandsEdit?: boolean; + demandsPost?: boolean; + retailSalesOperate?: boolean; + retailSalesRefund?: boolean; + counterpartiesView?: boolean; + counterpartiesEdit?: boolean; + counterpartiesDelete?: boolean; + stocksView?: boolean; + inventoryEdit?: boolean; + lossEdit?: boolean; + enterEdit?: boolean; + transferEdit?: boolean; + reportsView?: boolean; + reportsFinanceView?: boolean; + reportsStockView?: boolean; + orgSettingsManage?: boolean; + employeesManage?: boolean; + rolesManage?: boolean; + storesManage?: boolean; + retailPointsManage?: boolean; + cashRegistersManage?: boolean; + integrationsManage?: boolean; + }; + /** + * Format: int32 + * @enum {integer} + */ + Purchases_EnterStatus: 0 | 1; + Purchases_EntersController_EnterDto: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Purchases_EnterStatus"]; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + notes?: string | null; + /** Format: double */ + total?: number; + /** Format: date-time */ + postedAt?: string | null; + lines?: components["schemas"]["Purchases_EntersController_EnterLineDto"][] | null; + }; + Purchases_EntersController_EnterInput: { + /** Format: date-time */ + date?: string; + /** Format: uuid */ + storeId?: string; + /** Format: uuid */ + currencyId?: string; + notes?: string | null; + lines?: components["schemas"]["Purchases_EntersController_EnterLineInput"][] | null; + }; + Purchases_EntersController_EnterLineDto: { + /** Format: uuid */ + id?: string | null; + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + unitSymbol?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitCost?: number; + /** Format: double */ + lineTotal?: number; + /** Format: int32 */ + sortOrder?: number; + }; + Purchases_EntersController_EnterLineInput: { + /** Format: uuid */ + productId?: string; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitCost?: number; + }; + Purchases_EntersController_EnterListRow: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Purchases_EnterStatus"]; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + /** Format: double */ + total?: number; + /** Format: int32 */ + lineCount?: number; + /** Format: date-time */ + postedAt?: string | null; + }; + /** + * Format: int32 + * @enum {integer} + */ + Purchases_SupplierReturnStatus: 0 | 1; + Purchases_SupplierReturnsController_SupplierReturnDto: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Purchases_SupplierReturnStatus"]; + /** Format: uuid */ + supplierId?: string; + supplierName?: string | null; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + /** Format: uuid */ + referenceSupplyId?: string | null; + referenceSupplyNumber?: string | null; + notes?: string | null; + /** Format: double */ + total?: number; + /** Format: date-time */ + postedAt?: string | null; + lines?: components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnLineDto"][] | null; + }; + Purchases_SupplierReturnsController_SupplierReturnInput: { + /** Format: date-time */ + date?: string; + /** Format: uuid */ + supplierId?: string; + /** Format: uuid */ + storeId?: string; + /** Format: uuid */ + currencyId?: string; + /** Format: uuid */ + referenceSupplyId?: string | null; + notes?: string | null; + lines?: components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnLineInput"][] | null; + }; + Purchases_SupplierReturnsController_SupplierReturnLineDto: { + /** Format: uuid */ + id?: string | null; + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + unitSymbol?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitPrice?: number; + /** Format: double */ + lineTotal?: number; + /** Format: int32 */ + sortOrder?: number; + /** Format: double */ + stockAtStore?: number | null; + }; + Purchases_SupplierReturnsController_SupplierReturnLineInput: { + /** Format: uuid */ + productId?: string; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitPrice?: number; + }; + Purchases_SupplierReturnsController_SupplierReturnListRow: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Purchases_SupplierReturnStatus"]; + /** Format: uuid */ + supplierId?: string; + supplierName?: string | null; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + /** Format: double */ + total?: number; + /** Format: int32 */ + lineCount?: number; + /** Format: date-time */ + postedAt?: string | null; + /** Format: uuid */ + referenceSupplyId?: string | null; + referenceSupplyNumber?: string | null; + }; + Purchases_SuppliesController_SupplyDto: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Purchases_SupplyStatus"]; + /** Format: uuid */ + supplierId?: string; + supplierName?: string | null; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + notes?: string | null; + /** Format: double */ + total?: number; + /** Format: date-time */ + postedAt?: string | null; + lines?: components["schemas"]["Purchases_SuppliesController_SupplyLineDto"][] | null; + }; + Purchases_SuppliesController_SupplyInput: { + /** Format: date-time */ + date?: string; + /** Format: uuid */ + supplierId?: string; + /** Format: uuid */ + storeId?: string; + /** Format: uuid */ + currencyId?: string; + notes?: string | null; + lines?: components["schemas"]["Purchases_SuppliesController_SupplyLineInput"][] | null; + }; + Purchases_SuppliesController_SupplyLineDto: { + /** Format: uuid */ + id?: string | null; + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + productBarcode?: string | null; + unitSymbol?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitPrice?: number; + /** Format: double */ + lineTotal?: number; + /** Format: int32 */ + sortOrder?: number; + retailPriceManuallyOverridden?: boolean; + /** Format: double */ + retailPriceOverride?: number | null; + /** Format: double */ + currentRetailPrice?: number | null; + }; + Purchases_SuppliesController_SupplyLineInput: { + /** Format: uuid */ + productId?: string; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitPrice?: number; + retailPriceManuallyOverridden?: boolean; + /** Format: double */ + retailPriceOverride?: number | null; + }; + Purchases_SuppliesController_SupplyListRow: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Purchases_SupplyStatus"]; + /** Format: uuid */ + supplierId?: string; + supplierName?: string | null; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + /** Format: double */ + total?: number; + /** Format: int32 */ + lineCount?: number; + /** Format: date-time */ + postedAt?: string | null; + }; + /** + * Format: int32 + * @enum {integer} + */ + Purchases_SupplyStatus: 0 | 1; + Reports_AbcReportController_AbcRow: { + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + /** Format: double */ + metricValue?: number; + /** Format: double */ + share?: number; + /** Format: double */ + cumulativeShare?: number; + abcClass?: string | null; + /** Format: int32 */ + rank?: number; + }; + Reports_ProfitReportController_ProfitRow: { + key?: string | null; + label?: string | null; + /** Format: double */ + revenue?: number; + /** Format: double */ + cost?: number; + /** Format: double */ + profit?: number; + /** Format: double */ + marginPercent?: number; + /** Format: double */ + quantity?: number; + }; + Reports_SalesReportController_SalesRow: { + key?: string | null; + label?: string | null; + /** Format: double */ + revenue?: number; + /** Format: double */ + discount?: number; + /** Format: int32 */ + transactions?: number; + /** Format: double */ + quantity?: number; + }; + Reports_StockReportController_StockRow: { + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + unitName?: string | null; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + cost?: number; + /** Format: double */ + value?: number; + }; + /** + * Format: int32 + * @enum {integer} + */ + Sales_PaymentMethod: 0 | 1 | 2 | 3 | 99; + /** + * Format: int32 + * @enum {integer} + */ + Sales_RetailSaleStatus: 0 | 1; + Sales_RetailSalesController_RetailSaleDto: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Sales_RetailSaleStatus"]; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + retailPointId?: string | null; + retailPointName?: string | null; + /** Format: uuid */ + customerId?: string | null; + customerName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + /** Format: double */ + subtotal?: number; + /** Format: double */ + discountTotal?: number; + /** Format: double */ + total?: number; + payment?: components["schemas"]["Sales_PaymentMethod"]; + /** Format: double */ + paidCash?: number; + /** Format: double */ + paidCard?: number; + notes?: string | null; + /** Format: date-time */ + postedAt?: string | null; + isReturn?: boolean; + /** Format: uuid */ + referenceSaleId?: string | null; + referenceSaleNumber?: string | null; + lines?: components["schemas"]["Sales_RetailSalesController_RetailSaleLineDto"][] | null; + }; + Sales_RetailSalesController_RetailSaleInput: { + /** Format: date-time */ + date?: string; + /** Format: uuid */ + storeId?: string; + /** Format: uuid */ + retailPointId?: string | null; + /** Format: uuid */ + customerId?: string | null; + /** Format: uuid */ + currencyId?: string; + payment?: components["schemas"]["Sales_PaymentMethod"]; + /** Format: double */ + paidCash?: number; + /** Format: double */ + paidCard?: number; + notes?: string | null; + lines?: components["schemas"]["Sales_RetailSalesController_RetailSaleLineInput"][] | null; + isReturn?: boolean; + /** Format: uuid */ + referenceSaleId?: string | null; + }; + Sales_RetailSalesController_RetailSaleLineDto: { + /** Format: uuid */ + id?: string | null; + /** Format: uuid */ + productId?: string; + productName?: string | null; + productArticle?: string | null; + unitSymbol?: string | null; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitPrice?: number; + /** Format: double */ + discount?: number; + /** Format: double */ + lineTotal?: number; + /** Format: double */ + vatPercent?: number; + /** Format: int32 */ + sortOrder?: number; + /** Format: double */ + qtyReturned?: number; + }; + Sales_RetailSalesController_RetailSaleLineInput: { + /** Format: uuid */ + productId?: string; + /** Format: double */ + quantity?: number; + /** Format: double */ + unitPrice?: number; + /** Format: double */ + discount?: number; + /** Format: double */ + vatPercent?: number; + }; + Sales_RetailSalesController_RetailSaleListRow: { + /** Format: uuid */ + id?: string; + number?: string | null; + /** Format: date-time */ + date?: string; + status?: components["schemas"]["Sales_RetailSaleStatus"]; + /** Format: uuid */ + storeId?: string; + storeName?: string | null; + /** Format: uuid */ + retailPointId?: string | null; + retailPointName?: string | null; + /** Format: uuid */ + customerId?: string | null; + customerName?: string | null; + /** Format: uuid */ + currencyId?: string; + currencyCode?: string | null; + /** Format: double */ + total?: number; + payment?: components["schemas"]["Sales_PaymentMethod"]; + /** Format: int32 */ + lineCount?: number; + /** Format: date-time */ + postedAt?: string | null; + isReturn?: boolean; + /** Format: uuid */ + referenceSaleId?: string | null; + referenceSaleNumber?: string | null; + }; + Sales_RetailSalesController_SalesStatsBucket: { + /** Format: date-time */ + bucket?: string; + /** Format: double */ + revenue?: number; + /** Format: int32 */ + transactions?: number; + }; + Sales_RetailSalesController_SalesStatsResponse: { + /** Format: double */ + revenueToday?: number; + /** Format: double */ + revenueThisMonth?: number; + /** Format: double */ + revenuePrevMonth?: number; + /** Format: int32 */ + transactionsToday?: number; + /** Format: int32 */ + transactionsThisMonth?: number; + /** Format: double */ + avgTicketThisMonth?: number; + series?: components["schemas"]["Sales_RetailSalesController_SalesStatsBucket"][] | null; + }; + SuperAdmin_PlatformSettingsController_PlatformSettingsDto: { + smtpHost?: string | null; + /** Format: int32 */ + smtpPort?: number | null; + smtpUseSsl?: boolean; + smtpStartTls?: boolean; + smtpUsername?: string | null; + hasSmtpPassword?: boolean; + fromEmail?: string | null; + fromName?: string | null; + /** Format: date-time */ + updatedAt?: string | null; + }; + SuperAdmin_PlatformSettingsController_PlatformSettingsInput: { + reason?: string | null; + smtpHost?: string | null; + /** Format: int32 */ + smtpPort?: number | null; + smtpUseSsl?: boolean; + smtpStartTls?: boolean; + smtpUsername?: string | null; + newSmtpPassword?: string | null; + fromEmail?: string | null; + fromName?: string | null; + }; + SuperAdmin_PlatformSettingsController_TestSendInput: { + toEmail?: string | null; + subject?: string | null; + body?: string | null; + }; + SuperAdmin_SuperAdminController_AuditRow: { + /** Format: uuid */ + id?: string; + /** Format: date-time */ + createdAt?: string; + /** Format: uuid */ + superAdminUserId?: string; + actionType?: string | null; + /** Format: uuid */ + organizationId?: string | null; + organizationName?: string | null; + entityType?: string | null; + /** Format: uuid */ + entityId?: string | null; + description?: string | null; + reason?: string | null; + ipAddress?: string | null; + }; + SuperAdmin_SuperAdminController_DashboardStats: { + /** Format: int32 */ + totalOrgs?: number; + /** Format: int32 */ + activeOrgs?: number; + /** Format: int32 */ + archivedOrgs?: number; + /** Format: int32 */ + totalUsers?: number; + /** Format: int32 */ + activeUsers?: number; + /** Format: int32 */ + registrationsLast30Days?: number; + }; + SuperAdmin_SuperAdminController_SetupStatusDto: { + needsSetup?: boolean; + /** Format: int32 */ + orgCount?: number; + }; + SuperAdmin_SuperAdminController_SystemSettingsDto: { + /** Format: int32 */ + archiveRetentionDays?: number; + }; + SuperAdmin_SuperAdminController_SystemSettingsInput: { + /** Format: int32 */ + archiveRetentionDays?: number; + }; + SuperAdmin_SuperAdminEmployeesController_CreateInput: { + reason?: string | null; + lastName?: string | null; + firstName?: string | null; + middleName?: string | null; + position?: string | null; + email?: string | null; + phone?: string | null; + /** Format: uuid */ + roleId?: string; + isActive?: boolean; + retailPointIds?: string[] | null; + createAccount?: boolean; + accountEmail?: string | null; + }; + SuperAdmin_SuperAdminEmployeesController_EmployeeDetail: { + /** Format: uuid */ + id?: string; + /** Format: uuid */ + organizationId?: string; + /** Format: uuid */ + userId?: string | null; + lastName?: string | null; + firstName?: string | null; + middleName?: string | null; + position?: string | null; + email?: string | null; + phone?: string | null; + /** Format: double */ + salary?: number | null; + taxNumber?: string | null; + description?: string | null; + imageUrl?: string | null; + /** Format: uuid */ + roleId?: string; + roleName?: string | null; + isActive?: boolean; + /** Format: date-time */ + firedAt?: string | null; + retailPointIds?: string[] | null; + isOwner?: boolean; + hasAccount?: boolean; + accountActive?: boolean; + accountEmail?: string | null; + }; + SuperAdmin_SuperAdminEmployeesController_EmployeeInput: { + lastName?: string | null; + firstName?: string | null; + middleName?: string | null; + position?: string | null; + email?: string | null; + phone?: string | null; + /** Format: double */ + salary?: number | null; + taxNumber?: string | null; + description?: string | null; + imageUrl?: string | null; + /** Format: uuid */ + roleId?: string; + isActive?: boolean; + retailPointIds?: string[] | null; + }; + SuperAdmin_SuperAdminEmployeesController_EmployeeRow: { + /** Format: uuid */ + id?: string; + /** Format: uuid */ + userId?: string | null; + lastName?: string | null; + firstName?: string | null; + middleName?: string | null; + position?: string | null; + email?: string | null; + phone?: string | null; + /** Format: uuid */ + roleId?: string; + roleName?: string | null; + isRoleSystem?: boolean; + isActive?: boolean; + /** Format: date-time */ + firedAt?: string | null; + hasAccount?: boolean; + accountActive?: boolean; + /** Format: date-time */ + lastLoginAt?: string | null; + isOwner?: boolean; + }; + SuperAdmin_SuperAdminEmployeesController_ResetPasswordInput: { + reason?: string | null; + }; + SuperAdmin_SuperAdminEmployeesController_ResetPasswordResult: { + email?: string | null; + tempPassword?: string | null; + }; + SuperAdmin_SuperAdminEmployeesController_ToggleAccountActiveInput: { + reason?: string | null; + isActive?: boolean; + }; + SuperAdmin_SuperAdminEmployeesController_ToggleActiveInput: { + reason?: string | null; + isActive?: boolean; + }; + SuperAdmin_SuperAdminEmployeesController_UpdateInput: { + reason?: string | null; + employee?: components["schemas"]["SuperAdmin_SuperAdminEmployeesController_EmployeeInput"]; + }; + SuperAdmin_SuperAdminOrganizationsController_ArchiveRequest: { + confirmationName?: string | null; + }; + SuperAdmin_SuperAdminOrganizationsController_ChangeOwnerRequest: { + /** Format: uuid */ + newOwnerUserId?: string; + reason?: string | null; + }; + SuperAdmin_SuperAdminOrganizationsController_CreateOrgRequest: { + org?: components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgInput"]; + adminLastName?: string | null; + adminFirstName?: string | null; + adminEmail?: string | null; + adminPosition?: string | null; + }; + SuperAdmin_SuperAdminOrganizationsController_CreateOrgResult: { + organization?: components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgDetail"]; + adminEmail?: string | null; + adminTempPassword?: string | null; + }; + SuperAdmin_SuperAdminOrganizationsController_DeleteRequest: { + confirmationName?: string | null; + }; + SuperAdmin_SuperAdminOrganizationsController_OrgDetail: { + /** Format: uuid */ + id?: string; + name?: string | null; + countryCode?: string | null; + bin?: string | null; + address?: string | null; + phone?: string | null; + email?: string | null; + /** Format: uuid */ + defaultCurrencyId?: string | null; + defaultCurrencyCode?: string | null; + isActive?: boolean; + isArchived?: boolean; + /** Format: date-time */ + archivedAt?: string | null; + /** Format: uuid */ + accountOwnerUserId?: string | null; + accountOwnerName?: string | null; + accountOwnerEmail?: string | null; + /** Format: date-time */ + createdAt?: string; + /** Format: date-time */ + updatedAt?: string | null; + /** Format: int32 */ + employeeCount?: number; + /** Format: int32 */ + productCount?: number; + /** Format: int32 */ + counterpartyCount?: number; + /** Format: int32 */ + supplyCountThisMonth?: number; + }; + SuperAdmin_SuperAdminOrganizationsController_OrgInput: { + name?: string | null; + countryCode?: string | null; + bin?: string | null; + address?: string | null; + phone?: string | null; + email?: string | null; + /** Format: uuid */ + defaultCurrencyId?: string | null; + /** Format: uuid */ + accountOwnerUserId?: string | null; + }; + SuperAdmin_SuperAdminOrganizationsController_OrgRow: { + /** Format: uuid */ + id?: string; + name?: string | null; + countryCode?: string | null; + isActive?: boolean; + isArchived?: boolean; + /** Format: date-time */ + archivedAt?: string | null; + /** Format: date-time */ + createdAt?: string; + /** Format: int32 */ + employeeCount?: number; + /** Format: int32 */ + productCount?: number; + /** Format: date-time */ + lastLoginAt?: string | null; + }; + }; + responses: never; + parameters: never; + requestBodies: never; + headers: never; + pathItems: never; +} +export type $defs = Record; +export interface operations { + AbcReport_GetGet: { + parameters: { + query?: { + from?: string; + to?: string; + metric?: string; + storeId?: string; + productGroupId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Reports_AbcReportController_AbcRow"][]; + "application/json": components["schemas"]["Reports_AbcReportController_AbcRow"][]; + "text/json": components["schemas"]["Reports_AbcReportController_AbcRow"][]; + }; + }; + }; + }; + AbcReport_GetExport: { + parameters: { + query?: { + from?: string; + to?: string; + metric?: string; + storeId?: string; + productGroupId?: string; + format?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + AdminCleanup_GetGetStats: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Admin_AdminCleanupController_CleanupStats"]; + "application/json": components["schemas"]["Admin_AdminCleanupController_CleanupStats"]; + "text/json": components["schemas"]["Admin_AdminCleanupController_CleanupStats"]; + }; + }; + }; + }; + AdminCleanup_DeleteWipeCounterparties: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Admin_AdminCleanupController_CleanupResult"]; + "application/json": components["schemas"]["Admin_AdminCleanupController_CleanupResult"]; + "text/json": components["schemas"]["Admin_AdminCleanupController_CleanupResult"]; + }; + }; + }; + }; + AdminCleanup_PostWipeAll: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + AdminCleanup_DeleteWipeAll: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Admin_AdminCleanupController_CleanupResult"]; + "application/json": components["schemas"]["Admin_AdminCleanupController_CleanupResult"]; + "text/json": components["schemas"]["Admin_AdminCleanupController_CleanupResult"]; + }; + }; + }; + }; + AdminJobs_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Admin_AdminJobsController_JobView"]; + "application/json": components["schemas"]["Admin_AdminJobsController_JobView"]; + "text/json": components["schemas"]["Admin_AdminJobsController_JobView"]; + }; + }; + }; + }; + AdminJobs_GetRecent: { + parameters: { + query?: { + take?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Admin_AdminJobsController_JobView"][]; + "application/json": components["schemas"]["Admin_AdminJobsController_JobView"][]; + "text/json": components["schemas"]["Admin_AdminJobsController_JobView"][]; + }; + }; + }; + }; + AuthForgotPassword_PostForgot: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["AuthForgotPasswordController_ForgotInput"]; + "text/json": components["schemas"]["AuthForgotPasswordController_ForgotInput"]; + "application/*+json": components["schemas"]["AuthForgotPasswordController_ForgotInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + AuthForgotPassword_PostReset: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["AuthForgotPasswordController_ResetInput"]; + "text/json": components["schemas"]["AuthForgotPasswordController_ResetInput"]; + "application/*+json": components["schemas"]["AuthForgotPasswordController_ResetInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Authorization_PostExchange: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + AuthSignup_PostSignup: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["AuthSignupController_SignupInput"]; + "text/json": components["schemas"]["AuthSignupController_SignupInput"]; + "application/*+json": components["schemas"]["AuthSignupController_SignupInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["AuthSignupController_SignupResult"]; + "application/json": components["schemas"]["AuthSignupController_SignupResult"]; + "text/json": components["schemas"]["AuthSignupController_SignupResult"]; + }; + }; + }; + }; + Counterparties_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_CounterpartyDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_CounterpartyDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_CounterpartyDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Counterparties_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_CounterpartyInput"]; + "text/json": components["schemas"]["Catalog_CounterpartyInput"]; + "application/*+json": components["schemas"]["Catalog_CounterpartyInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_CounterpartyDto"]; + "application/json": components["schemas"]["Catalog_CounterpartyDto"]; + "text/json": components["schemas"]["Catalog_CounterpartyDto"]; + }; + }; + }; + }; + Counterparties_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_CounterpartyDto"]; + "application/json": components["schemas"]["Catalog_CounterpartyDto"]; + "text/json": components["schemas"]["Catalog_CounterpartyDto"]; + }; + }; + }; + }; + Counterparties_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_CounterpartyInput"]; + "text/json": components["schemas"]["Catalog_CounterpartyInput"]; + "application/*+json": components["schemas"]["Catalog_CounterpartyInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Counterparties_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Countries_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_CountryDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_CountryDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_CountryDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Countries_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_CountryInput"]; + "text/json": components["schemas"]["Catalog_CountryInput"]; + "application/*+json": components["schemas"]["Catalog_CountryInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_CountryDto"]; + "application/json": components["schemas"]["Catalog_CountryDto"]; + "text/json": components["schemas"]["Catalog_CountryDto"]; + }; + }; + }; + }; + Countries_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_CountryDto"]; + "application/json": components["schemas"]["Catalog_CountryDto"]; + "text/json": components["schemas"]["Catalog_CountryDto"]; + }; + }; + }; + }; + Countries_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_CountryInput"]; + "text/json": components["schemas"]["Catalog_CountryInput"]; + "application/*+json": components["schemas"]["Catalog_CountryInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Countries_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Currencies_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_CurrencyDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_CurrencyDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_CurrencyDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Currencies_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_CurrencyInput"]; + "text/json": components["schemas"]["Catalog_CurrencyInput"]; + "application/*+json": components["schemas"]["Catalog_CurrencyInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_CurrencyDto"]; + "application/json": components["schemas"]["Catalog_CurrencyDto"]; + "text/json": components["schemas"]["Catalog_CurrencyDto"]; + }; + }; + }; + }; + Currencies_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_CurrencyDto"]; + "application/json": components["schemas"]["Catalog_CurrencyDto"]; + "text/json": components["schemas"]["Catalog_CurrencyDto"]; + }; + }; + }; + }; + Currencies_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_CurrencyInput"]; + "text/json": components["schemas"]["Catalog_CurrencyInput"]; + "application/*+json": components["schemas"]["Catalog_CurrencyInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + EmployeeRoles_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Organizations_EmployeeRolesController_EmployeeRoleDto, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Organizations_EmployeeRolesController_EmployeeRoleDto, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Organizations_EmployeeRolesController_EmployeeRoleDto, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + EmployeeRoles_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleInput"]; + "text/json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleInput"]; + "application/*+json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleDto"]; + "application/json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleDto"]; + "text/json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleDto"]; + }; + }; + }; + }; + EmployeeRoles_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleDto"]; + "application/json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleDto"]; + "text/json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleDto"]; + }; + }; + }; + }; + EmployeeRoles_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleInput"]; + "text/json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleInput"]; + "application/*+json": components["schemas"]["Organizations_EmployeeRolesController_EmployeeRoleInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + EmployeeRoles_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Employees_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + status?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Organizations_EmployeesController_EmployeeDto, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Organizations_EmployeesController_EmployeeDto, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Organizations_EmployeesController_EmployeeDto, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Employees_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Organizations_EmployeesController_EmployeeInput"]; + "text/json": components["schemas"]["Organizations_EmployeesController_EmployeeInput"]; + "application/*+json": components["schemas"]["Organizations_EmployeesController_EmployeeInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Organizations_EmployeesController_EmployeeCreateResult"]; + "application/json": components["schemas"]["Organizations_EmployeesController_EmployeeCreateResult"]; + "text/json": components["schemas"]["Organizations_EmployeesController_EmployeeCreateResult"]; + }; + }; + }; + }; + Employees_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Organizations_EmployeesController_EmployeeDto"]; + "application/json": components["schemas"]["Organizations_EmployeesController_EmployeeDto"]; + "text/json": components["schemas"]["Organizations_EmployeesController_EmployeeDto"]; + }; + }; + }; + }; + Employees_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Organizations_EmployeesController_EmployeeInput"]; + "text/json": components["schemas"]["Organizations_EmployeesController_EmployeeInput"]; + "application/*+json": components["schemas"]["Organizations_EmployeesController_EmployeeInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Employees_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Enters_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + status?: components["schemas"]["Purchases_EnterStatus"]; + storeId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Purchases_EntersController_EnterListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Purchases_EntersController_EnterListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Purchases_EntersController_EnterListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Enters_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Purchases_EntersController_EnterInput"]; + "text/json": components["schemas"]["Purchases_EntersController_EnterInput"]; + "application/*+json": components["schemas"]["Purchases_EntersController_EnterInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Purchases_EntersController_EnterDto"]; + "application/json": components["schemas"]["Purchases_EntersController_EnterDto"]; + "text/json": components["schemas"]["Purchases_EntersController_EnterDto"]; + }; + }; + }; + }; + Enters_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Purchases_EntersController_EnterDto"]; + "application/json": components["schemas"]["Purchases_EntersController_EnterDto"]; + "text/json": components["schemas"]["Purchases_EntersController_EnterDto"]; + }; + }; + }; + }; + Enters_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Purchases_EntersController_EnterInput"]; + "text/json": components["schemas"]["Purchases_EntersController_EnterInput"]; + "application/*+json": components["schemas"]["Purchases_EntersController_EnterInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Enters_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Enters_PostPost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Enters_PostUnpost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Inventories_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + status?: components["schemas"]["Inventory_InventoryStatus"]; + storeId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Inventory_InventoriesController_InventoryListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Inventory_InventoriesController_InventoryListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Inventory_InventoriesController_InventoryListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Inventories_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Inventory_InventoriesController_InventoryInput"]; + "text/json": components["schemas"]["Inventory_InventoriesController_InventoryInput"]; + "application/*+json": components["schemas"]["Inventory_InventoriesController_InventoryInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Inventory_InventoriesController_InventoryDto"]; + "application/json": components["schemas"]["Inventory_InventoriesController_InventoryDto"]; + "text/json": components["schemas"]["Inventory_InventoriesController_InventoryDto"]; + }; + }; + }; + }; + Inventories_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Inventory_InventoriesController_InventoryDto"]; + "application/json": components["schemas"]["Inventory_InventoriesController_InventoryDto"]; + "text/json": components["schemas"]["Inventory_InventoriesController_InventoryDto"]; + }; + }; + }; + }; + Inventories_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Inventory_InventoriesController_InventoryInput"]; + "text/json": components["schemas"]["Inventory_InventoriesController_InventoryInput"]; + "application/*+json": components["schemas"]["Inventory_InventoriesController_InventoryInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Inventories_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Inventories_PostPost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Inventories_PostUnpost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Losses_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + status?: components["schemas"]["Inventory_LossStatus"]; + reason?: components["schemas"]["Inventory_LossReason"]; + storeId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Inventory_LossesController_LossListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Inventory_LossesController_LossListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Inventory_LossesController_LossListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Losses_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Inventory_LossesController_LossInput"]; + "text/json": components["schemas"]["Inventory_LossesController_LossInput"]; + "application/*+json": components["schemas"]["Inventory_LossesController_LossInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Inventory_LossesController_LossDto"]; + "application/json": components["schemas"]["Inventory_LossesController_LossDto"]; + "text/json": components["schemas"]["Inventory_LossesController_LossDto"]; + }; + }; + }; + }; + Losses_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Inventory_LossesController_LossDto"]; + "application/json": components["schemas"]["Inventory_LossesController_LossDto"]; + "text/json": components["schemas"]["Inventory_LossesController_LossDto"]; + }; + }; + }; + }; + Losses_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Inventory_LossesController_LossInput"]; + "text/json": components["schemas"]["Inventory_LossesController_LossInput"]; + "application/*+json": components["schemas"]["Inventory_LossesController_LossInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Losses_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Losses_PostPost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Losses_PostUnpost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + MoySkladImport_GetGetSettings: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Admin_MoySkladImportController_SettingsDto"]; + "application/json": components["schemas"]["Admin_MoySkladImportController_SettingsDto"]; + "text/json": components["schemas"]["Admin_MoySkladImportController_SettingsDto"]; + }; + }; + }; + }; + MoySkladImport_PutSetSettings: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Admin_MoySkladImportController_SettingsInput"]; + "text/json": components["schemas"]["Admin_MoySkladImportController_SettingsInput"]; + "application/*+json": components["schemas"]["Admin_MoySkladImportController_SettingsInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Admin_MoySkladImportController_SettingsDto"]; + "application/json": components["schemas"]["Admin_MoySkladImportController_SettingsDto"]; + "text/json": components["schemas"]["Admin_MoySkladImportController_SettingsDto"]; + }; + }; + }; + }; + MoySkladImport_PostTestConnection: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Admin_MoySkladImportController_TestRequest"]; + "text/json": components["schemas"]["Admin_MoySkladImportController_TestRequest"]; + "application/*+json": components["schemas"]["Admin_MoySkladImportController_TestRequest"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + MoySkladImport_PostImportProducts: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Admin_MoySkladImportController_ImportRequest"]; + "text/json": components["schemas"]["Admin_MoySkladImportController_ImportRequest"]; + "application/*+json": components["schemas"]["Admin_MoySkladImportController_ImportRequest"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + MoySkladImport_PostImportCounterparties: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Admin_MoySkladImportController_ImportRequest"]; + "text/json": components["schemas"]["Admin_MoySkladImportController_ImportRequest"]; + "application/*+json": components["schemas"]["Admin_MoySkladImportController_ImportRequest"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + OrganizationSettings_GetGet: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsDto"]; + "application/json": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsDto"]; + "text/json": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsDto"]; + }; + }; + }; + }; + OrganizationSettings_PutUpdate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsInput"]; + "text/json": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsInput"]; + "application/*+json": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsDto"]; + "application/json": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsDto"]; + "text/json": components["schemas"]["Organizations_OrganizationSettingsController_OrgSettingsDto"]; + }; + }; + }; + }; + PlatformSettings_GetGet: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_PlatformSettingsController_PlatformSettingsDto"]; + "application/json": components["schemas"]["SuperAdmin_PlatformSettingsController_PlatformSettingsDto"]; + "text/json": components["schemas"]["SuperAdmin_PlatformSettingsController_PlatformSettingsDto"]; + }; + }; + }; + }; + PlatformSettings_PutUpdate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_PlatformSettingsController_PlatformSettingsInput"]; + "text/json": components["schemas"]["SuperAdmin_PlatformSettingsController_PlatformSettingsInput"]; + "application/*+json": components["schemas"]["SuperAdmin_PlatformSettingsController_PlatformSettingsInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + PlatformSettings_PostTestSend: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_PlatformSettingsController_TestSendInput"]; + "text/json": components["schemas"]["SuperAdmin_PlatformSettingsController_TestSendInput"]; + "application/*+json": components["schemas"]["SuperAdmin_PlatformSettingsController_TestSendInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + PriceTypes_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_PriceTypeDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_PriceTypeDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_PriceTypeDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + PriceTypes_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_PriceTypeInput"]; + "text/json": components["schemas"]["Catalog_PriceTypeInput"]; + "application/*+json": components["schemas"]["Catalog_PriceTypeInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_PriceTypeDto"]; + "application/json": components["schemas"]["Catalog_PriceTypeDto"]; + "text/json": components["schemas"]["Catalog_PriceTypeDto"]; + }; + }; + }; + }; + PriceTypes_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_PriceTypeDto"]; + "application/json": components["schemas"]["Catalog_PriceTypeDto"]; + "text/json": components["schemas"]["Catalog_PriceTypeDto"]; + }; + }; + }; + }; + PriceTypes_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_PriceTypeInput"]; + "text/json": components["schemas"]["Catalog_PriceTypeInput"]; + "application/*+json": components["schemas"]["Catalog_PriceTypeInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + PriceTypes_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + ProductGroups_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + parentId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_ProductGroupDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_ProductGroupDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_ProductGroupDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + ProductGroups_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_ProductGroupInput"]; + "text/json": components["schemas"]["Catalog_ProductGroupInput"]; + "application/*+json": components["schemas"]["Catalog_ProductGroupInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_ProductGroupDto"]; + "application/json": components["schemas"]["Catalog_ProductGroupDto"]; + "text/json": components["schemas"]["Catalog_ProductGroupDto"]; + }; + }; + }; + }; + ProductGroups_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_ProductGroupDto"]; + "application/json": components["schemas"]["Catalog_ProductGroupDto"]; + "text/json": components["schemas"]["Catalog_ProductGroupDto"]; + }; + }; + }; + }; + ProductGroups_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_ProductGroupInput"]; + "text/json": components["schemas"]["Catalog_ProductGroupInput"]; + "application/*+json": components["schemas"]["Catalog_ProductGroupInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + ProductGroups_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + ProductImages_GetList: { + parameters: { + query?: never; + header?: never; + path: { + productId: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_ProductImagesController_ImageDto"][]; + "application/json": components["schemas"]["Catalog_ProductImagesController_ImageDto"][]; + "text/json": components["schemas"]["Catalog_ProductImagesController_ImageDto"][]; + }; + }; + }; + }; + ProductImages_PostUpload: { + parameters: { + query?: never; + header?: never; + path: { + productId: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "multipart/form-data": { + /** Format: binary */ + file?: string; + }; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_ProductImagesController_ImageDto"]; + "application/json": components["schemas"]["Catalog_ProductImagesController_ImageDto"]; + "text/json": components["schemas"]["Catalog_ProductImagesController_ImageDto"]; + }; + }; + }; + }; + ProductImages_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + productId: string; + imageId: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + ProductImages_PostSetMain: { + parameters: { + query?: never; + header?: never; + path: { + productId: string; + imageId: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Products_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + groupId?: string; + isService?: boolean; + packaging?: components["schemas"]["Catalog_Packaging"]; + isMarked?: boolean; + purchasePriceFrom?: number; + purchasePriceTo?: number; + referencePriceFrom?: number; + referencePriceTo?: number; + systemPriceFrom?: number; + systemPriceTo?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_ProductDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_ProductDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_ProductDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Products_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_ProductInput"]; + "text/json": components["schemas"]["Catalog_ProductInput"]; + "application/*+json": components["schemas"]["Catalog_ProductInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_ProductDto"]; + "application/json": components["schemas"]["Catalog_ProductDto"]; + "text/json": components["schemas"]["Catalog_ProductDto"]; + }; + }; + }; + }; + Products_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_ProductDto"]; + "application/json": components["schemas"]["Catalog_ProductDto"]; + "text/json": components["schemas"]["Catalog_ProductDto"]; + }; + }; + }; + }; + Products_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_ProductInput"]; + "text/json": components["schemas"]["Catalog_ProductInput"]; + "application/*+json": components["schemas"]["Catalog_ProductInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Products_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Products_PostRecalcRetail: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Products_GetBarcodeDuplicates: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_ProductsController_BarcodeDuplicate"][]; + "application/json": components["schemas"]["Catalog_ProductsController_BarcodeDuplicate"][]; + "text/json": components["schemas"]["Catalog_ProductsController_BarcodeDuplicate"][]; + }; + }; + }; + }; + Products_GetQuickSearch: { + parameters: { + query?: { + search?: string; + storeId?: string; + limit?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_ProductsController_QuickSearchItem"][]; + "application/json": components["schemas"]["Catalog_ProductsController_QuickSearchItem"][]; + "text/json": components["schemas"]["Catalog_ProductsController_QuickSearchItem"][]; + }; + }; + }; + }; + Products_GetByBarcode: { + parameters: { + query?: { + storeId?: string; + }; + header?: never; + path: { + value: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + ProfitReport_GetGet: { + parameters: { + query?: { + from?: string; + to?: string; + groupBy?: string; + storeId?: string; + productGroupId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Reports_ProfitReportController_ProfitRow"][]; + "application/json": components["schemas"]["Reports_ProfitReportController_ProfitRow"][]; + "text/json": components["schemas"]["Reports_ProfitReportController_ProfitRow"][]; + }; + }; + }; + }; + ProfitReport_GetExport: { + parameters: { + query?: { + from?: string; + to?: string; + groupBy?: string; + storeId?: string; + productGroupId?: string; + format?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + RetailPoints_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_RetailPointDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_RetailPointDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_RetailPointDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + RetailPoints_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_RetailPointInput"]; + "text/json": components["schemas"]["Catalog_RetailPointInput"]; + "application/*+json": components["schemas"]["Catalog_RetailPointInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_RetailPointDto"]; + "application/json": components["schemas"]["Catalog_RetailPointDto"]; + "text/json": components["schemas"]["Catalog_RetailPointDto"]; + }; + }; + }; + }; + RetailPoints_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_RetailPointDto"]; + "application/json": components["schemas"]["Catalog_RetailPointDto"]; + "text/json": components["schemas"]["Catalog_RetailPointDto"]; + }; + }; + }; + }; + RetailPoints_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_RetailPointInput"]; + "text/json": components["schemas"]["Catalog_RetailPointInput"]; + "application/*+json": components["schemas"]["Catalog_RetailPointInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + RetailPoints_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + RetailSales_GetStats: { + parameters: { + query?: { + days?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Sales_RetailSalesController_SalesStatsResponse"]; + "application/json": components["schemas"]["Sales_RetailSalesController_SalesStatsResponse"]; + "text/json": components["schemas"]["Sales_RetailSalesController_SalesStatsResponse"]; + }; + }; + }; + }; + RetailSales_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + status?: components["schemas"]["Sales_RetailSaleStatus"]; + storeId?: string; + from?: string; + to?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Sales_RetailSalesController_RetailSaleListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Sales_RetailSalesController_RetailSaleListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Sales_RetailSalesController_RetailSaleListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + RetailSales_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Sales_RetailSalesController_RetailSaleInput"]; + "text/json": components["schemas"]["Sales_RetailSalesController_RetailSaleInput"]; + "application/*+json": components["schemas"]["Sales_RetailSalesController_RetailSaleInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + "application/json": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + "text/json": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + }; + }; + }; + }; + RetailSales_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + "application/json": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + "text/json": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + }; + }; + }; + }; + RetailSales_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Sales_RetailSalesController_RetailSaleInput"]; + "text/json": components["schemas"]["Sales_RetailSalesController_RetailSaleInput"]; + "application/*+json": components["schemas"]["Sales_RetailSalesController_RetailSaleInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + RetailSales_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + RetailSales_PostPost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + RetailSales_PostUnpost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + RetailSales_PostCreateReturnFrom: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + "application/json": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + "text/json": components["schemas"]["Sales_RetailSalesController_RetailSaleDto"]; + }; + }; + }; + }; + SalesReport_GetGet: { + parameters: { + query?: { + from?: string; + to?: string; + groupBy?: string; + storeId?: string; + productGroupId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Reports_SalesReportController_SalesRow"][]; + "application/json": components["schemas"]["Reports_SalesReportController_SalesRow"][]; + "text/json": components["schemas"]["Reports_SalesReportController_SalesRow"][]; + }; + }; + }; + }; + SalesReport_GetExport: { + parameters: { + query?: { + from?: string; + to?: string; + groupBy?: string; + storeId?: string; + productGroupId?: string; + format?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Stock_GetGetStock: { + parameters: { + query?: { + storeId?: string; + productId?: string; + search?: string; + includeZero?: boolean; + page?: number; + pageSize?: number; + sort?: string; + order?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Inventory_StockController_StockRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Inventory_StockController_StockRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Inventory_StockController_StockRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Stock_GetGetMovements: { + parameters: { + query?: { + storeId?: string; + productId?: string; + from?: string; + to?: string; + page?: number; + pageSize?: number; + sort?: string; + order?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Inventory_StockController_MovementRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Inventory_StockController_MovementRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Inventory_StockController_MovementRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + StockReport_GetGet: { + parameters: { + query?: { + date?: string; + storeId?: string; + productGroupId?: string; + includeZero?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Reports_StockReportController_StockRow"][]; + "application/json": components["schemas"]["Reports_StockReportController_StockRow"][]; + "text/json": components["schemas"]["Reports_StockReportController_StockRow"][]; + }; + }; + }; + }; + StockReport_GetExport: { + parameters: { + query?: { + date?: string; + storeId?: string; + productGroupId?: string; + includeZero?: boolean; + format?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Stores_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_StoreDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_StoreDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_StoreDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Stores_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_StoreInput"]; + "text/json": components["schemas"]["Catalog_StoreInput"]; + "application/*+json": components["schemas"]["Catalog_StoreInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_StoreDto"]; + "application/json": components["schemas"]["Catalog_StoreDto"]; + "text/json": components["schemas"]["Catalog_StoreDto"]; + }; + }; + }; + }; + Stores_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_StoreDto"]; + "application/json": components["schemas"]["Catalog_StoreDto"]; + "text/json": components["schemas"]["Catalog_StoreDto"]; + }; + }; + }; + }; + Stores_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_StoreInput"]; + "text/json": components["schemas"]["Catalog_StoreInput"]; + "application/*+json": components["schemas"]["Catalog_StoreInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Stores_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdmin_GetGetSetupStatus: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminController_SetupStatusDto"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminController_SetupStatusDto"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminController_SetupStatusDto"]; + }; + }; + }; + }; + SuperAdmin_GetDashboard: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminController_DashboardStats"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminController_DashboardStats"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminController_DashboardStats"]; + }; + }; + }; + }; + SuperAdmin_GetGetSettings: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsDto"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsDto"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsDto"]; + }; + }; + }; + }; + SuperAdmin_PutUpdateSettings: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsInput"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsInput"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsDto"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsDto"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminController_SystemSettingsDto"]; + }; + }; + }; + }; + SuperAdmin_GetAuditLog: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + organizationId?: string; + actionType?: string; + from?: string; + to?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminController_AuditRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminController_AuditRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminController_AuditRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + SuperAdminEmployees_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + includeInactive?: boolean; + }; + header?: never; + path: { + orgId: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminEmployeesController_EmployeeRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminEmployeesController_EmployeeRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminEmployeesController_EmployeeRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + SuperAdminEmployees_PostCreate: { + parameters: { + query?: never; + header?: never; + path: { + orgId: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_CreateInput"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_CreateInput"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_CreateInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_EmployeeDetail"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_EmployeeDetail"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_EmployeeDetail"]; + }; + }; + }; + }; + SuperAdminEmployees_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + orgId: string; + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_EmployeeDetail"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_EmployeeDetail"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_EmployeeDetail"]; + }; + }; + }; + }; + SuperAdminEmployees_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + orgId: string; + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_UpdateInput"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_UpdateInput"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_UpdateInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminEmployees_DeleteDelete: { + parameters: { + query?: { + reason?: string; + }; + header?: never; + path: { + orgId: string; + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminEmployees_PostToggleActive: { + parameters: { + query?: never; + header?: never; + path: { + orgId: string; + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ToggleActiveInput"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ToggleActiveInput"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ToggleActiveInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminEmployees_PostToggleAccountActive: { + parameters: { + query?: never; + header?: never; + path: { + orgId: string; + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ToggleAccountActiveInput"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ToggleAccountActiveInput"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ToggleAccountActiveInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminEmployees_PostResetPassword: { + parameters: { + query?: never; + header?: never; + path: { + orgId: string; + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ResetPasswordInput"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ResetPasswordInput"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ResetPasswordInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ResetPasswordResult"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ResetPasswordResult"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminEmployeesController_ResetPasswordResult"]; + }; + }; + }; + }; + SuperAdminOrganizations_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + archived?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminOrganizationsController_OrgRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminOrganizationsController_OrgRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[SuperAdmin_SuperAdminOrganizationsController_OrgRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + SuperAdminOrganizations_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_CreateOrgRequest"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_CreateOrgRequest"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_CreateOrgRequest"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_CreateOrgResult"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_CreateOrgResult"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_CreateOrgResult"]; + }; + }; + }; + }; + SuperAdminOrganizations_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgDetail"]; + "application/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgDetail"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgDetail"]; + }; + }; + }; + }; + SuperAdminOrganizations_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgInput"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgInput"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_OrgInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminOrganizations_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_DeleteRequest"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_DeleteRequest"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_DeleteRequest"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminOrganizations_PostArchive: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_ArchiveRequest"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_ArchiveRequest"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_ArchiveRequest"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminOrganizations_PostRestore: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminOrganizations_PostChangeOwner: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_ChangeOwnerRequest"]; + "text/json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_ChangeOwnerRequest"]; + "application/*+json": components["schemas"]["SuperAdmin_SuperAdminOrganizationsController_ChangeOwnerRequest"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminUnitsOfMeasure_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_UnitOfMeasureDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_UnitOfMeasureDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_UnitOfMeasureDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + SuperAdminUnitsOfMeasure_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_UnitOfMeasureInput"]; + "text/json": components["schemas"]["Catalog_UnitOfMeasureInput"]; + "application/*+json": components["schemas"]["Catalog_UnitOfMeasureInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_UnitOfMeasureDto"]; + "application/json": components["schemas"]["Catalog_UnitOfMeasureDto"]; + "text/json": components["schemas"]["Catalog_UnitOfMeasureDto"]; + }; + }; + }; + }; + SuperAdminUnitsOfMeasure_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_UnitOfMeasureDto"]; + "application/json": components["schemas"]["Catalog_UnitOfMeasureDto"]; + "text/json": components["schemas"]["Catalog_UnitOfMeasureDto"]; + }; + }; + }; + }; + SuperAdminUnitsOfMeasure_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Catalog_UnitOfMeasureInput"]; + "text/json": components["schemas"]["Catalog_UnitOfMeasureInput"]; + "application/*+json": components["schemas"]["Catalog_UnitOfMeasureInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SuperAdminUnitsOfMeasure_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SupplierReturns_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + status?: components["schemas"]["Purchases_SupplierReturnStatus"]; + supplierId?: string; + storeId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Purchases_SupplierReturnsController_SupplierReturnListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Purchases_SupplierReturnsController_SupplierReturnListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Purchases_SupplierReturnsController_SupplierReturnListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + SupplierReturns_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnInput"]; + "text/json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnInput"]; + "application/*+json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnDto"]; + "application/json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnDto"]; + "text/json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnDto"]; + }; + }; + }; + }; + SupplierReturns_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnDto"]; + "application/json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnDto"]; + "text/json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnDto"]; + }; + }; + }; + }; + SupplierReturns_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnInput"]; + "text/json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnInput"]; + "application/*+json": components["schemas"]["Purchases_SupplierReturnsController_SupplierReturnInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SupplierReturns_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SupplierReturns_PostPost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + SupplierReturns_PostUnpost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Supplies_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + status?: components["schemas"]["Purchases_SupplyStatus"]; + storeId?: string; + supplierId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Purchases_SuppliesController_SupplyListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Purchases_SuppliesController_SupplyListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Purchases_SuppliesController_SupplyListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Supplies_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Purchases_SuppliesController_SupplyInput"]; + "text/json": components["schemas"]["Purchases_SuppliesController_SupplyInput"]; + "application/*+json": components["schemas"]["Purchases_SuppliesController_SupplyInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Purchases_SuppliesController_SupplyDto"]; + "application/json": components["schemas"]["Purchases_SuppliesController_SupplyDto"]; + "text/json": components["schemas"]["Purchases_SuppliesController_SupplyDto"]; + }; + }; + }; + }; + Supplies_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Purchases_SuppliesController_SupplyDto"]; + "application/json": components["schemas"]["Purchases_SuppliesController_SupplyDto"]; + "text/json": components["schemas"]["Purchases_SuppliesController_SupplyDto"]; + }; + }; + }; + }; + Supplies_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Purchases_SuppliesController_SupplyInput"]; + "text/json": components["schemas"]["Purchases_SuppliesController_SupplyInput"]; + "application/*+json": components["schemas"]["Purchases_SuppliesController_SupplyInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Supplies_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Supplies_PostPost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Supplies_PostUnpost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Transfers_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + status?: components["schemas"]["Inventory_TransferStatus"]; + fromStoreId?: string; + toStoreId?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Inventory_TransfersController_TransferListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Inventory_TransfersController_TransferListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Inventory_TransfersController_TransferListRow, foodmarket_Api, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + Transfers_PostCreate: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Inventory_TransfersController_TransferInput"]; + "text/json": components["schemas"]["Inventory_TransfersController_TransferInput"]; + "application/*+json": components["schemas"]["Inventory_TransfersController_TransferInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Inventory_TransfersController_TransferDto"]; + "application/json": components["schemas"]["Inventory_TransfersController_TransferDto"]; + "text/json": components["schemas"]["Inventory_TransfersController_TransferDto"]; + }; + }; + }; + }; + Transfers_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Inventory_TransfersController_TransferDto"]; + "application/json": components["schemas"]["Inventory_TransfersController_TransferDto"]; + "text/json": components["schemas"]["Inventory_TransfersController_TransferDto"]; + }; + }; + }; + }; + Transfers_PutUpdate: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: { + content: { + "application/json": components["schemas"]["Inventory_TransfersController_TransferInput"]; + "text/json": components["schemas"]["Inventory_TransfersController_TransferInput"]; + "application/*+json": components["schemas"]["Inventory_TransfersController_TransferInput"]; + }; + }; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Transfers_DeleteDelete: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Transfers_PostPost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + Transfers_PostUnpost: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + UnitsOfMeasure_GetList: { + parameters: { + query?: { + Page?: number; + PageSize?: number; + Search?: string; + Sort?: string; + Order?: string; + Skip?: number; + Take?: number; + Desc?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Common_PagedResult`1[[Catalog_UnitOfMeasureDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "application/json": components["schemas"]["Common_PagedResult`1[[Catalog_UnitOfMeasureDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + "text/json": components["schemas"]["Common_PagedResult`1[[Catalog_UnitOfMeasureDto, foodmarket_Application, Version=0_1_0_0, Culture=neutral, PublicKeyToken=null]]"]; + }; + }; + }; + }; + UnitsOfMeasure_GetGet: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "text/plain": components["schemas"]["Catalog_UnitOfMeasureDto"]; + "application/json": components["schemas"]["Catalog_UnitOfMeasureDto"]; + "text/json": components["schemas"]["Catalog_UnitOfMeasureDto"]; + }; + }; + }; + }; + UnitsOfMeasure_PostEnable: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; + UnitsOfMeasure_DeleteDisable: { + parameters: { + query?: never; + header?: never; + path: { + id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description OK */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + }; + }; +} diff --git a/src/food-market.web/src/lib/apiClient.ts b/src/food-market.web/src/lib/apiClient.ts new file mode 100644 index 0000000..68a3b26 --- /dev/null +++ b/src/food-market.web/src/lib/apiClient.ts @@ -0,0 +1,53 @@ +/** + * Тонкая обёртка над axios `api`, использующая типы из api.generated.ts + * (сгенерированы из /swagger/v1/swagger.json через openapi-typescript). + * + * Регенерация: + * 1. dotnet run --project src/food-market.api (или просто запущенный API в dev) + * 2. cd src/food-market.web && pnpm run gen:api + * → перезаписывает src/lib/api.generated.ts + * + * Эта обёртка демонстрирует подключение для пары контроллеров (reports/sales, + * reports/abc) как образец миграции с ручных типов. Остальные страницы + * пользуются явными типами из `types.ts` — постепенная миграция в новом коде. + * + * Multi-tenant: контроллеры на API-стороне применяют tenant query-filter + * автоматически, обёртка ничего не делает специального — только подставляет + * Authorization-токен (через axios interceptor в `api.ts`). + */ +import { api } from './api' +import type { components, paths } from './api.generated' + +/** Типы DTO, переэкспорт из generated для удобства импорта на страницах. */ +export type SalesReportRowDto = components['schemas']['Reports_SalesReportController_SalesRow'] +export type AbcReportRowDto = components['schemas']['Reports_AbcReportController_AbcRow'] +export type ProfitReportRowDto = components['schemas']['Reports_ProfitReportController_ProfitRow'] + +type SalesQuery = NonNullable +type AbcQuery = NonNullable +type ProfitQuery = NonNullable + +function qs(params: Record): string { + const p = new URLSearchParams() + for (const [k, v] of Object.entries(params)) { + if (v == null || v === '') continue + p.set(k, v instanceof Date ? v.toISOString() : String(v)) + } + return p.toString() +} + +/** Тонкие хелперы, типизированные через generated types. */ +export const reports = { + async sales(params: SalesQuery): Promise { + const { data } = await api.get(`/api/reports/sales?${qs(params)}`) + return data + }, + async abc(params: AbcQuery): Promise { + const { data } = await api.get(`/api/reports/abc?${qs(params)}`) + return data + }, + async profit(params: ProfitQuery): Promise { + const { data } = await api.get(`/api/reports/profit?${qs(params)}`) + return data + }, +}