19254 lines
500 KiB
JSON
19254 lines
500 KiB
JSON
{
|
||
"openapi": "3.0.4",
|
||
"info": {
|
||
"title": "外卖SaaS - 管理后台 1.0",
|
||
"description": "管理后台 API 文档",
|
||
"version": "1.0"
|
||
},
|
||
"paths": {
|
||
"/api/admin/v1/auth/login": {
|
||
"post": {
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "登录获取 Token",
|
||
"requestBody": {
|
||
"description": "登录请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdminLoginRequest"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdminLoginRequest"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdminLoginRequest"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdminLoginRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TokenResponseApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/auth/login/simple": {
|
||
"post": {
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "免租户号登录(仅账号+密码)。",
|
||
"description": "用于前端简化登录,无需额外传递租户号。",
|
||
"requestBody": {
|
||
"description": "登录请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdminLoginRequest"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdminLoginRequest"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdminLoginRequest"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdminLoginRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TokenResponseApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/auth/refresh": {
|
||
"post": {
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "刷新 Token",
|
||
"requestBody": {
|
||
"description": "刷新令牌请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RefreshTokenRequest"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RefreshTokenRequest"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RefreshTokenRequest"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RefreshTokenRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TokenResponseApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/auth/profile": {
|
||
"get": {
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "获取当前用户信息",
|
||
"description": "示例:\n```\nGET /api/admin/v1/auth/profile\nHeader: Authorization: Bearer <JWT>\n响应:\n{\n \"success\": true,\n \"code\": 200,\n \"message\": \"操作成功\",\n \"data\": {\n \"userId\": \"900123456789012345\",\n \"account\": \"admin@tenant1\",\n \"displayName\": \"租户管理员\",\n \"tenantId\": \"100000000000000001\",\n \"merchantId\": null,\n \"roles\": [\"TenantAdmin\"],\n \"permissions\": [\"identity:permission:read\", \"merchant:read\", \"order:read\"],\n \"avatar\": \"https://cdn.example.com/avatar.png\"\n }\n}\n```",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CurrentUserProfileApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CurrentUserProfileApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/auth/menu": {
|
||
"get": {
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "获取当前用户的菜单树(按权限过滤)。",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuNodeDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/auth/permissions/{userId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Auth"
|
||
],
|
||
"summary": "查询指定用户的角色与权限概览(当前租户范围)。",
|
||
"description": "示例:\n```\nGET /api/admin/v1/auth/permissions/900123456789012346\nHeader: Authorization: Bearer <JWT>\n响应:\n{\n \"success\": true,\n \"code\": 200,\n \"data\": {\n \"userId\": \"900123456789012346\",\n \"tenantId\": \"100000000000000001\",\n \"merchantId\": \"200000000000000001\",\n \"account\": \"ops.manager\",\n \"displayName\": \"运营经理\",\n \"roles\": [\"OpsManager\", \"Reporter\"],\n \"permissions\": [\"delivery:read\", \"order:read\", \"payment:read\"],\n \"createdAt\": \"2025-12-01T08:30:00Z\"\n }\n}\n```",
|
||
"parameters": [
|
||
{
|
||
"name": "userId",
|
||
"in": "path",
|
||
"description": "目标用户 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UserPermissionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UserPermissionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/deliveries": {
|
||
"post": {
|
||
"tags": [
|
||
"Deliveries"
|
||
],
|
||
"summary": "创建配送单。",
|
||
"requestBody": {
|
||
"description": "创建命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDeliveryOrderCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDeliveryOrderCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDeliveryOrderCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDeliveryOrderCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeliveryOrderDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Deliveries"
|
||
],
|
||
"summary": "查询配送单列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "orderId",
|
||
"in": "query",
|
||
"description": "订单 ID。",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "配送状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeliveryStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"description": "页码。",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "每页大小。",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
},
|
||
{
|
||
"name": "sortBy",
|
||
"in": "query",
|
||
"description": "排序字段。",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "sortDesc",
|
||
"in": "query",
|
||
"description": "是否倒序。",
|
||
"schema": {
|
||
"type": "boolean",
|
||
"default": true
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeliveryOrderDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/deliveries/{deliveryOrderId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Deliveries"
|
||
],
|
||
"summary": "获取配送单详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "deliveryOrderId",
|
||
"in": "path",
|
||
"description": "配送单 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeliveryOrderDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"Deliveries"
|
||
],
|
||
"summary": "更新配送单。",
|
||
"parameters": [
|
||
{
|
||
"name": "deliveryOrderId",
|
||
"in": "path",
|
||
"description": "配送单 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "更新命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDeliveryOrderCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDeliveryOrderCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDeliveryOrderCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDeliveryOrderCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeliveryOrderDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Deliveries"
|
||
],
|
||
"summary": "删除配送单。",
|
||
"parameters": [
|
||
{
|
||
"name": "deliveryOrderId",
|
||
"in": "path",
|
||
"description": "配送单 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/dictionaries": {
|
||
"get": {
|
||
"tags": [
|
||
"Dictionary"
|
||
],
|
||
"summary": "查询字典分组。",
|
||
"parameters": [
|
||
{
|
||
"name": "Scope",
|
||
"in": "query",
|
||
"description": "参数字典作用域。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryScope"
|
||
}
|
||
},
|
||
{
|
||
"name": "IncludeItems",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryGroupDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"Dictionary"
|
||
],
|
||
"summary": "创建字典分组。",
|
||
"requestBody": {
|
||
"description": "创建分组请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDictionaryGroupRequest"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDictionaryGroupRequest"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDictionaryGroupRequest"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDictionaryGroupRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryGroupDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/dictionaries/{groupId}": {
|
||
"put": {
|
||
"tags": [
|
||
"Dictionary"
|
||
],
|
||
"summary": "更新字典分组。",
|
||
"parameters": [
|
||
{
|
||
"name": "groupId",
|
||
"in": "path",
|
||
"description": "分组 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "更新请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDictionaryGroupRequest"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDictionaryGroupRequest"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDictionaryGroupRequest"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDictionaryGroupRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryGroupDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Dictionary"
|
||
],
|
||
"summary": "删除字典分组。",
|
||
"parameters": [
|
||
{
|
||
"name": "groupId",
|
||
"in": "path",
|
||
"description": "分组 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/dictionaries/{groupId}/items": {
|
||
"post": {
|
||
"tags": [
|
||
"Dictionary"
|
||
],
|
||
"summary": "创建字典项。",
|
||
"parameters": [
|
||
{
|
||
"name": "groupId",
|
||
"in": "path",
|
||
"description": "分组 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "创建请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDictionaryItemRequest"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDictionaryItemRequest"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDictionaryItemRequest"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateDictionaryItemRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryItemDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/dictionaries/items/{itemId}": {
|
||
"put": {
|
||
"tags": [
|
||
"Dictionary"
|
||
],
|
||
"summary": "更新字典项。",
|
||
"parameters": [
|
||
{
|
||
"name": "itemId",
|
||
"in": "path",
|
||
"description": "字典项 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "更新请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDictionaryItemRequest"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDictionaryItemRequest"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDictionaryItemRequest"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateDictionaryItemRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryItemDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Dictionary"
|
||
],
|
||
"summary": "删除字典项。",
|
||
"parameters": [
|
||
{
|
||
"name": "itemId",
|
||
"in": "path",
|
||
"description": "字典项 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/dictionaries/batch": {
|
||
"post": {
|
||
"tags": [
|
||
"Dictionary"
|
||
],
|
||
"summary": "批量获取字典项(命中缓存)。",
|
||
"requestBody": {
|
||
"description": "批量查询请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryBatchQueryRequest"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryBatchQueryRequest"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryBatchQueryRequest"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DictionaryBatchQueryRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StringDictionaryItemDtoIReadOnlyListIReadOnlyDictionaryApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/files/upload": {
|
||
"post": {
|
||
"tags": [
|
||
"Files"
|
||
],
|
||
"summary": "上传图片或文件。",
|
||
"requestBody": {
|
||
"content": {
|
||
"multipart/form-data": {
|
||
"schema": {
|
||
"required": [
|
||
"File"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"File": {
|
||
"type": "string",
|
||
"description": "上传文件。",
|
||
"format": "binary"
|
||
},
|
||
"Type": {
|
||
"type": "string",
|
||
"description": "上传类型。"
|
||
}
|
||
}
|
||
},
|
||
"encoding": {
|
||
"File": {
|
||
"style": "form"
|
||
},
|
||
"Type": {
|
||
"style": "form"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/FileUploadResponseApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "Bad Request",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/FileUploadResponseApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/Health": {
|
||
"get": {
|
||
"tags": [
|
||
"Health"
|
||
],
|
||
"summary": "获取服务健康状态。",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/inventory/{productSkuId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Inventory"
|
||
],
|
||
"summary": "查询库存。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "productSkuId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InventoryItemDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/inventory/adjust": {
|
||
"post": {
|
||
"tags": [
|
||
"Inventory"
|
||
],
|
||
"summary": "调整库存(入库/盘点/报损)。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdjustInventoryCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdjustInventoryCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdjustInventoryCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AdjustInventoryCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InventoryItemDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/inventory/lock": {
|
||
"post": {
|
||
"tags": [
|
||
"Inventory"
|
||
],
|
||
"summary": "锁定库存(下单占用)。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/LockInventoryCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/LockInventoryCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/LockInventoryCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/LockInventoryCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InventoryItemDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/inventory/release": {
|
||
"post": {
|
||
"tags": [
|
||
"Inventory"
|
||
],
|
||
"summary": "释放库存(取消订单等)。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReleaseInventoryCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReleaseInventoryCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReleaseInventoryCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReleaseInventoryCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InventoryItemDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/inventory/deduct": {
|
||
"post": {
|
||
"tags": [
|
||
"Inventory"
|
||
],
|
||
"summary": "扣减库存(支付或履约成功)。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeductInventoryCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeductInventoryCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeductInventoryCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/DeductInventoryCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InventoryItemDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/inventory/{productSkuId}/batches": {
|
||
"get": {
|
||
"tags": [
|
||
"Inventory"
|
||
],
|
||
"summary": "查询批次列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "productSkuId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InventoryBatchDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"Inventory"
|
||
],
|
||
"summary": "新增或更新批次。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "productSkuId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpsertInventoryBatchCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpsertInventoryBatchCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpsertInventoryBatchCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpsertInventoryBatchCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InventoryBatchDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/inventory/locks/expire": {
|
||
"post": {
|
||
"tags": [
|
||
"Inventory"
|
||
],
|
||
"summary": "释放过期锁定。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/Int32ApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/menus": {
|
||
"get": {
|
||
"tags": [
|
||
"Menus"
|
||
],
|
||
"summary": "获取当前租户的菜单列表(平铺)。",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuDefinitionDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"Menus"
|
||
],
|
||
"summary": "创建菜单。",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMenuCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMenuCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMenuCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMenuCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuDefinitionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/menus/{menuId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Menus"
|
||
],
|
||
"summary": "获取菜单详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "menuId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuDefinitionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuDefinitionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"Menus"
|
||
],
|
||
"summary": "更新菜单。",
|
||
"parameters": [
|
||
{
|
||
"name": "menuId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMenuCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMenuCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMenuCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMenuCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuDefinitionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuDefinitionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Menus"
|
||
],
|
||
"summary": "删除菜单。",
|
||
"parameters": [
|
||
{
|
||
"name": "menuId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BooleanApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchant-categories": {
|
||
"get": {
|
||
"tags": [
|
||
"MerchantCategories"
|
||
],
|
||
"summary": "列出所有类目。",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantCategoryDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"MerchantCategories"
|
||
],
|
||
"summary": "新增类目。",
|
||
"requestBody": {
|
||
"description": "创建命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantCategoryCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantCategoryCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantCategoryCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantCategoryCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantCategoryDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchant-categories/{categoryId}": {
|
||
"delete": {
|
||
"tags": [
|
||
"MerchantCategories"
|
||
],
|
||
"summary": "删除类目。",
|
||
"parameters": [
|
||
{
|
||
"name": "categoryId",
|
||
"in": "path",
|
||
"description": "类目 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchant-categories/reorder": {
|
||
"post": {
|
||
"tags": [
|
||
"MerchantCategories"
|
||
],
|
||
"summary": "批量调整类目排序。",
|
||
"requestBody": {
|
||
"description": "排序命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReorderMerchantCategoriesCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReorderMerchantCategoriesCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReorderMerchantCategoriesCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReorderMerchantCategoriesCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants": {
|
||
"post": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "创建商户。",
|
||
"requestBody": {
|
||
"description": "创建命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "查询商户列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "状态筛选。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"description": "页码。",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "每页大小。",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
},
|
||
{
|
||
"name": "sortBy",
|
||
"in": "query",
|
||
"description": "排序字段。",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "sortDesc",
|
||
"in": "query",
|
||
"description": "是否倒序。",
|
||
"schema": {
|
||
"type": "boolean",
|
||
"default": true
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/{merchantId}": {
|
||
"put": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "更新商户。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"description": "商户 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "更新命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMerchantCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMerchantCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMerchantCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMerchantCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "删除商户。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"description": "商户 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "获取商户概览。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"description": "商户 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/{merchantId}/detail": {
|
||
"get": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "获取商户详细资料(含证照、合同)。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDetailDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/{merchantId}/documents": {
|
||
"post": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "上传商户证照信息(先通过文件上传接口获取 COS 地址)。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AddMerchantDocumentCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AddMerchantDocumentCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AddMerchantDocumentCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AddMerchantDocumentCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDocumentDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "商户证照列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDocumentDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/{merchantId}/documents/{documentId}/review": {
|
||
"post": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "审核指定证照。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "documentId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewMerchantDocumentCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewMerchantDocumentCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewMerchantDocumentCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewMerchantDocumentCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDocumentDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/{merchantId}/contracts": {
|
||
"post": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "新增商户合同。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantContractCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantContractCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantContractCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateMerchantContractCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantContractDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "合同列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantContractDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/{merchantId}/contracts/{contractId}/status": {
|
||
"put": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "更新合同状态(生效/终止等)。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "contractId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMerchantContractStatusCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMerchantContractStatusCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMerchantContractStatusCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateMerchantContractStatusCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantContractDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/{merchantId}/review": {
|
||
"post": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "审核商户(通过/驳回)。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewMerchantCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewMerchantCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewMerchantCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewMerchantCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/{merchantId}/audits": {
|
||
"get": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "审核日志。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MerchantAuditLogDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/merchants/categories": {
|
||
"get": {
|
||
"tags": [
|
||
"Merchants"
|
||
],
|
||
"summary": "可选商户类目列表。",
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StringIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/orders": {
|
||
"post": {
|
||
"tags": [
|
||
"Orders"
|
||
],
|
||
"summary": "创建订单。",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateOrderCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateOrderCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateOrderCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateOrderCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/OrderDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Orders"
|
||
],
|
||
"summary": "查询订单列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "订单状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/OrderStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "paymentStatus",
|
||
"in": "query",
|
||
"description": "支付记录状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PaymentStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "orderNo",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
},
|
||
{
|
||
"name": "sortBy",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "sortDesc",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean",
|
||
"default": true
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/OrderDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/orders/{orderId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Orders"
|
||
],
|
||
"summary": "获取订单详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "orderId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/OrderDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"Orders"
|
||
],
|
||
"summary": "更新订单。",
|
||
"parameters": [
|
||
{
|
||
"name": "orderId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateOrderCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateOrderCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateOrderCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateOrderCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/OrderDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Orders"
|
||
],
|
||
"summary": "删除订单。",
|
||
"parameters": [
|
||
{
|
||
"name": "orderId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/payments": {
|
||
"post": {
|
||
"tags": [
|
||
"Payments"
|
||
],
|
||
"summary": "创建支付记录。",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePaymentCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePaymentCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePaymentCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePaymentCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PaymentDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Payments"
|
||
],
|
||
"summary": "查询支付记录列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "orderId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "支付记录状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PaymentStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
},
|
||
{
|
||
"name": "sortBy",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "sortDesc",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean",
|
||
"default": true
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PaymentDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/payments/{paymentId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Payments"
|
||
],
|
||
"summary": "获取支付记录详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "paymentId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PaymentDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"Payments"
|
||
],
|
||
"summary": "更新支付记录。",
|
||
"parameters": [
|
||
{
|
||
"name": "paymentId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdatePaymentCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdatePaymentCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdatePaymentCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdatePaymentCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PaymentDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Payments"
|
||
],
|
||
"summary": "删除支付记录。",
|
||
"parameters": [
|
||
{
|
||
"name": "paymentId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/permissions": {
|
||
"get": {
|
||
"tags": [
|
||
"Permissions"
|
||
],
|
||
"summary": "分页查询权限。",
|
||
"description": "示例:GET /api/admin/v1/permissions?keyword=order&page=1&pageSize=20",
|
||
"parameters": [
|
||
{
|
||
"name": "Keyword",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "SortBy",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "SortDescending",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"Permissions"
|
||
],
|
||
"summary": "创建权限。",
|
||
"requestBody": {
|
||
"description": "创建命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePermissionCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePermissionCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePermissionCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePermissionCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/permissions/tree": {
|
||
"get": {
|
||
"tags": [
|
||
"Permissions"
|
||
],
|
||
"summary": "获取权限树。",
|
||
"parameters": [
|
||
{
|
||
"name": "keyword",
|
||
"in": "query",
|
||
"description": "关键字(可选)。",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionTreeDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/permissions/{permissionId}": {
|
||
"put": {
|
||
"tags": [
|
||
"Permissions"
|
||
],
|
||
"summary": "更新权限。",
|
||
"parameters": [
|
||
{
|
||
"name": "permissionId",
|
||
"in": "path",
|
||
"description": "权限 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "更新命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdatePermissionCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdatePermissionCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdatePermissionCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdatePermissionCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Permissions"
|
||
],
|
||
"summary": "删除权限。",
|
||
"parameters": [
|
||
{
|
||
"name": "permissionId",
|
||
"in": "path",
|
||
"description": "权限 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BooleanApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products": {
|
||
"post": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "创建商品。",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateProductCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateProductCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateProductCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateProductCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "查询商品列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "categoryId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "商品状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
},
|
||
{
|
||
"name": "sortBy",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "sortDesc",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean",
|
||
"default": true
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "获取商品详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "更新商品。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateProductCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateProductCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateProductCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateProductCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "删除商品。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}/detail": {
|
||
"get": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "获取商品全量详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductDetailDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}/publish": {
|
||
"post": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "上架商品。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PublishProductCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PublishProductCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PublishProductCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PublishProductCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}/unpublish": {
|
||
"post": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "下架商品。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UnpublishProductCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UnpublishProductCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UnpublishProductCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UnpublishProductCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}/skus": {
|
||
"put": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "替换商品 SKU。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductSkusCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductSkusCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductSkusCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductSkusCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductSkuDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}/attributes": {
|
||
"put": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "替换商品规格。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductAttributesCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductAttributesCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductAttributesCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductAttributesCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductAttributeGroupDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}/addons": {
|
||
"put": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "替换商品加料。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductAddonsCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductAddonsCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductAddonsCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductAddonsCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductAddonGroupDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}/media": {
|
||
"put": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "替换商品媒资。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductMediaCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductMediaCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductMediaCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductMediaCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductMediaAssetDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/products/{productId}/pricing-rules": {
|
||
"put": {
|
||
"tags": [
|
||
"Products"
|
||
],
|
||
"summary": "替换商品价格策略。",
|
||
"parameters": [
|
||
{
|
||
"name": "productId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductPricingRulesCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductPricingRulesCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductPricingRulesCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplaceProductPricingRulesCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ProductPricingRuleDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/public/v1/tenant-packages": {
|
||
"get": {
|
||
"tags": [
|
||
"PublicTenantPackages"
|
||
],
|
||
"summary": "分页获取已启用的租户套餐。",
|
||
"parameters": [
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantPackageDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/public/v1/tenants/self-register": {
|
||
"post": {
|
||
"tags": [
|
||
"PublicTenants"
|
||
],
|
||
"summary": "自助注册租户并生成初始管理员。",
|
||
"requestBody": {
|
||
"description": "自助注册命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SelfRegisterTenantCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SelfRegisterTenantCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SelfRegisterTenantCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SelfRegisterTenantCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SelfRegisterResultDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/public/v1/tenants/{tenantId}/verification": {
|
||
"post": {
|
||
"tags": [
|
||
"PublicTenants"
|
||
],
|
||
"summary": "自助提交或更新实名资料。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"description": "租户 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "实名资料。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SubmitTenantVerificationCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SubmitTenantVerificationCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SubmitTenantVerificationCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SubmitTenantVerificationCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantVerificationDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/public/v1/tenants/{tenantId}/status": {
|
||
"get": {
|
||
"tags": [
|
||
"PublicTenants"
|
||
],
|
||
"summary": "查询租户入住进度。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"description": "租户 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantProgressDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/public/v1/tenants/{tenantId}/subscriptions/initial": {
|
||
"post": {
|
||
"tags": [
|
||
"PublicTenantSubscriptions"
|
||
],
|
||
"summary": "初次绑定租户订阅(默认 0 个月)。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"description": "租户 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "绑定请求。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BindInitialTenantSubscriptionCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BindInitialTenantSubscriptionCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BindInitialTenantSubscriptionCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BindInitialTenantSubscriptionCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantSubscriptionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "Bad Request",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantSubscriptionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"403": {
|
||
"description": "Forbidden",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantSubscriptionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"409": {
|
||
"description": "Conflict",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantSubscriptionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/role-templates": {
|
||
"get": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "分页查询角色模板。",
|
||
"parameters": [
|
||
{
|
||
"name": "isActive",
|
||
"in": "query",
|
||
"description": "是否启用筛选。",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleTemplateDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "创建角色模板。",
|
||
"requestBody": {
|
||
"description": "创建命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateRoleTemplateCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateRoleTemplateCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateRoleTemplateCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateRoleTemplateCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleTemplateDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/role-templates/{templateCode}/clone": {
|
||
"post": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "克隆角色模板。",
|
||
"parameters": [
|
||
{
|
||
"name": "templateCode",
|
||
"in": "path",
|
||
"description": "源模板编码。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "克隆命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CloneRoleTemplateCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CloneRoleTemplateCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CloneRoleTemplateCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CloneRoleTemplateCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleTemplateDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/role-templates/{templateCode}": {
|
||
"get": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "获取角色模板详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "templateCode",
|
||
"in": "path",
|
||
"description": "模板编码。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleTemplateDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleTemplateDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "更新角色模板。",
|
||
"parameters": [
|
||
{
|
||
"name": "templateCode",
|
||
"in": "path",
|
||
"description": "模板编码。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "更新命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateRoleTemplateCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateRoleTemplateCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateRoleTemplateCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateRoleTemplateCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleTemplateDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleTemplateDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "删除角色模板。",
|
||
"parameters": [
|
||
{
|
||
"name": "templateCode",
|
||
"in": "path",
|
||
"description": "模板编码。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BooleanApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/role-templates/{templateCode}/permissions": {
|
||
"get": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "获取模板的权限列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "templateCode",
|
||
"in": "path",
|
||
"description": "模板编码。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionTemplateDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/role-templates/init": {
|
||
"post": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "为当前租户批量初始化预置角色模板。",
|
||
"requestBody": {
|
||
"description": "初始化命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InitializeRoleTemplatesCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InitializeRoleTemplatesCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InitializeRoleTemplatesCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/InitializeRoleTemplatesCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/role-templates/{templateCode}/initialize-tenant": {
|
||
"post": {
|
||
"tags": [
|
||
"RoleTemplates"
|
||
],
|
||
"summary": "将单个模板初始化到当前租户。",
|
||
"parameters": [
|
||
{
|
||
"name": "templateCode",
|
||
"in": "path",
|
||
"description": "模板编码。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/pickup/settings": {
|
||
"get": {
|
||
"tags": [
|
||
"StorePickup"
|
||
],
|
||
"summary": "获取自提配置。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StorePickupSettingDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"StorePickup"
|
||
],
|
||
"summary": "更新自提配置。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpsertStorePickupSettingCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpsertStorePickupSettingCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpsertStorePickupSettingCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpsertStorePickupSettingCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StorePickupSettingDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/pickup/slots": {
|
||
"get": {
|
||
"tags": [
|
||
"StorePickup"
|
||
],
|
||
"summary": "查询档期列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StorePickupSlotDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"StorePickup"
|
||
],
|
||
"summary": "创建档期。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStorePickupSlotCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStorePickupSlotCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStorePickupSlotCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStorePickupSlotCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StorePickupSlotDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/pickup/slots/{slotId}": {
|
||
"put": {
|
||
"tags": [
|
||
"StorePickup"
|
||
],
|
||
"summary": "更新档期。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "slotId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStorePickupSlotCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStorePickupSlotCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStorePickupSlotCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStorePickupSlotCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StorePickupSlotDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"StorePickup"
|
||
],
|
||
"summary": "删除档期。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "slotId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores": {
|
||
"post": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "创建门店。",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "查询门店列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "merchantId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "门店运营状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
},
|
||
{
|
||
"name": "sortBy",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "sortDesc",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean",
|
||
"default": true
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "获取门店详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "更新门店。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "删除门店。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/business-hours": {
|
||
"get": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "查询门店营业时段。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreBusinessHourDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "新增营业时段。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreBusinessHourCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreBusinessHourCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreBusinessHourCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreBusinessHourCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreBusinessHourDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/business-hours/{businessHourId}": {
|
||
"put": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "更新营业时段。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "businessHourId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreBusinessHourCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreBusinessHourCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreBusinessHourCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreBusinessHourCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreBusinessHourDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "删除营业时段。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "businessHourId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/delivery-zones": {
|
||
"get": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "查询配送区域。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreDeliveryZoneDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "新增配送区域。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreDeliveryZoneCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreDeliveryZoneCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreDeliveryZoneCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreDeliveryZoneCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreDeliveryZoneDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/delivery-zones/{deliveryZoneId}": {
|
||
"put": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "更新配送区域。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "deliveryZoneId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreDeliveryZoneCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreDeliveryZoneCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreDeliveryZoneCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreDeliveryZoneCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreDeliveryZoneDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "删除配送区域。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "deliveryZoneId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/holidays": {
|
||
"get": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "查询门店节假日。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreHolidayDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "新增节假日配置。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreHolidayCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreHolidayCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreHolidayCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreHolidayCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreHolidayDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/holidays/{holidayId}": {
|
||
"put": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "更新节假日配置。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "holidayId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreHolidayCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreHolidayCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreHolidayCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreHolidayCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreHolidayDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"Stores"
|
||
],
|
||
"summary": "删除节假日配置。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "holidayId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/shifts": {
|
||
"get": {
|
||
"tags": [
|
||
"StoreShifts"
|
||
],
|
||
"summary": "查询排班(默认未来 7 天)。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "from",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "to",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "staffId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreEmployeeShiftDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"StoreShifts"
|
||
],
|
||
"summary": "创建排班。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreEmployeeShiftCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreEmployeeShiftCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreEmployeeShiftCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreEmployeeShiftCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreEmployeeShiftDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/shifts/{shiftId}": {
|
||
"put": {
|
||
"tags": [
|
||
"StoreShifts"
|
||
],
|
||
"summary": "更新排班。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "shiftId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreEmployeeShiftCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreEmployeeShiftCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreEmployeeShiftCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreEmployeeShiftCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreEmployeeShiftDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"StoreShifts"
|
||
],
|
||
"summary": "删除排班。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "shiftId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/staffs": {
|
||
"get": {
|
||
"tags": [
|
||
"StoreStaffs"
|
||
],
|
||
"summary": "查询门店员工列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "role",
|
||
"in": "query",
|
||
"description": "商户员工角色。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StaffRoleType"
|
||
}
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "员工账号状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StaffStatus"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreStaffDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"StoreStaffs"
|
||
],
|
||
"summary": "创建门店员工。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreStaffCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreStaffCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreStaffCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreStaffCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreStaffDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/staffs/{staffId}": {
|
||
"put": {
|
||
"tags": [
|
||
"StoreStaffs"
|
||
],
|
||
"summary": "更新门店员工。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "staffId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreStaffCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreStaffCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreStaffCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreStaffCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreStaffDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"StoreStaffs"
|
||
],
|
||
"summary": "删除门店员工。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "staffId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/table-areas": {
|
||
"get": {
|
||
"tags": [
|
||
"StoreTableAreas"
|
||
],
|
||
"summary": "查询区域列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreTableAreaDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"StoreTableAreas"
|
||
],
|
||
"summary": "创建区域。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreTableAreaCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreTableAreaCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreTableAreaCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateStoreTableAreaCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreTableAreaDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/table-areas/{areaId}": {
|
||
"put": {
|
||
"tags": [
|
||
"StoreTableAreas"
|
||
],
|
||
"summary": "更新区域。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "areaId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreTableAreaCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreTableAreaCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreTableAreaCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreTableAreaCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreTableAreaDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"StoreTableAreas"
|
||
],
|
||
"summary": "删除区域。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "areaId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/tables": {
|
||
"get": {
|
||
"tags": [
|
||
"StoreTables"
|
||
],
|
||
"summary": "查询桌码列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "areaId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "桌台占用状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreTableStatus"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreTableDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"StoreTables"
|
||
],
|
||
"summary": "批量生成桌码。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GenerateStoreTablesCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GenerateStoreTablesCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GenerateStoreTablesCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GenerateStoreTablesCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreTableDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/tables/{tableId}": {
|
||
"put": {
|
||
"tags": [
|
||
"StoreTables"
|
||
],
|
||
"summary": "更新桌码。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "tableId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreTableCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreTableCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreTableCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateStoreTableCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/StoreTableDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"StoreTables"
|
||
],
|
||
"summary": "删除桌码。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "tableId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/stores/{storeId}/tables/export": {
|
||
"post": {
|
||
"tags": [
|
||
"StoreTables"
|
||
],
|
||
"summary": "导出桌码二维码 ZIP。",
|
||
"parameters": [
|
||
{
|
||
"name": "storeId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExportStoreTableQRCodesQuery"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExportStoreTableQRCodesQuery"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExportStoreTableQRCodesQuery"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ExportStoreTableQRCodesQuery"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "binary"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/system-parameters": {
|
||
"post": {
|
||
"tags": [
|
||
"SystemParameters"
|
||
],
|
||
"summary": "创建系统参数。",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateSystemParameterCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateSystemParameterCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateSystemParameterCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateSystemParameterCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SystemParameterDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"SystemParameters"
|
||
],
|
||
"summary": "查询系统参数列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "keyword",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "isEnabled",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
},
|
||
{
|
||
"name": "sortBy",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "sortDesc",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean",
|
||
"default": true
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SystemParameterDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/system-parameters/{parameterId}": {
|
||
"get": {
|
||
"tags": [
|
||
"SystemParameters"
|
||
],
|
||
"summary": "获取系统参数详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "parameterId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SystemParameterDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"SystemParameters"
|
||
],
|
||
"summary": "更新系统参数。",
|
||
"parameters": [
|
||
{
|
||
"name": "parameterId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateSystemParameterCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateSystemParameterCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateSystemParameterCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateSystemParameterCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SystemParameterDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"SystemParameters"
|
||
],
|
||
"summary": "删除系统参数。",
|
||
"parameters": [
|
||
{
|
||
"name": "parameterId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ObjectApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/announcements": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantAnnouncements"
|
||
],
|
||
"summary": "分页查询公告。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "TenantId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "AnnouncementType",
|
||
"in": "query",
|
||
"description": "租户公告类型。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementType"
|
||
}
|
||
},
|
||
{
|
||
"name": "IsActive",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
{
|
||
"name": "OnlyEffective",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"TenantAnnouncements"
|
||
],
|
||
"summary": "创建公告。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantAnnouncementCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantAnnouncementCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantAnnouncementCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantAnnouncementCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/announcements/{announcementId}": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantAnnouncements"
|
||
],
|
||
"summary": "公告详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "announcementId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"TenantAnnouncements"
|
||
],
|
||
"summary": "更新公告。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "announcementId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateTenantAnnouncementCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateTenantAnnouncementCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateTenantAnnouncementCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateTenantAnnouncementCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"TenantAnnouncements"
|
||
],
|
||
"summary": "删除公告。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "announcementId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BooleanApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/announcements/{announcementId}/read": {
|
||
"post": {
|
||
"tags": [
|
||
"TenantAnnouncements"
|
||
],
|
||
"summary": "标记公告已读。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "announcementId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/billings": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantBillings"
|
||
],
|
||
"summary": "分页查询账单。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "TenantId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "Status",
|
||
"in": "query",
|
||
"description": "账单状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantBillingStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "From",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "To",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantBillingDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"TenantBillings"
|
||
],
|
||
"summary": "创建账单。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantBillingCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantBillingCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantBillingCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantBillingCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantBillingDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/billings/{billingId}": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantBillings"
|
||
],
|
||
"summary": "账单详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "billingId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantBillingDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantBillingDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/billings/{billingId}/pay": {
|
||
"post": {
|
||
"tags": [
|
||
"TenantBillings"
|
||
],
|
||
"summary": "标记账单已支付。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "billingId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MarkTenantBillingPaidCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MarkTenantBillingPaidCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MarkTenantBillingPaidCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MarkTenantBillingPaidCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantBillingDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantBillingDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/notifications": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantNotifications"
|
||
],
|
||
"summary": "分页查询通知。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "TenantId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "Severity",
|
||
"in": "query",
|
||
"description": "租户通知的重要程度。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantNotificationSeverity"
|
||
}
|
||
},
|
||
{
|
||
"name": "UnreadOnly",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantNotificationDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/notifications/{notificationId}/read": {
|
||
"post": {
|
||
"tags": [
|
||
"TenantNotifications"
|
||
],
|
||
"summary": "标记通知已读。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "notificationId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantNotificationDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantNotificationDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenant-packages": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantPackages"
|
||
],
|
||
"summary": "分页查询租户套餐。",
|
||
"parameters": [
|
||
{
|
||
"name": "Keyword",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "IsActive",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantPackageDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"TenantPackages"
|
||
],
|
||
"summary": "创建套餐。",
|
||
"requestBody": {
|
||
"description": "创建命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantPackageCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantPackageCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantPackageCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantPackageCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantPackageDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenant-packages/{tenantPackageId}": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantPackages"
|
||
],
|
||
"summary": "查看套餐详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantPackageId",
|
||
"in": "path",
|
||
"description": "套餐 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantPackageDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantPackageDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"TenantPackages"
|
||
],
|
||
"summary": "更新套餐。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantPackageId",
|
||
"in": "path",
|
||
"description": "套餐 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"description": "更新命令。",
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateTenantPackageCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateTenantPackageCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateTenantPackageCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateTenantPackageCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantPackageDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantPackageDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"TenantPackages"
|
||
],
|
||
"summary": "删除套餐。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantPackageId",
|
||
"in": "path",
|
||
"description": "套餐 ID。",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BooleanApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/roles": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantRoles"
|
||
],
|
||
"summary": "租户角色分页。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "TenantId",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "Keyword",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "SortBy",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "SortDescending",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"post": {
|
||
"tags": [
|
||
"TenantRoles"
|
||
],
|
||
"summary": "创建角色。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateRoleCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateRoleCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateRoleCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateRoleCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/roles/{roleId}": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantRoles"
|
||
],
|
||
"summary": "角色详情(含权限)。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "roleId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleDetailDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleDetailDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"TenantRoles"
|
||
],
|
||
"summary": "更新角色。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "roleId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateRoleCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateRoleCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateRoleCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UpdateRoleCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RoleDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"TenantRoles"
|
||
],
|
||
"summary": "删除角色。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "roleId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BooleanApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/roles/{roleId}/permissions": {
|
||
"get": {
|
||
"tags": [
|
||
"TenantRoles"
|
||
],
|
||
"summary": "获取角色权限列表。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "roleId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "Not Found",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PermissionDtoIReadOnlyListApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"TenantRoles"
|
||
],
|
||
"summary": "覆盖角色权限。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "roleId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BindRolePermissionsCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BindRolePermissionsCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BindRolePermissionsCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BindRolePermissionsCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/BooleanApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants": {
|
||
"post": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "注册租户并初始化套餐。",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RegisterTenantCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RegisterTenantCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RegisterTenantCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/RegisterTenantCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"get": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "分页查询租户。",
|
||
"parameters": [
|
||
{
|
||
"name": "Status",
|
||
"in": "query",
|
||
"description": "租户服务状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "VerificationStatus",
|
||
"in": "query",
|
||
"description": "租户实名认证状态。",
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantVerificationStatus"
|
||
}
|
||
},
|
||
{
|
||
"name": "Name",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "ContactName",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "ContactPhone",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "Keyword",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}": {
|
||
"get": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "查看租户详情。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantDetailDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/verification": {
|
||
"post": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "提交或更新实名认证资料。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SubmitTenantVerificationCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SubmitTenantVerificationCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SubmitTenantVerificationCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SubmitTenantVerificationCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantVerificationDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/review": {
|
||
"post": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "审核租户。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewTenantCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewTenantCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewTenantCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReviewTenantCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/subscriptions": {
|
||
"post": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "创建或续费租户订阅。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantSubscriptionCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantSubscriptionCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantSubscriptionCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateTenantSubscriptionCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantSubscriptionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/subscriptions/{subscriptionId}/plan": {
|
||
"put": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "套餐升降配。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "subscriptionId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeTenantSubscriptionPlanCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeTenantSubscriptionPlanCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeTenantSubscriptionPlanCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeTenantSubscriptionPlanCommand"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantSubscriptionDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/audits": {
|
||
"get": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "查询审核日志。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 1
|
||
}
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 20
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TenantAuditLogDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/tenants/{tenantId}/quotas/check": {
|
||
"post": {
|
||
"tags": [
|
||
"Tenants"
|
||
],
|
||
"summary": "配额校验并占用额度(门店/账号/短信/配送)。",
|
||
"description": "需在请求头携带 X-Tenant-Id 对应的租户。",
|
||
"parameters": [
|
||
{
|
||
"name": "tenantId",
|
||
"in": "path",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json-patch+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CheckTenantQuotaCommand"
|
||
}
|
||
},
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CheckTenantQuotaCommand"
|
||
}
|
||
},
|
||
"text/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CheckTenantQuotaCommand"
|
||
}
|
||
},
|
||
"application/*+json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CheckTenantQuotaCommand"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/QuotaCheckResultDtoApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"/api/admin/v1/users/permissions": {
|
||
"get": {
|
||
"tags": [
|
||
"UserPermissions"
|
||
],
|
||
"summary": "分页查询当前租户用户的角色与权限概览。",
|
||
"description": "示例:\n```\nGET /api/admin/v1/users/permissions?keyword=ops&page=1&pageSize=20&sortBy=createdAt&sortDescending=true\nHeader: Authorization: Bearer <JWT>\n响应:\n{\n \"success\": true,\n \"code\": 200,\n \"data\": {\n \"items\": [\n {\n \"userId\": \"900123456789012346\",\n \"tenantId\": \"100000000000000001\",\n \"merchantId\": \"200000000000000001\",\n \"account\": \"ops.manager\",\n \"displayName\": \"运营经理\",\n \"roles\": [\"OpsManager\", \"Reporter\"],\n \"permissions\": [\"delivery:read\", \"order:read\", \"payment:read\"],\n \"createdAt\": \"2025-12-01T08:30:00Z\"\n }\n ],\n \"page\": 1,\n \"pageSize\": 20,\n \"totalCount\": 1,\n \"totalPages\": 1\n }\n}\n```",
|
||
"parameters": [
|
||
{
|
||
"name": "Keyword",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "Page",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "PageSize",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"name": "SortBy",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"name": "SortDescending",
|
||
"in": "query",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/UserPermissionDtoPagedResultApiResponse"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"components": {
|
||
"schemas": {
|
||
"AddMerchantDocumentCommand": {
|
||
"required": [
|
||
"documentType",
|
||
"fileUrl",
|
||
"merchantId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"documentType": {
|
||
"$ref": "#/components/schemas/MerchantDocumentType"
|
||
},
|
||
"fileUrl": {
|
||
"maxLength": 512,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"documentNumber": {
|
||
"maxLength": 64,
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"issuedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"expiresAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AdjustInventoryCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productSkuId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"quantityDelta": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"adjustmentType": {
|
||
"$ref": "#/components/schemas/InventoryAdjustmentType"
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"safetyStock": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"isSoldOut": {
|
||
"type": "boolean",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"AdminLoginRequest": {
|
||
"required": [
|
||
"account",
|
||
"password"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"account": {
|
||
"maxLength": 64,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"password": {
|
||
"maxLength": 128,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"BindInitialTenantSubscriptionCommand": {
|
||
"required": [
|
||
"tenantId",
|
||
"tenantPackageId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantPackageId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"autoRenew": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"BindRolePermissionsCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"roleId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"permissionIds": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"BooleanApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "boolean",
|
||
"description": "业务数据。"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"BusinessHourType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "营业时段类型。",
|
||
"format": "int32"
|
||
},
|
||
"ChangeTenantSubscriptionPlanCommand": {
|
||
"required": [
|
||
"targetPackageId",
|
||
"tenantId",
|
||
"tenantSubscriptionId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantSubscriptionId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"targetPackageId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"immediate": {
|
||
"type": "boolean"
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CheckTenantQuotaCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"quotaType": {
|
||
"$ref": "#/components/schemas/TenantQuotaType"
|
||
},
|
||
"delta": {
|
||
"type": "number",
|
||
"format": "double"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CloneRoleTemplateCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"sourceTemplateCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"newTemplateCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean",
|
||
"nullable": true
|
||
},
|
||
"permissionCodes": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ContractStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "商户合同状态。",
|
||
"format": "int32"
|
||
},
|
||
"CreateDeliveryOrderCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"provider": {
|
||
"$ref": "#/components/schemas/DeliveryProvider"
|
||
},
|
||
"providerOrderId": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/DeliveryStatus"
|
||
},
|
||
"deliveryFee": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"courierName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"courierPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"dispatchedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"pickedUpAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"deliveredAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"failureReason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateDictionaryGroupRequest": {
|
||
"required": [
|
||
"code",
|
||
"name",
|
||
"scope"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"maxLength": 64,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"maxLength": 128,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"scope": {
|
||
"$ref": "#/components/schemas/DictionaryScope"
|
||
},
|
||
"description": {
|
||
"maxLength": 512,
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateDictionaryItemRequest": {
|
||
"required": [
|
||
"groupId",
|
||
"key",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"groupId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"key": {
|
||
"maxLength": 64,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"value": {
|
||
"maxLength": 256,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"isDefault": {
|
||
"type": "boolean"
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"description": {
|
||
"maxLength": 512,
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateMenuCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"parentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"path": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"component": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"icon": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isIframe": {
|
||
"type": "boolean"
|
||
},
|
||
"link": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"keepAlive": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"requiredPermissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"metaPermissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"metaRoles": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"authList": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MenuAuthItemDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateMerchantCategoryCommand": {
|
||
"required": [
|
||
"name"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"name": {
|
||
"maxLength": 64,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"displayOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateMerchantCommand": {
|
||
"required": [
|
||
"brandName",
|
||
"contactPhone"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"brandName": {
|
||
"maxLength": 128,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"brandAlias": {
|
||
"maxLength": 64,
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"logoUrl": {
|
||
"maxLength": 256,
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"category": {
|
||
"maxLength": 64,
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactPhone": {
|
||
"maxLength": 32,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"contactEmail": {
|
||
"maxLength": 128,
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/MerchantStatus"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateMerchantContractCommand": {
|
||
"required": [
|
||
"contractNumber",
|
||
"fileUrl",
|
||
"merchantId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"contractNumber": {
|
||
"maxLength": 64,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"endDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"fileUrl": {
|
||
"maxLength": 512,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateOrderCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"orderNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"channel": {
|
||
"$ref": "#/components/schemas/OrderChannel"
|
||
},
|
||
"deliveryType": {
|
||
"$ref": "#/components/schemas/DeliveryType"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/OrderStatus"
|
||
},
|
||
"paymentStatus": {
|
||
"$ref": "#/components/schemas/PaymentStatus"
|
||
},
|
||
"customerName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"customerPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"tableNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"queueNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"reservationId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"itemsAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"discountAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"payableAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"paidAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"paidAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"finishedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"cancelledAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"cancelReason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"remark": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/OrderItemRequest"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreatePaymentCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"method": {
|
||
"$ref": "#/components/schemas/PaymentMethod"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/PaymentStatus"
|
||
},
|
||
"amount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"tradeNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"channelTransactionId": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"paidAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"remark": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"payload": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreatePermissionCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"parentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"type": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateProductCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"categoryId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"spuCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"subtitle": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"unit": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"price": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"originalPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"stockQuantity": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxQuantityPerOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/ProductStatus"
|
||
},
|
||
"coverImage": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"galleryImages": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"enableDineIn": {
|
||
"type": "boolean"
|
||
},
|
||
"enablePickup": {
|
||
"type": "boolean"
|
||
},
|
||
"enableDelivery": {
|
||
"type": "boolean"
|
||
},
|
||
"isFeatured": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateRoleCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateRoleTemplateCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"templateCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
},
|
||
"permissionCodes": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateStoreBusinessHourCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"dayOfWeek": {
|
||
"$ref": "#/components/schemas/DayOfWeek"
|
||
},
|
||
"hourType": {
|
||
"$ref": "#/components/schemas/BusinessHourType"
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"capacityLimit": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateStoreCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"phone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"managerName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/StoreStatus"
|
||
},
|
||
"province": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"city": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"district": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"address": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"longitude": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"latitude": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"announcement": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"tags": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"deliveryRadiusKm": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"supportsDineIn": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsPickup": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsDelivery": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsReservation": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsQueueing": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateStoreDeliveryZoneCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"zoneName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"polygonGeoJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"minimumOrderAmount": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"deliveryFee": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"estimatedMinutes": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateStoreEmployeeShiftCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"staffId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"shiftDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"roleType": {
|
||
"$ref": "#/components/schemas/StaffRoleType"
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateStoreHolidayCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"date": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"isClosed": {
|
||
"type": "boolean"
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateStorePickupSlotCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"cutoffMinutes": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"capacity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"weekdays": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateStoreStaffCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"phone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"email": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"roleType": {
|
||
"$ref": "#/components/schemas/StaffRoleType"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateStoreTableAreaCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateSystemParameterCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"key": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateTenantAnnouncementCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"content": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"announcementType": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementType"
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"effectiveFrom": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"effectiveTo": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateTenantBillingCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"statementNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"periodStart": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"periodEnd": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"amountDue": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"amountPaid": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/TenantBillingStatus"
|
||
},
|
||
"dueDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"lineItemsJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateTenantPackageCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"packageType": {
|
||
"$ref": "#/components/schemas/TenantPackageType"
|
||
},
|
||
"monthlyPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"yearlyPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"maxStoreCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxAccountCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxStorageGb": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxSmsCredits": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxDeliveryOrders": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"featurePoliciesJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CreateTenantSubscriptionCommand": {
|
||
"required": [
|
||
"tenantId",
|
||
"tenantPackageId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantPackageId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"durationMonths": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"autoRenew": {
|
||
"type": "boolean"
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CurrentUserProfile": {
|
||
"type": "object",
|
||
"properties": {
|
||
"userId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"account": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"displayName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"roles": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"avatar": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"CurrentUserProfileApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/CurrentUserProfile"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"DayOfWeek": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5,
|
||
6
|
||
],
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"DeductInventoryCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productSkuId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"isPresaleOrder": {
|
||
"type": "boolean"
|
||
},
|
||
"idempotencyKey": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"DeliveryEventDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"deliveryOrderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"eventType": {
|
||
"$ref": "#/components/schemas/DeliveryEventType"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"occurredAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"payload": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"DeliveryEventType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2
|
||
],
|
||
"type": "integer",
|
||
"description": "配送事件类型。",
|
||
"format": "int32"
|
||
},
|
||
"DeliveryOrderDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"provider": {
|
||
"$ref": "#/components/schemas/DeliveryProvider"
|
||
},
|
||
"providerOrderId": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/DeliveryStatus"
|
||
},
|
||
"deliveryFee": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"courierName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"courierPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"dispatchedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"pickedUpAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"deliveredAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"failureReason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"events": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/DeliveryEventDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"DeliveryOrderDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/DeliveryOrderDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"DeliveryOrderDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/DeliveryOrderDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"DeliveryOrderDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/DeliveryOrderDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"DeliveryProvider": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5
|
||
],
|
||
"type": "integer",
|
||
"description": "配送服务商类型。",
|
||
"format": "int32"
|
||
},
|
||
"DeliveryStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5,
|
||
6
|
||
],
|
||
"type": "integer",
|
||
"description": "配送状态。",
|
||
"format": "int32"
|
||
},
|
||
"DeliveryType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2
|
||
],
|
||
"type": "integer",
|
||
"description": "履约/交付方式。",
|
||
"format": "int32"
|
||
},
|
||
"DictionaryBatchQueryRequest": {
|
||
"required": [
|
||
"codes"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"codes": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"DictionaryGroupDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"scope": {
|
||
"$ref": "#/components/schemas/DictionaryScope"
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/DictionaryItemDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"DictionaryGroupDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/DictionaryGroupDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"DictionaryGroupDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/DictionaryGroupDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"DictionaryItemDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"groupId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"key": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isDefault": {
|
||
"type": "boolean"
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"DictionaryItemDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/DictionaryItemDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"DictionaryScope": {
|
||
"enum": [
|
||
1,
|
||
2
|
||
],
|
||
"type": "integer",
|
||
"description": "参数字典作用域。",
|
||
"format": "int32"
|
||
},
|
||
"ExportStoreTableQRCodesQuery": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"areaId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"qrContentTemplate": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"FileUploadResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"url": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"fileName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"fileSize": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"FileUploadResponseApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/FileUploadResponse"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"GenerateStoreTablesCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tableCodePrefix": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"startNumber": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"count": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"defaultCapacity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"areaId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"tags": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InitializeRoleTemplatesCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"templateCodes": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"Int32ApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "integer",
|
||
"description": "业务数据。",
|
||
"format": "int32"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"InventoryAdjustmentType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4
|
||
],
|
||
"type": "integer",
|
||
"description": "库存调整类型。",
|
||
"format": "int32"
|
||
},
|
||
"InventoryBatchDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productSkuId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"batchNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"productionDate": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"expireDate": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"remainingQuantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InventoryBatchDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/InventoryBatchDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"InventoryBatchDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/InventoryBatchDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"InventoryItemDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productSkuId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"batchNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"quantityOnHand": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"quantityReserved": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"safetyStock": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"location": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"expireDate": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"isPresale": {
|
||
"type": "boolean"
|
||
},
|
||
"presaleStartTime": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"presaleEndTime": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"presaleCapacity": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"presaleLocked": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"maxQuantityPerOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"isSoldOut": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"InventoryItemDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/InventoryItemDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"LockInventoryCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productSkuId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"isPresaleOrder": {
|
||
"type": "boolean"
|
||
},
|
||
"expiresAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"idempotencyKey": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MarkTenantBillingPaidCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"billingId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"amountPaid": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"paidAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MediaAssetType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2
|
||
],
|
||
"type": "integer",
|
||
"description": "商品媒资类型。",
|
||
"format": "int32"
|
||
},
|
||
"MenuAuthItemDto": {
|
||
"required": [
|
||
"authMark",
|
||
"title"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"authMark": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MenuDefinitionDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"parentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"path": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"component": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"icon": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isIframe": {
|
||
"type": "boolean"
|
||
},
|
||
"link": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"keepAlive": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"requiredPermissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"metaPermissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"metaRoles": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"authList": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MenuAuthItemDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MenuDefinitionDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/MenuDefinitionDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MenuDefinitionDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MenuDefinitionDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MenuMetaDto": {
|
||
"required": [
|
||
"title"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"icon": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"keepAlive": {
|
||
"type": "boolean"
|
||
},
|
||
"isIframe": {
|
||
"type": "boolean"
|
||
},
|
||
"link": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"roles": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"authList": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MenuAuthItemDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MenuNodeDto": {
|
||
"required": [
|
||
"component",
|
||
"meta",
|
||
"name",
|
||
"path"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"path": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"component": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"meta": {
|
||
"$ref": "#/components/schemas/MenuMetaDto"
|
||
},
|
||
"children": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MenuNodeDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MenuNodeDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MenuNodeDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantAuditAction": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5
|
||
],
|
||
"type": "integer",
|
||
"description": "商户审核日志动作。",
|
||
"format": "int32"
|
||
},
|
||
"MerchantAuditLogDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"action": {
|
||
"$ref": "#/components/schemas/MerchantAuditAction"
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"operatorName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MerchantAuditLogDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MerchantAuditLogDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"MerchantAuditLogDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/MerchantAuditLogDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantCategoryDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"displayOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MerchantCategoryDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/MerchantCategoryDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantCategoryDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MerchantCategoryDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantCategoryOrderItem": {
|
||
"required": [
|
||
"categoryId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"categoryId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"displayOrder": {
|
||
"maximum": 100000,
|
||
"minimum": -1000,
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MerchantContractDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"contractNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/ContractStatus"
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"endDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"fileUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"signedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"terminatedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"terminationReason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MerchantContractDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/MerchantContractDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantContractDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MerchantContractDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantDetailDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"merchant": {
|
||
"$ref": "#/components/schemas/MerchantDto"
|
||
},
|
||
"documents": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MerchantDocumentDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"contracts": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MerchantContractDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MerchantDetailDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/MerchantDetailDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantDocumentDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"documentType": {
|
||
"$ref": "#/components/schemas/MerchantDocumentType"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/MerchantDocumentStatus"
|
||
},
|
||
"fileUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"documentNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"issuedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"expiresAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"remarks": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MerchantDocumentDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/MerchantDocumentDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantDocumentDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MerchantDocumentDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantDocumentStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "证照审核状态。",
|
||
"format": "int32"
|
||
},
|
||
"MerchantDocumentType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
99
|
||
],
|
||
"type": "integer",
|
||
"description": "商户证照类型。",
|
||
"format": "int32"
|
||
},
|
||
"MerchantDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"brandName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"brandAlias": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"logoUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"category": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactEmail": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/MerchantStatus"
|
||
},
|
||
"joinedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"MerchantDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/MerchantDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MerchantDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"MerchantStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "商户入驻状态。",
|
||
"format": "int32"
|
||
},
|
||
"ObjectApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"OrderChannel": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5
|
||
],
|
||
"type": "integer",
|
||
"description": "下单渠道。",
|
||
"format": "int32"
|
||
},
|
||
"OrderDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"channel": {
|
||
"$ref": "#/components/schemas/OrderChannel"
|
||
},
|
||
"deliveryType": {
|
||
"$ref": "#/components/schemas/DeliveryType"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/OrderStatus"
|
||
},
|
||
"paymentStatus": {
|
||
"$ref": "#/components/schemas/PaymentStatus"
|
||
},
|
||
"customerName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"customerPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"tableNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"queueNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"reservationId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"itemsAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"discountAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"payableAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"paidAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"paidAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"finishedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"cancelledAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"cancelReason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"remark": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/OrderItemDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"statusHistory": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/OrderStatusHistoryDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"refunds": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/RefundRequestDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"OrderDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/OrderDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"OrderDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/OrderDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"OrderDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/OrderDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"OrderItemDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"skuName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"unit": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"unitPrice": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"discountAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"subTotal": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"attributesJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"OrderItemRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"skuName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"unit": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"unitPrice": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"discountAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"subTotal": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"attributesJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"OrderStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5
|
||
],
|
||
"type": "integer",
|
||
"description": "订单状态。",
|
||
"format": "int32"
|
||
},
|
||
"OrderStatusHistoryDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/OrderStatus"
|
||
},
|
||
"operatorId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"occurredAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PaymentDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"method": {
|
||
"$ref": "#/components/schemas/PaymentMethod"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/PaymentStatus"
|
||
},
|
||
"amount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"tradeNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"channelTransactionId": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"paidAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"remark": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"payload": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"refunds": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PaymentRefundDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PaymentDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/PaymentDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"PaymentDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PaymentDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"PaymentDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/PaymentDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"PaymentMethod": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5
|
||
],
|
||
"type": "integer",
|
||
"description": "支付方式。",
|
||
"format": "int32"
|
||
},
|
||
"PaymentRefundDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"paymentRecordId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"amount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"channelRefundId": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/PaymentRefundStatus"
|
||
},
|
||
"payload": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PaymentRefundStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "支付退款状态。",
|
||
"format": "int32"
|
||
},
|
||
"PaymentStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4
|
||
],
|
||
"type": "integer",
|
||
"description": "支付记录状态。",
|
||
"format": "int32"
|
||
},
|
||
"PermissionDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"parentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"type": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PermissionDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/PermissionDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"PermissionDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PermissionDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"PermissionDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PermissionDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"PermissionDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/PermissionDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"PermissionTemplateDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PermissionTemplateDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PermissionTemplateDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"PermissionTreeDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"parentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"type": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"children": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PermissionTreeDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"PermissionTreeDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PermissionTreeDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"PricingRuleType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4
|
||
],
|
||
"type": "integer",
|
||
"description": "价格策略类型。",
|
||
"format": "int32"
|
||
},
|
||
"ProductAddonGroupDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"minSelect": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"maxSelect": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"options": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductAddonOptionDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductAddonGroupDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductAddonGroupDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"ProductAddonOptionDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"addonGroupId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"extraPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductAttributeGroupDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"selectionType": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"options": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductAttributeOptionDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductAttributeGroupDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductAttributeGroupDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"ProductAttributeOptionDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"attributeGroupId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductDetailDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"product": {
|
||
"$ref": "#/components/schemas/ProductDto"
|
||
},
|
||
"skus": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductSkuDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"attributeGroups": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductAttributeGroupDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"addonGroups": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductAddonGroupDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"pricingRules": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductPricingRuleDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"mediaAssets": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductMediaAssetDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductDetailDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/ProductDetailDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"ProductDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"categoryId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"spuCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"subtitle": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"unit": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"price": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"originalPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"stockQuantity": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxQuantityPerOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/ProductStatus"
|
||
},
|
||
"coverImage": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"galleryImages": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"enableDineIn": {
|
||
"type": "boolean"
|
||
},
|
||
"enablePickup": {
|
||
"type": "boolean"
|
||
},
|
||
"enableDelivery": {
|
||
"type": "boolean"
|
||
},
|
||
"isFeatured": {
|
||
"type": "boolean"
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/ProductDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"ProductDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"ProductDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/ProductDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"ProductMediaAssetDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"mediaType": {
|
||
"$ref": "#/components/schemas/MediaAssetType"
|
||
},
|
||
"url": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"caption": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductMediaAssetDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductMediaAssetDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"ProductPricingRuleDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"ruleType": {
|
||
"$ref": "#/components/schemas/PricingRuleType"
|
||
},
|
||
"price": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"conditionsJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"weekdaysJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductPricingRuleDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductPricingRuleDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"ProductSkuDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"skuCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"barcode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"price": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"originalPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"stockQuantity": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"weight": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"attributesJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ProductSkuDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductSkuDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"ProductStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "商品状态。",
|
||
"format": "int32"
|
||
},
|
||
"PublishProductCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QuotaCheckResultDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"quotaType": {
|
||
"$ref": "#/components/schemas/TenantQuotaType"
|
||
},
|
||
"limit": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"used": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"remaining": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"QuotaCheckResultDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/QuotaCheckResultDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"RefreshTokenRequest": {
|
||
"required": [
|
||
"refreshToken"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"refreshToken": {
|
||
"maxLength": 256,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RefundRequestDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"refundNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"amount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/RefundStatus"
|
||
},
|
||
"requestedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"processedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"reviewNotes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RefundStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "退款申请状态。",
|
||
"format": "int32"
|
||
},
|
||
"RegisterTenantCommand": {
|
||
"required": [
|
||
"code",
|
||
"name",
|
||
"tenantPackageId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"maxLength": 64,
|
||
"minLength": 0,
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"maxLength": 128,
|
||
"minLength": 0,
|
||
"type": "string"
|
||
},
|
||
"shortName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"industry": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactEmail": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"tenantPackageId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"durationMonths": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"autoRenew": {
|
||
"type": "boolean"
|
||
},
|
||
"effectiveFrom": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReleaseInventoryCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productSkuId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"isPresaleOrder": {
|
||
"type": "boolean"
|
||
},
|
||
"idempotencyKey": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReorderMerchantCategoriesCommand": {
|
||
"required": [
|
||
"items"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"minItems": 1,
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MerchantCategoryOrderItem"
|
||
}
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReplaceProductAddonsCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"addonGroups": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductAddonGroupDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReplaceProductAttributesCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"attributeGroups": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductAttributeGroupDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReplaceProductMediaCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"mediaAssets": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductMediaAssetDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReplaceProductPricingRulesCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"pricingRules": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductPricingRuleDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReplaceProductSkusCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"skus": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ProductSkuDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReviewMerchantCommand": {
|
||
"required": [
|
||
"merchantId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"approve": {
|
||
"type": "boolean"
|
||
},
|
||
"remarks": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReviewMerchantDocumentCommand": {
|
||
"required": [
|
||
"documentId",
|
||
"merchantId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"documentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"approve": {
|
||
"type": "boolean"
|
||
},
|
||
"remarks": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"ReviewTenantCommand": {
|
||
"required": [
|
||
"tenantId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"approve": {
|
||
"type": "boolean"
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RoleDetailDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PermissionDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RoleDetailDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/RoleDetailDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"RoleDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RoleDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/RoleDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"RoleDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/RoleDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"RoleDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/RoleDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"RoleDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/RoleDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"RoleTemplateDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"templateCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/PermissionTemplateDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"RoleTemplateDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/RoleTemplateDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"RoleTemplateDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/RoleTemplateDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"SelfRegisterResultDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/TenantStatus"
|
||
},
|
||
"verificationStatus": {
|
||
"$ref": "#/components/schemas/TenantVerificationStatus"
|
||
},
|
||
"effectiveFrom": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"effectiveTo": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"adminAccount": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SelfRegisterResultDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/SelfRegisterResultDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"SelfRegisterTenantCommand": {
|
||
"required": [
|
||
"adminAccount",
|
||
"adminPassword",
|
||
"adminPhone"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"adminAccount": {
|
||
"maxLength": 64,
|
||
"minLength": 0,
|
||
"pattern": "^[A-Za-z0-9]+$",
|
||
"type": "string"
|
||
},
|
||
"adminDisplayName": {
|
||
"maxLength": 64,
|
||
"minLength": 0,
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"adminEmail": {
|
||
"maxLength": 128,
|
||
"minLength": 0,
|
||
"type": "string",
|
||
"format": "email",
|
||
"nullable": true
|
||
},
|
||
"adminPhone": {
|
||
"maxLength": 32,
|
||
"minLength": 0,
|
||
"type": "string"
|
||
},
|
||
"adminPassword": {
|
||
"maxLength": 128,
|
||
"minLength": 8,
|
||
"type": "string"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StaffRoleType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4
|
||
],
|
||
"type": "integer",
|
||
"description": "商户员工角色。",
|
||
"format": "int32"
|
||
},
|
||
"StaffStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2
|
||
],
|
||
"type": "integer",
|
||
"description": "员工账号状态。",
|
||
"format": "int32"
|
||
},
|
||
"StoreBusinessHourDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"dayOfWeek": {
|
||
"$ref": "#/components/schemas/DayOfWeek"
|
||
},
|
||
"hourType": {
|
||
"$ref": "#/components/schemas/BusinessHourType"
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"capacityLimit": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StoreBusinessHourDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreBusinessHourDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreBusinessHourDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StoreBusinessHourDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreDeliveryZoneDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"zoneName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"polygonGeoJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"minimumOrderAmount": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"deliveryFee": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"estimatedMinutes": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StoreDeliveryZoneDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreDeliveryZoneDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreDeliveryZoneDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StoreDeliveryZoneDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"phone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"managerName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/StoreStatus"
|
||
},
|
||
"province": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"city": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"district": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"address": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"longitude": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"latitude": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"announcement": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"tags": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"deliveryRadiusKm": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"supportsDineIn": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsPickup": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsDelivery": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsReservation": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsQueueing": {
|
||
"type": "boolean"
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StoreDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StoreDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"StoreDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreEmployeeShiftDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"staffId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"shiftDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"roleType": {
|
||
"$ref": "#/components/schemas/StaffRoleType"
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StoreEmployeeShiftDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreEmployeeShiftDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreEmployeeShiftDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StoreEmployeeShiftDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreHolidayDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"date": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"isClosed": {
|
||
"type": "boolean"
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StoreHolidayDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreHolidayDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreHolidayDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StoreHolidayDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StorePickupSettingDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"allowToday": {
|
||
"type": "boolean"
|
||
},
|
||
"allowDaysAhead": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"defaultCutoffMinutes": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"maxQuantityPerOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StorePickupSettingDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StorePickupSettingDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StorePickupSlotDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"cutoffMinutes": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"capacity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"reservedCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"weekdays": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StorePickupSlotDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StorePickupSlotDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StorePickupSlotDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StorePickupSlotDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreStaffDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"phone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"email": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"roleType": {
|
||
"$ref": "#/components/schemas/StaffRoleType"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/StaffStatus"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StoreStaffDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreStaffDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreStaffDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StoreStaffDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "门店运营状态。",
|
||
"format": "int32"
|
||
},
|
||
"StoreTableAreaDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StoreTableAreaDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreTableAreaDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreTableAreaDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StoreTableAreaDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreTableDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"areaId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"tableCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"capacity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"tags": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/StoreTableStatus"
|
||
},
|
||
"qrCodeUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"StoreTableDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/StoreTableDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreTableDtoIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/StoreTableDto"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StoreTableStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "桌台占用状态。",
|
||
"format": "int32"
|
||
},
|
||
"StringDictionaryItemDtoIReadOnlyListIReadOnlyDictionaryApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/DictionaryItemDto"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"StringIReadOnlyListApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "业务数据。",
|
||
"nullable": true
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"SubmitTenantVerificationCommand": {
|
||
"required": [
|
||
"tenantId"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"businessLicenseNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"businessLicenseUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"legalPersonName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"legalPersonIdNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"legalPersonIdFrontUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"legalPersonIdBackUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"bankAccountName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"bankAccountNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"bankName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"additionalDataJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SubscriptionStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4
|
||
],
|
||
"type": "integer",
|
||
"description": "订阅状态。",
|
||
"format": "int32"
|
||
},
|
||
"SystemParameterDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"key": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"SystemParameterDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/SystemParameterDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"SystemParameterDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/SystemParameterDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"SystemParameterDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/SystemParameterDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantAnnouncementDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"content": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"announcementType": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementType"
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"effectiveFrom": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"effectiveTo": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
},
|
||
"isRead": {
|
||
"type": "boolean"
|
||
},
|
||
"readAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantAnnouncementDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantAnnouncementDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"TenantAnnouncementDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantAnnouncementType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2
|
||
],
|
||
"type": "integer",
|
||
"description": "租户公告类型。",
|
||
"format": "int32"
|
||
},
|
||
"TenantAuditAction": {
|
||
"enum": [
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5,
|
||
6,
|
||
7
|
||
],
|
||
"type": "integer",
|
||
"description": "租户运营审核动作。",
|
||
"format": "int32"
|
||
},
|
||
"TenantAuditLogDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"action": {
|
||
"$ref": "#/components/schemas/TenantAuditAction"
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"operatorName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"previousStatus": {
|
||
"$ref": "#/components/schemas/TenantStatus"
|
||
},
|
||
"currentStatus": {
|
||
"$ref": "#/components/schemas/TenantStatus"
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantAuditLogDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TenantAuditLogDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"TenantAuditLogDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantAuditLogDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantBillingDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"statementNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"periodStart": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"periodEnd": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"amountDue": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"amountPaid": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/TenantBillingStatus"
|
||
},
|
||
"dueDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"lineItemsJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantBillingDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantBillingDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantBillingDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TenantBillingDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"TenantBillingDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantBillingDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantBillingStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "账单状态。",
|
||
"format": "int32"
|
||
},
|
||
"TenantDetailDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenant": {
|
||
"$ref": "#/components/schemas/TenantDto"
|
||
},
|
||
"verification": {
|
||
"$ref": "#/components/schemas/TenantVerificationDto"
|
||
},
|
||
"subscription": {
|
||
"$ref": "#/components/schemas/TenantSubscriptionDto"
|
||
},
|
||
"package": {
|
||
"$ref": "#/components/schemas/TenantPackageDto"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantDetailDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantDetailDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"shortName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactEmail": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/TenantStatus"
|
||
},
|
||
"verificationStatus": {
|
||
"$ref": "#/components/schemas/TenantVerificationStatus"
|
||
},
|
||
"currentPackageId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"effectiveFrom": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"effectiveTo": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"autoRenew": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TenantDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"TenantDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantNotificationChannel": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "通知推送渠道。",
|
||
"format": "int32"
|
||
},
|
||
"TenantNotificationDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"channel": {
|
||
"$ref": "#/components/schemas/TenantNotificationChannel"
|
||
},
|
||
"severity": {
|
||
"$ref": "#/components/schemas/TenantNotificationSeverity"
|
||
},
|
||
"sentAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"readAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"metadataJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantNotificationDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantNotificationDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantNotificationDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TenantNotificationDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"TenantNotificationDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantNotificationDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantNotificationSeverity": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2
|
||
],
|
||
"type": "integer",
|
||
"description": "租户通知的重要程度。",
|
||
"format": "int32"
|
||
},
|
||
"TenantPackageDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"packageType": {
|
||
"$ref": "#/components/schemas/TenantPackageType"
|
||
},
|
||
"monthlyPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"yearlyPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"maxStoreCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxAccountCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxStorageGb": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxSmsCredits": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxDeliveryOrders": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"featurePoliciesJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantPackageDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantPackageDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantPackageDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TenantPackageDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"TenantPackageDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantPackageDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantPackageType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "套餐类型枚举。",
|
||
"format": "int32"
|
||
},
|
||
"TenantProgressDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/TenantStatus"
|
||
},
|
||
"verificationStatus": {
|
||
"$ref": "#/components/schemas/TenantVerificationStatus"
|
||
},
|
||
"effectiveFrom": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"effectiveTo": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantProgressDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantProgressDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantQuotaType": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4,
|
||
5
|
||
],
|
||
"type": "integer",
|
||
"description": "配额类型,覆盖容量及调用次数。",
|
||
"format": "int32"
|
||
},
|
||
"TenantStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3,
|
||
4
|
||
],
|
||
"type": "integer",
|
||
"description": "租户服务状态。",
|
||
"format": "int32"
|
||
},
|
||
"TenantSubscriptionDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantPackageId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/SubscriptionStatus"
|
||
},
|
||
"effectiveFrom": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"effectiveTo": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"nextBillingDate": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"autoRenew": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantSubscriptionDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantSubscriptionDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantVerificationDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/TenantVerificationStatus"
|
||
},
|
||
"businessLicenseNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"businessLicenseUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"legalPersonName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"legalPersonIdNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"legalPersonIdFrontUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"legalPersonIdBackUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"bankAccountName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"bankAccountNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"bankName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"additionalDataJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"submittedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"reviewedBy": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"reviewRemarks": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"reviewedByName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"reviewedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TenantVerificationDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TenantVerificationDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"TenantVerificationStatus": {
|
||
"enum": [
|
||
0,
|
||
1,
|
||
2,
|
||
3
|
||
],
|
||
"type": "integer",
|
||
"description": "租户实名认证状态。",
|
||
"format": "int32"
|
||
},
|
||
"TokenResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"accessToken": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"accessTokenExpiresAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"refreshToken": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"refreshTokenExpiresAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"user": {
|
||
"$ref": "#/components/schemas/CurrentUserProfile"
|
||
},
|
||
"isNewUser": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"TokenResponseApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/TokenResponse"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"UnpublishProductCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateDeliveryOrderCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"deliveryOrderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"provider": {
|
||
"$ref": "#/components/schemas/DeliveryProvider"
|
||
},
|
||
"providerOrderId": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/DeliveryStatus"
|
||
},
|
||
"deliveryFee": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"courierName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"courierPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"dispatchedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"pickedUpAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"deliveredAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"failureReason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateDictionaryGroupRequest": {
|
||
"required": [
|
||
"name"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"name": {
|
||
"maxLength": 128,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"maxLength": 512,
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateDictionaryItemRequest": {
|
||
"required": [
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"value": {
|
||
"maxLength": 256,
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"isDefault": {
|
||
"type": "boolean"
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"description": {
|
||
"maxLength": 512,
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateMenuCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"parentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"path": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"component": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"icon": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isIframe": {
|
||
"type": "boolean"
|
||
},
|
||
"link": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"keepAlive": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"requiredPermissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"metaPermissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"metaRoles": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"authList": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MenuAuthItemDto"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateMerchantCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"brandName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"brandAlias": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"logoUrl": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"category": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"contactEmail": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/MerchantStatus"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateMerchantContractStatusCommand": {
|
||
"required": [
|
||
"contractId",
|
||
"merchantId",
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"contractId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/ContractStatus"
|
||
},
|
||
"signedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateOrderCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"channel": {
|
||
"$ref": "#/components/schemas/OrderChannel"
|
||
},
|
||
"deliveryType": {
|
||
"$ref": "#/components/schemas/DeliveryType"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/OrderStatus"
|
||
},
|
||
"paymentStatus": {
|
||
"$ref": "#/components/schemas/PaymentStatus"
|
||
},
|
||
"customerName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"customerPhone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"tableNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"queueNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"reservationId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"itemsAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"discountAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"payableAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"paidAmount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"paidAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"finishedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"cancelledAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"cancelReason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"remark": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdatePaymentCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"paymentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"orderId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"method": {
|
||
"$ref": "#/components/schemas/PaymentMethod"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/PaymentStatus"
|
||
},
|
||
"amount": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"tradeNo": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"channelTransactionId": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"paidAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"remark": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"payload": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdatePermissionCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"permissionId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"parentId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"type": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateProductCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"categoryId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"spuCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"subtitle": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"unit": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"price": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"originalPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"stockQuantity": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxQuantityPerOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/ProductStatus"
|
||
},
|
||
"coverImage": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"galleryImages": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"enableDineIn": {
|
||
"type": "boolean"
|
||
},
|
||
"enablePickup": {
|
||
"type": "boolean"
|
||
},
|
||
"enableDelivery": {
|
||
"type": "boolean"
|
||
},
|
||
"isFeatured": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateRoleCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"roleId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateRoleTemplateCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"templateCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
},
|
||
"permissionCodes": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStoreBusinessHourCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"businessHourId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"dayOfWeek": {
|
||
"$ref": "#/components/schemas/DayOfWeek"
|
||
},
|
||
"hourType": {
|
||
"$ref": "#/components/schemas/BusinessHourType"
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"capacityLimit": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStoreCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"code": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"phone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"managerName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/StoreStatus"
|
||
},
|
||
"province": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"city": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"district": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"address": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"longitude": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"latitude": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"announcement": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"tags": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"deliveryRadiusKm": {
|
||
"type": "number",
|
||
"format": "double"
|
||
},
|
||
"supportsDineIn": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsPickup": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsDelivery": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsReservation": {
|
||
"type": "boolean"
|
||
},
|
||
"supportsQueueing": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStoreDeliveryZoneCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"deliveryZoneId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"zoneName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"polygonGeoJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"minimumOrderAmount": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"deliveryFee": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"estimatedMinutes": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStoreEmployeeShiftCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"shiftId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"staffId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"shiftDate": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"roleType": {
|
||
"$ref": "#/components/schemas/StaffRoleType"
|
||
},
|
||
"notes": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStoreHolidayCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"holidayId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"date": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"isClosed": {
|
||
"type": "boolean"
|
||
},
|
||
"reason": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStorePickupSlotCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"slotId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"endTime": {
|
||
"type": "string",
|
||
"format": "date-span"
|
||
},
|
||
"cutoffMinutes": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"capacity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"weekdays": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStoreStaffCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"staffId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"phone": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"email": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"roleType": {
|
||
"$ref": "#/components/schemas/StaffRoleType"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/StaffStatus"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStoreTableAreaCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"areaId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateStoreTableCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tableId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"areaId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"tableCode": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"capacity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"tags": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/StoreTableStatus"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateSystemParameterCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"parameterId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"key": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"value": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"isEnabled": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateTenantAnnouncementCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"announcementId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"content": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"announcementType": {
|
||
"$ref": "#/components/schemas/TenantAnnouncementType"
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"effectiveFrom": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"effectiveTo": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpdateTenantPackageCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tenantPackageId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"packageType": {
|
||
"$ref": "#/components/schemas/TenantPackageType"
|
||
},
|
||
"monthlyPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"yearlyPrice": {
|
||
"type": "number",
|
||
"format": "double",
|
||
"nullable": true
|
||
},
|
||
"maxStoreCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxAccountCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxStorageGb": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxSmsCredits": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"maxDeliveryOrders": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
},
|
||
"featurePoliciesJson": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"isActive": {
|
||
"type": "boolean"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpsertInventoryBatchCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productSkuId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"batchNumber": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"productionDate": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"expireDate": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"remainingQuantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UpsertStorePickupSettingCommand": {
|
||
"type": "object",
|
||
"properties": {
|
||
"storeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"allowToday": {
|
||
"type": "boolean"
|
||
},
|
||
"allowDaysAhead": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"defaultCutoffMinutes": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"maxQuantityPerOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UserPermissionDto": {
|
||
"type": "object",
|
||
"properties": {
|
||
"userId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tenantId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"merchantId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"nullable": true
|
||
},
|
||
"account": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"displayName": {
|
||
"type": "string",
|
||
"nullable": true
|
||
},
|
||
"roles": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"permissions": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"nullable": true
|
||
},
|
||
"createdAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
},
|
||
"UserPermissionDtoApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/UserPermissionDto"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
},
|
||
"UserPermissionDtoPagedResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/UserPermissionDto"
|
||
},
|
||
"description": "数据列表。",
|
||
"nullable": true
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "当前页码,从 1 开始。",
|
||
"format": "int32"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"description": "每页条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalCount": {
|
||
"type": "integer",
|
||
"description": "总条数。",
|
||
"format": "int32"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "总页数。",
|
||
"format": "int32",
|
||
"readOnly": true
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "分页结果包装,携带列表与总条数等元数据。"
|
||
},
|
||
"UserPermissionDtoPagedResultApiResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"success": {
|
||
"type": "boolean",
|
||
"description": "是否成功。"
|
||
},
|
||
"code": {
|
||
"type": "integer",
|
||
"description": "状态/错误码(默认 200)。",
|
||
"format": "int32"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"description": "提示信息。",
|
||
"nullable": true
|
||
},
|
||
"data": {
|
||
"$ref": "#/components/schemas/UserPermissionDtoPagedResult"
|
||
},
|
||
"errors": {
|
||
"description": "错误详情(如字段验证错误)。",
|
||
"nullable": true
|
||
},
|
||
"traceId": {
|
||
"type": "string",
|
||
"description": "TraceId,便于链路追踪。",
|
||
"nullable": true
|
||
},
|
||
"timestamp": {
|
||
"type": "string",
|
||
"description": "时间戳(UTC)。",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"additionalProperties": false,
|
||
"description": "统一的 API 返回结果包装。"
|
||
}
|
||
},
|
||
"securitySchemes": {
|
||
"Bearer": {
|
||
"type": "http",
|
||
"description": "在下方输入Bearer Token,格式:Bearer {token}",
|
||
"scheme": "bearer",
|
||
"bearerFormat": "JWT"
|
||
}
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Bearer": [ ]
|
||
}
|
||
],
|
||
"tags": [
|
||
{
|
||
"name": "Auth",
|
||
"description": "管理后台认证接口"
|
||
},
|
||
{
|
||
"name": "Deliveries",
|
||
"description": "配送单管理。"
|
||
},
|
||
{
|
||
"name": "Dictionary",
|
||
"description": "参数字典管理。"
|
||
},
|
||
{
|
||
"name": "Files",
|
||
"description": "管理后台文件上传。"
|
||
},
|
||
{
|
||
"name": "Health",
|
||
"description": "管理后台 - 健康检查。"
|
||
},
|
||
{
|
||
"name": "Inventory",
|
||
"description": "库存管理。"
|
||
},
|
||
{
|
||
"name": "Menus",
|
||
"description": "菜单管理(可增删改查)。"
|
||
},
|
||
{
|
||
"name": "MerchantCategories",
|
||
"description": "商户类目管理。"
|
||
},
|
||
{
|
||
"name": "Merchants",
|
||
"description": "商户管理。"
|
||
},
|
||
{
|
||
"name": "Orders",
|
||
"description": "订单管理。"
|
||
},
|
||
{
|
||
"name": "Payments",
|
||
"description": "支付记录管理。"
|
||
},
|
||
{
|
||
"name": "Permissions",
|
||
"description": "权限管理。"
|
||
},
|
||
{
|
||
"name": "Products",
|
||
"description": "商品管理。"
|
||
},
|
||
{
|
||
"name": "PublicTenantPackages",
|
||
"description": "公共租户套餐查询接口。"
|
||
},
|
||
{
|
||
"name": "PublicTenants",
|
||
"description": "公域租户自助入住接口。"
|
||
},
|
||
{
|
||
"name": "PublicTenantSubscriptions",
|
||
"description": "公域租户订阅自助接口(需登录,无权限校验)。"
|
||
},
|
||
{
|
||
"name": "RoleTemplates",
|
||
"description": "角色模板管理(平台蓝本)。"
|
||
},
|
||
{
|
||
"name": "StorePickup",
|
||
"description": "门店自提管理。"
|
||
},
|
||
{
|
||
"name": "Stores",
|
||
"description": "门店管理。"
|
||
},
|
||
{
|
||
"name": "StoreShifts",
|
||
"description": "门店排班管理。"
|
||
},
|
||
{
|
||
"name": "StoreStaffs",
|
||
"description": "门店员工管理。"
|
||
},
|
||
{
|
||
"name": "StoreTableAreas",
|
||
"description": "门店桌台区域管理。"
|
||
},
|
||
{
|
||
"name": "StoreTables",
|
||
"description": "门店桌码管理。"
|
||
},
|
||
{
|
||
"name": "SystemParameters",
|
||
"description": "系统参数管理。"
|
||
},
|
||
{
|
||
"name": "TenantAnnouncements",
|
||
"description": "租户公告管理。"
|
||
},
|
||
{
|
||
"name": "TenantBillings",
|
||
"description": "租户账单管理。"
|
||
},
|
||
{
|
||
"name": "TenantNotifications",
|
||
"description": "租户通知接口。"
|
||
},
|
||
{
|
||
"name": "TenantPackages",
|
||
"description": "租户套餐管理。"
|
||
},
|
||
{
|
||
"name": "TenantRoles",
|
||
"description": "租户角色管理(实例层)。"
|
||
},
|
||
{
|
||
"name": "Tenants",
|
||
"description": "租户管理。"
|
||
},
|
||
{
|
||
"name": "UserPermissions",
|
||
"description": "用户权限洞察接口。"
|
||
}
|
||
]
|
||
} |