6386 行
166 KiB
JSON
6386 行
166 KiB
JSON
{
|
||
"swagger": "2.0",
|
||
"info": {
|
||
"title": "支付服务",
|
||
"version": "1.0.0"
|
||
},
|
||
"basePath": "/",
|
||
"paths": {
|
||
"/admin/product/item/basic": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step1 基础信息保存",
|
||
"description": "创建+更新合一接口。\n\n**创建**:productId不传,productType必传,返回新产品ID。\n**更新**:productId传已有ID,返回原产品ID。\n\n**涉及字典:**\n- product_type: CORE=核心产品, GROUP=小蒙马跟团游, CUSTOM=私人定制\n- product_season: spring=春, summer=夏, autumn=秋, winter=冬\n- product_tag: 亲子/研学/自驾/摄影/草原/高原 等\n- payment_type: FULL=全款支付, DEPOSIT=订金+尾款",
|
||
"operationId": "saveBasicUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - Step1 基础信息保存",
|
||
"originalRef": "管理端 - Step1 基础信息保存"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/list": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "产品分页列表",
|
||
"description": "支持按名称关键词/产品类型/产品线/状态筛选。\n\n**涉及字典:**\n- product_type: CORE/GROUP/CUSTOM\n- product_status: DRAFT/PENDING_REVIEW/PUBLISHED/UNPUBLISHED/REJECTED/COMPLETED/ORDERED",
|
||
"operationId": "listProductsUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "keyword",
|
||
"in": "query",
|
||
"description": "关键词(名称/编号)",
|
||
"required": false,
|
||
"type": "string"
|
||
},
|
||
{
|
||
"name": "lineId",
|
||
"in": "query",
|
||
"description": "产品线ID",
|
||
"required": false,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"description": "页码",
|
||
"required": false,
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "每页条数",
|
||
"required": false,
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
{
|
||
"name": "productType",
|
||
"in": "query",
|
||
"description": "产品类型(CORE/GROUP/CUSTOM)",
|
||
"required": false,
|
||
"type": "string"
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "产品状态",
|
||
"required": false,
|
||
"type": "string"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«分页结果«管理端 - 产品列表项»»",
|
||
"originalRef": "统一响应结果«分页结果«管理端 - 产品列表项»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«分页结果«管理端 - 产品列表项»»",
|
||
"originalRef": "统一响应结果«分页结果«管理端 - 产品列表项»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "产品详情",
|
||
"description": "聚合全部5步数据(主表+基础+行程+路线+价格+补充),用于编辑页回显。",
|
||
"operationId": "getDetailUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«管理端 - 产品详情»",
|
||
"originalRef": "统一响应结果«管理端 - 产品详情»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«管理端 - 产品详情»",
|
||
"originalRef": "统一响应结果«管理端 - 产品详情»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "删除产品",
|
||
"description": "级联删除产品+全部子表。仅草稿/已驳回/已下架/已完成状态可删,已上架/待审核需先下架。",
|
||
"operationId": "deleteProductUsingDELETE",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/action": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "产品状态变更",
|
||
"description": "通过COLA状态机驱动状态流转。\n\n**涉及字典:**\n- product_action: SUBMIT_PUBLISH=提交上架, WITHDRAW=撤回, DIRECT_PUBLISH=直接上架, UNPUBLISH=申请下架, FORCE_UNPUBLISH=强制下架, COMPLETE=完成设计\n- product_status: DRAFT→PENDING_REVIEW→PUBLISHED→UNPUBLISHED(详见状态流转图)",
|
||
"operationId": "changeStatusUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 产品状态变更",
|
||
"originalRef": "管理端 - 产品状态变更"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/copy": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "复制产品",
|
||
"description": "深拷贝产品+全部子表(主表+6张1:1/1:N子表+行程数据),新产品为草稿状态。返回新产品ID。",
|
||
"operationId": "copyProductUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/fee-deduction-preview": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "费用推导预览",
|
||
"description": "根据行程节点类型自动推导费用包含项(景区→门票,酒店→住宿等),排除已忽略类型。",
|
||
"operationId": "feeDeductionPreviewUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 费用推导预览»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 费用推导预览»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 费用推导预览»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 费用推导预览»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/itinerary": {
|
||
"put": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step2 行程整体保存",
|
||
"description": "整体保存行程天+节点+住宿+路线点。支持新增/更新/删除(EntityDiffUtil对比)。\n\n**涉及字典:**\n- product_node_type: SCENIC=景区, ACTIVITY=活动, RESTAURANT=餐厅, HOTEL=酒店, TRANSPORT=交通, SERVICE=服务, FREE=自由活动, CUSTOM=自定义, NOTE=备注\n- meal_option: HOTEL=酒店餐, CAMP=营地餐, SPECIAL=特色餐, SELF=自理",
|
||
"operationId": "saveItineraryUsingPUT",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - Step2 行程保存",
|
||
"originalRef": "管理端 - Step2 行程保存"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/itinerary/day": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step2 增加一天",
|
||
"description": "在行程末尾追加一天,自动编号。返回新天的dayId。",
|
||
"operationId": "addDayUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/itinerary/day/{dayNumber}": {
|
||
"delete": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step2 删除一天",
|
||
"description": "删除指定天序号的行程天,级联删除节点+住宿+路线点,后续天序号自动-1。",
|
||
"operationId": "deleteDayUsingDELETE",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "dayNumber",
|
||
"in": "path",
|
||
"description": "dayNumber",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/operation-logs": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "产品操作记录",
|
||
"description": "查询产品的全部操作记录(按时间倒序),审计保留不随产品删除。",
|
||
"operationId": "getOperationLogsUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 产品操作记录»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 产品操作记录»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 产品操作记录»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 产品操作记录»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/price-calendar": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 查询价格日历",
|
||
"description": "按月份查询价格日历。\n\n**涉及字典:**\n- price_type: NORMAL=平日, PEAK=旺季, HOLIDAY=节假日, SPECIAL=特价\n- accommodation_spec: 档位序号(1=标准,2=舒适,3=豪华)",
|
||
"operationId": "getPriceCalendarUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "month",
|
||
"in": "query",
|
||
"description": "月份(yyyy-MM)",
|
||
"required": true,
|
||
"type": "string"
|
||
},
|
||
{
|
||
"name": "tierSeq",
|
||
"in": "query",
|
||
"description": "档位序号(默认1)",
|
||
"required": false,
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«ProductPriceCalendarDO»»",
|
||
"originalRef": "统一响应结果«List«ProductPriceCalendarDO»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«ProductPriceCalendarDO»»",
|
||
"originalRef": "统一响应结果«List«ProductPriceCalendarDO»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 价格日历删除",
|
||
"description": "按日期范围+档位删除价格日历(物理删除)。",
|
||
"operationId": "deletePriceCalendarUsingDELETE",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 价格日历批量设置",
|
||
"originalRef": "管理端 - 价格日历批量设置"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/price-calendar/batch": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 价格日历批量设置",
|
||
"description": "按日期范围+档位批量设置价格(UPSERT)。已上架产品用priceVersion,草稿用version。\n\n**涉及字典:**\n- price_type: NORMAL=平日, PEAK=旺季, HOLIDAY=节假日, SPECIAL=特价",
|
||
"operationId": "batchSetPriceCalendarUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 价格日历批量设置",
|
||
"originalRef": "管理端 - 价格日历批量设置"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/quote": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "报价计算",
|
||
"description": "根据出发日期+人数+档位计算总价,返回每日明细。",
|
||
"operationId": "calculateQuoteUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 报价计算",
|
||
"originalRef": "管理端 - 报价计算"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«管理端 - 报价结果»",
|
||
"originalRef": "统一响应结果«管理端 - 报价结果»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«管理端 - 报价结果»",
|
||
"originalRef": "统一响应结果«管理端 - 报价结果»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/route": {
|
||
"put": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step3 路线与备品保存",
|
||
"description": "保存路线总览(1:1)+备品清单(1:N)+额外成本项(1:N)。备品和成本项支持增删改。\n\n**涉及字典:**\n- supply_billing: PER_PERSON=按人头, PER_QUANTITY=按数量",
|
||
"operationId": "saveRouteUsingPUT",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - Step3 路线与备品保存",
|
||
"originalRef": "管理端 - Step3 路线与备品保存"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/schedule": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 创建班期",
|
||
"description": "创建新班期,batchId不传。自动生成班期编号、计算结束日期和报名截止日。",
|
||
"operationId": "saveScheduleUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 班期保存",
|
||
"originalRef": "管理端 - 班期保存"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 修改班期",
|
||
"description": "修改已有班期,batchId在body中传。",
|
||
"operationId": "updateScheduleUsingPUT",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 班期保存",
|
||
"originalRef": "管理端 - 班期保存"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/schedule/batch-create": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 班期批量创建",
|
||
"description": "按重复模式批量创建班期(最多52个,跨度≤12个月)。\n\n**涉及字典:**\n- repeat_mode: WEEKLY=每周, BIWEEKLY=隔周, MONTHLY=每月",
|
||
"operationId": "batchCreateScheduleUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 班期批量创建",
|
||
"originalRef": "管理端 - 班期批量创建"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«int»",
|
||
"originalRef": "统一响应结果«int»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«int»",
|
||
"originalRef": "统一响应结果«int»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/schedule/list": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 班期列表",
|
||
"description": "查询产品下所有班期。\n\n**涉及字典:**\n- schedule_status: ENROLLING=报名中, NEARLY_FULL=即将满员, FULL=已满, FINISHED=已结束, CANCELLING=取消中, CANCELLED=已取消",
|
||
"operationId": "getScheduleListUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«GroupTourBatchDO»»",
|
||
"originalRef": "统一响应结果«List«GroupTourBatchDO»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«GroupTourBatchDO»»",
|
||
"originalRef": "统一响应结果«List«GroupTourBatchDO»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/schedule/team": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "班期团队查询",
|
||
"description": "查询指定班期的团队成员列表。\n\n**涉及字典:**\n- staff_role: LEADER=领队, PHOTOGRAPHER=摄影师, DRIVER=司机, OTHER=其他",
|
||
"operationId": "getScheduleTeamUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«GroupBatchStaffDO»»",
|
||
"originalRef": "统一响应结果«List«GroupBatchStaffDO»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«GroupBatchStaffDO»»",
|
||
"originalRef": "统一响应结果«List«GroupBatchStaffDO»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
},
|
||
"put": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "班期团队保存",
|
||
"description": "全量保存班期团队成员(全删全插策略,每次传完整列表)。\n\n**涉及字典:**\n- staff_role: LEADER=领队, PHOTOGRAPHER=摄影师, DRIVER=司机, OTHER=其他",
|
||
"operationId": "saveScheduleTeamUsingPUT",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 班期团队保存",
|
||
"originalRef": "管理端 - 班期团队保存"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/schedule/{scheduleId}": {
|
||
"delete": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 删除班期",
|
||
"description": "删除班期(已有报名订单不允许删除)。",
|
||
"operationId": "deleteScheduleUsingDELETE",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"name": "scheduleId",
|
||
"in": "path",
|
||
"description": "scheduleId",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/schedule/{scheduleId}/cancel": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step4 取消班期",
|
||
"description": "取消班期(有报名订单则标记为CANCELLING触发退款,无订单直接CANCELLED)。",
|
||
"operationId": "cancelScheduleUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"name": "scheduleId",
|
||
"in": "path",
|
||
"description": "scheduleId",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/supplement": {
|
||
"put": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "Step5 补充信息保存",
|
||
"description": "保存费用包含/不含/自定义项+人群优惠+补充配置(退改/车辆/保险/卖点等)。\n\n**涉及字典:**\n- fee_include_type: TICKET=门票, HOTEL=住宿, TRANSPORT=交通, MEAL=餐饮, INSURANCE=保险\n- fee_source: AUTO=自动推导, MANUAL=手动添加",
|
||
"operationId": "saveSupplementUsingPUT",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - Step5 补充信息保存",
|
||
"originalRef": "管理端 - Step5 补充信息保存"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/transfer": {
|
||
"put": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "转让产品",
|
||
"description": "更换产品创建人(仅超管可操作)。",
|
||
"operationId": "transferProductUsingPUT",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 产品转让",
|
||
"originalRef": "管理端 - 产品转让"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/item/{id}/validate-publish": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品管理"
|
||
],
|
||
"summary": "上架预检",
|
||
"description": "5级校验:L1基础字段→L2内容完整→L3定价→L4条款→L5资源。返回问题列表,空=全部通过。",
|
||
"operationId": "validatePublishUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«string»»",
|
||
"originalRef": "统一响应结果«List«string»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«string»»",
|
||
"originalRef": "统一响应结果«List«string»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/line": {
|
||
"post": {
|
||
"tags": [
|
||
"管理端 - 产品线管理"
|
||
],
|
||
"summary": "创建/修改产品线",
|
||
"operationId": "saveLineUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 产品线保存",
|
||
"originalRef": "管理端 - 产品线保存"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«long»",
|
||
"originalRef": "统一响应结果«long»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/line/list": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品线管理"
|
||
],
|
||
"summary": "产品线分页列表",
|
||
"operationId": "listLinesUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "keyword",
|
||
"in": "query",
|
||
"description": "关键词",
|
||
"required": false,
|
||
"type": "string"
|
||
},
|
||
{
|
||
"name": "page",
|
||
"in": "query",
|
||
"description": "页码",
|
||
"required": false,
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
{
|
||
"name": "pageSize",
|
||
"in": "query",
|
||
"description": "每页条数",
|
||
"required": false,
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
{
|
||
"name": "status",
|
||
"in": "query",
|
||
"description": "状态(ACTIVE/INACTIVE)",
|
||
"required": false,
|
||
"type": "string"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«分页结果«管理端 - 产品线详情/列表项»»",
|
||
"originalRef": "统一响应结果«分页结果«管理端 - 产品线详情/列表项»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«分页结果«管理端 - 产品线详情/列表项»»",
|
||
"originalRef": "统一响应结果«分页结果«管理端 - 产品线详情/列表项»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/line/simple-list": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品线管理"
|
||
],
|
||
"summary": "产品线下拉选项",
|
||
"operationId": "simpleListUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 产品线下拉»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 产品线下拉»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 产品线下拉»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 产品线下拉»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/line/{id}": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 产品线管理"
|
||
],
|
||
"summary": "产品线详情",
|
||
"operationId": "getDetailUsingGET_1",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«管理端 - 产品线详情/列表项»",
|
||
"originalRef": "统一响应结果«管理端 - 产品线详情/列表项»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«管理端 - 产品线详情/列表项»",
|
||
"originalRef": "统一响应结果«管理端 - 产品线详情/列表项»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
},
|
||
"delete": {
|
||
"tags": [
|
||
"管理端 - 产品线管理"
|
||
],
|
||
"summary": "删除产品线",
|
||
"operationId": "deleteLineUsingDELETE",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Void»",
|
||
"originalRef": "统一响应结果«Void»"
|
||
}
|
||
},
|
||
"204": {
|
||
"description": "No Content"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/booking-terms/enabled": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 模板管理"
|
||
],
|
||
"summary": "预订条款下拉",
|
||
"operationId": "bookingTermsEnabledUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 预订条款»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 预订条款»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 预订条款»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 预订条款»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/safety-template/enabled": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 模板管理"
|
||
],
|
||
"summary": "安全保障模板下拉",
|
||
"operationId": "safetyTemplateEnabledUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 安全保障模板»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 安全保障模板»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 安全保障模板»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 安全保障模板»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/admin/product/warm-tips/enabled": {
|
||
"get": {
|
||
"tags": [
|
||
"管理端 - 模板管理"
|
||
],
|
||
"summary": "温馨提示下拉",
|
||
"operationId": "warmTipsEnabledUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 温馨提示»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 温馨提示»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 温馨提示»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 温馨提示»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/mp/product/compare": {
|
||
"get": {
|
||
"tags": [
|
||
"小程序端 - 产品查询"
|
||
],
|
||
"summary": "产品对比",
|
||
"operationId": "compareUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "ids",
|
||
"in": "query",
|
||
"description": "ids",
|
||
"required": true,
|
||
"type": "string"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«小程序端 - 产品详情»»",
|
||
"originalRef": "统一响应结果«List«小程序端 - 产品详情»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«小程序端 - 产品详情»»",
|
||
"originalRef": "统一响应结果«List«小程序端 - 产品详情»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/mp/product/{id}": {
|
||
"get": {
|
||
"tags": [
|
||
"小程序端 - 产品查询"
|
||
],
|
||
"summary": "产品详情",
|
||
"operationId": "getDetailUsingGET_2",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«小程序端 - 产品详情»",
|
||
"originalRef": "统一响应结果«小程序端 - 产品详情»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«小程序端 - 产品详情»",
|
||
"originalRef": "统一响应结果«小程序端 - 产品详情»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/mp/product/{id}/price-calendar": {
|
||
"get": {
|
||
"tags": [
|
||
"小程序端 - 产品查询"
|
||
],
|
||
"summary": "价格日历",
|
||
"operationId": "getPriceCalendarUsingGET_1",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "month",
|
||
"in": "query",
|
||
"description": "月份(yyyy-MM)",
|
||
"required": true,
|
||
"type": "string"
|
||
},
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«小程序端 - 价格日历»",
|
||
"originalRef": "统一响应结果«小程序端 - 价格日历»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«小程序端 - 价格日历»",
|
||
"originalRef": "统一响应结果«小程序端 - 价格日历»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/mp/product/{id}/quote": {
|
||
"post": {
|
||
"tags": [
|
||
"小程序端 - 产品查询"
|
||
],
|
||
"summary": "C端报价",
|
||
"operationId": "quoteUsingPOST",
|
||
"consumes": [
|
||
"application/json"
|
||
],
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"in": "body",
|
||
"name": "req",
|
||
"description": "req",
|
||
"required": true,
|
||
"schema": {
|
||
"$ref": "#/definitions/管理端 - 报价计算",
|
||
"originalRef": "管理端 - 报价计算"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«管理端 - 报价结果»",
|
||
"originalRef": "统一响应结果«管理端 - 报价结果»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«管理端 - 报价结果»",
|
||
"originalRef": "统一响应结果«管理端 - 报价结果»"
|
||
}
|
||
},
|
||
"201": {
|
||
"description": "Created"
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/mp/product/{id}/schedules": {
|
||
"get": {
|
||
"tags": [
|
||
"小程序端 - 产品查询"
|
||
],
|
||
"summary": "班期列表",
|
||
"operationId": "getSchedulesUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«GroupTourBatchDO»»",
|
||
"originalRef": "统一响应结果«List«GroupTourBatchDO»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«GroupTourBatchDO»»",
|
||
"originalRef": "统一响应结果«List«GroupTourBatchDO»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/mp/product/{id}/tier-compare": {
|
||
"get": {
|
||
"tags": [
|
||
"小程序端 - 产品查询"
|
||
],
|
||
"summary": "档位对比",
|
||
"operationId": "tierCompareUsingGET",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "id",
|
||
"in": "path",
|
||
"description": "id",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Map«int,List«ProductDayHotelDO»»»",
|
||
"originalRef": "统一响应结果«Map«int,List«ProductDayHotelDO»»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«Map«int,List«ProductDayHotelDO»»»",
|
||
"originalRef": "统一响应结果«Map«int,List«ProductDayHotelDO»»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/mp/product-line/list": {
|
||
"get": {
|
||
"tags": [
|
||
"小程序端 - 产品线查询"
|
||
],
|
||
"summary": "产品线列表",
|
||
"operationId": "listLinesUsingGET_1",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "season",
|
||
"in": "query",
|
||
"description": "season",
|
||
"required": false,
|
||
"type": "string"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 产品线下拉»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 产品线下拉»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«管理端 - 产品线下拉»»",
|
||
"originalRef": "统一响应结果«List«管理端 - 产品线下拉»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
},
|
||
"/mp/product-line/{lineId}/products": {
|
||
"get": {
|
||
"tags": [
|
||
"小程序端 - 产品线查询"
|
||
],
|
||
"summary": "产品线下产品列表",
|
||
"operationId": "listProductsUsingGET_1",
|
||
"produces": [
|
||
"*/*"
|
||
],
|
||
"parameters": [
|
||
{
|
||
"name": "lineId",
|
||
"in": "query",
|
||
"description": "产品线ID",
|
||
"required": false,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
{
|
||
"name": "tag",
|
||
"in": "query",
|
||
"description": "标签筛选(可选)",
|
||
"required": false,
|
||
"type": "string"
|
||
},
|
||
{
|
||
"name": "lineId",
|
||
"in": "path",
|
||
"description": "lineId",
|
||
"required": true,
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«小程序端 - 产品列表项»»",
|
||
"originalRef": "统一响应结果«List«小程序端 - 产品列表项»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"responsesObject": {
|
||
"200": {
|
||
"description": "OK",
|
||
"schema": {
|
||
"$ref": "#/definitions/统一响应结果«List«小程序端 - 产品列表项»»",
|
||
"originalRef": "统一响应结果«List«小程序端 - 产品列表项»»"
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "Unauthorized"
|
||
},
|
||
"403": {
|
||
"description": "Forbidden"
|
||
},
|
||
"404": {
|
||
"description": "Not Found"
|
||
}
|
||
},
|
||
"security": [
|
||
{
|
||
"Authorization": [
|
||
"global"
|
||
]
|
||
}
|
||
],
|
||
"deprecated": false,
|
||
"x-order": "2147483647"
|
||
}
|
||
}
|
||
},
|
||
"definitions": {
|
||
"DailyDetail": {
|
||
"type": "object",
|
||
"properties": {
|
||
"adultPrice": {
|
||
"type": "number",
|
||
"description": "成人价"
|
||
},
|
||
"childPrice": {
|
||
"type": "number",
|
||
"description": "儿童价"
|
||
},
|
||
"date": {
|
||
"type": "string",
|
||
"description": "日期"
|
||
}
|
||
},
|
||
"title": "DailyDetail"
|
||
},
|
||
"GroupBatchStaffDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"batchId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"remark": {
|
||
"type": "string"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"staffId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"staffName": {
|
||
"type": "string"
|
||
},
|
||
"staffPhone": {
|
||
"type": "string"
|
||
},
|
||
"staffRole": {
|
||
"type": "string"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"title": "GroupBatchStaffDO"
|
||
},
|
||
"GroupTourBatchDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"adultPrice": {
|
||
"type": "number"
|
||
},
|
||
"batchId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"batchLabel": {
|
||
"type": "string"
|
||
},
|
||
"batchName": {
|
||
"type": "string"
|
||
},
|
||
"batchNo": {
|
||
"type": "string"
|
||
},
|
||
"batchStatus": {
|
||
"type": "string"
|
||
},
|
||
"bookedRooms": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"childPrice": {
|
||
"type": "number"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"departureDate": {
|
||
"type": "string",
|
||
"format": "date"
|
||
},
|
||
"endDate": {
|
||
"type": "string",
|
||
"format": "date"
|
||
},
|
||
"enrolledCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"enrollmentDeadline": {
|
||
"type": "string",
|
||
"format": "date"
|
||
},
|
||
"infantPrice": {
|
||
"type": "number"
|
||
},
|
||
"maxParticipants": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"maxRooms": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productStockLimit": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"remark": {
|
||
"type": "string"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"toddlerDiscount": {
|
||
"type": "number"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"version": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"title": "GroupTourBatchDO"
|
||
},
|
||
"ProductCrowdBenefitDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"childAccommodation": {
|
||
"type": "string"
|
||
},
|
||
"childMeal": {
|
||
"type": "string"
|
||
},
|
||
"childTicket": {
|
||
"type": "string"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"elderAccommodation": {
|
||
"type": "string"
|
||
},
|
||
"elderTicket": {
|
||
"type": "string"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"tips": {
|
||
"type": "string"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"title": "ProductCrowdBenefitDO"
|
||
},
|
||
"ProductFeeItemDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"costItemId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"daily": {
|
||
"type": "boolean"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"feeCategory": {
|
||
"type": "string"
|
||
},
|
||
"feeType": {
|
||
"type": "string"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"resourceId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"resourceType": {
|
||
"type": "string"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"source": {
|
||
"type": "string"
|
||
},
|
||
"unit": {
|
||
"type": "string"
|
||
},
|
||
"unitPrice": {
|
||
"type": "number"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"title": "ProductFeeItemDO"
|
||
},
|
||
"ProductPriceCalendarDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"adultSellPrice": {
|
||
"type": "number"
|
||
},
|
||
"childSellPrice": {
|
||
"type": "number"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"dailyStock": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"date": {
|
||
"type": "string",
|
||
"format": "date"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"infantPrice": {
|
||
"type": "number"
|
||
},
|
||
"priceType": {
|
||
"type": "string"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"rangeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"sold": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"tierSeq": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"toddlerDiscount": {
|
||
"type": "number"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"title": "ProductPriceCalendarDO"
|
||
},
|
||
"ProductRouteInfoDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"routeDescription": {
|
||
"type": "string"
|
||
},
|
||
"routeMapUrl": {
|
||
"type": "string"
|
||
},
|
||
"routeName": {
|
||
"type": "string"
|
||
},
|
||
"staffCostIds": {
|
||
"type": "string"
|
||
},
|
||
"totalMileage": {
|
||
"type": "number"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"vehicleModelId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"title": "ProductRouteInfoDO"
|
||
},
|
||
"ProductSupplementDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"bookingTermsId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"childExperience": {
|
||
"type": "string"
|
||
},
|
||
"contractSchemeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"equipmentAdvice": {
|
||
"type": "string"
|
||
},
|
||
"feeIgnoredTypes": {
|
||
"type": "string"
|
||
},
|
||
"growthGains": {
|
||
"type": "string"
|
||
},
|
||
"insuranceNotice": {
|
||
"type": "string"
|
||
},
|
||
"insuranceSchemeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"quickUnderstand": {
|
||
"type": "string"
|
||
},
|
||
"refundPolicyIds": {
|
||
"type": "string"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"vehicleModelIds": {
|
||
"type": "string"
|
||
},
|
||
"vehicleRuleText": {
|
||
"type": "string"
|
||
},
|
||
"warmTipsId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"title": "ProductSupplementDO"
|
||
},
|
||
"ProductSuppliesDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"billingType": {
|
||
"type": "string"
|
||
},
|
||
"category": {
|
||
"type": "string"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"hasCost": {
|
||
"type": "boolean"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"suppliesName": {
|
||
"type": "string"
|
||
},
|
||
"suppliesResourceId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"unitPrice": {
|
||
"type": "number"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"title": "ProductSuppliesDO"
|
||
},
|
||
"StaffItem": {
|
||
"type": "object",
|
||
"properties": {
|
||
"remark": {
|
||
"type": "string",
|
||
"description": "备注"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
},
|
||
"staffId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "员工ID"
|
||
},
|
||
"staffName": {
|
||
"type": "string",
|
||
"description": "员工名称"
|
||
},
|
||
"staffPhone": {
|
||
"type": "string",
|
||
"description": "员工电话"
|
||
},
|
||
"staffRole": {
|
||
"type": "string",
|
||
"description": "员工角色"
|
||
}
|
||
},
|
||
"title": "StaffItem"
|
||
},
|
||
"住宿项": {
|
||
"type": "object",
|
||
"properties": {
|
||
"hotelId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "酒店ID"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "住宿ID(已有则传,新增不传)"
|
||
},
|
||
"isDefault": {
|
||
"type": "boolean",
|
||
"description": "是否默认推荐"
|
||
},
|
||
"roomCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "房间数(私人定制用)"
|
||
},
|
||
"roomTypeId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "房型ID(私人定制用)"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
},
|
||
"tierSeq": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "档位序号(无档位=1)"
|
||
}
|
||
},
|
||
"title": "住宿项"
|
||
},
|
||
"分页结果«管理端 - 产品列表项»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"page": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 1,
|
||
"description": "当前页码"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 20,
|
||
"description": "每页条数"
|
||
},
|
||
"records": {
|
||
"type": "array",
|
||
"description": "数据列表",
|
||
"items": {
|
||
"$ref": "#/definitions/管理端 - 产品列表项",
|
||
"originalRef": "管理端 - 产品列表项"
|
||
}
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 100,
|
||
"description": "总记录数"
|
||
}
|
||
},
|
||
"title": "分页结果«管理端 - 产品列表项»"
|
||
},
|
||
"备品项": {
|
||
"type": "object",
|
||
"properties": {
|
||
"billingType": {
|
||
"type": "string",
|
||
"description": "计费方式(PER_PERSON/PER_QUANTITY)"
|
||
},
|
||
"category": {
|
||
"type": "string",
|
||
"description": "分类"
|
||
},
|
||
"hasCost": {
|
||
"type": "boolean",
|
||
"description": "是否涉及成本"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "备品ID(已有则传,新增不传)"
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "数量"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
},
|
||
"suppliesName": {
|
||
"type": "string",
|
||
"description": "备品名称"
|
||
},
|
||
"suppliesResourceId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "备品资源ID(可空=自定义)"
|
||
},
|
||
"unitPrice": {
|
||
"type": "number",
|
||
"description": "单价"
|
||
}
|
||
},
|
||
"title": "备品项"
|
||
},
|
||
"活动节点": {
|
||
"type": "object",
|
||
"properties": {
|
||
"description": {
|
||
"type": "string",
|
||
"description": "描述"
|
||
},
|
||
"durationMinutes": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "时长(分钟)"
|
||
},
|
||
"emojiIcon": {
|
||
"type": "string",
|
||
"description": "图标"
|
||
},
|
||
"extraData": {
|
||
"type": "object",
|
||
"description": "扩展数据"
|
||
},
|
||
"images": {
|
||
"type": "array",
|
||
"description": "图片列表",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"nodeId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "节点ID(已有则传,新增不传)"
|
||
},
|
||
"nodeName": {
|
||
"type": "string",
|
||
"description": "节点名称"
|
||
},
|
||
"nodeType": {
|
||
"type": "string",
|
||
"description": "节点类型(SCENIC/ACTIVITY/RESTAURANT/SERVICE/CUSTOM等)"
|
||
},
|
||
"resourceId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "资源ID"
|
||
},
|
||
"resourceType": {
|
||
"type": "string",
|
||
"description": "资源类型"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"description": "开始时间(如10:00)"
|
||
}
|
||
},
|
||
"title": "活动节点"
|
||
},
|
||
"管理端 - Step1 基础信息保存": {
|
||
"type": "object",
|
||
"required": [
|
||
"name"
|
||
],
|
||
"properties": {
|
||
"category": {
|
||
"type": "string",
|
||
"example": "family",
|
||
"description": "产品分类(字典product_category: family=亲子游, honeymoon=蜜月旅行, photography=摄影之旅, experience=深度体验, driving=自驾越野)"
|
||
},
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "封面图URL"
|
||
},
|
||
"introduction": {
|
||
"type": "string",
|
||
"description": "产品简介(富文本HTML)"
|
||
},
|
||
"lineId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"example": 100,
|
||
"description": "产品线ID(主题ID,CORE/GROUP必传,CUSTOM可空)"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"example": "额吉的故乡·亲子版",
|
||
"description": "产品名称(≤30字)"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"example": 2043246204711550977,
|
||
"description": "产品ID(不传=创建,传了=更新)"
|
||
},
|
||
"productType": {
|
||
"type": "string",
|
||
"example": "CORE",
|
||
"description": "产品类型(创建时必传,更新时忽略。CORE=核心产品, GROUP=小蒙马, CUSTOM=私人定制)"
|
||
},
|
||
"subtitle": {
|
||
"type": "string",
|
||
"example": "6天5晚草原环线",
|
||
"description": "副标题(≤128字)"
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"example": [
|
||
"亲子",
|
||
"研学"
|
||
],
|
||
"description": "产品标签(亲子/研学/露营/城记/摄影)",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"tiers": {
|
||
"type": "array",
|
||
"description": "规格列表(单一档不传或传1个,多档传多个)",
|
||
"items": {
|
||
"$ref": "#/definitions/规格项",
|
||
"originalRef": "规格项"
|
||
}
|
||
},
|
||
"tripDays": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 6,
|
||
"description": "行程天数(≥1)"
|
||
},
|
||
"tripNights": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 5,
|
||
"description": "行程晚数(不传自动=天数-1)"
|
||
}
|
||
},
|
||
"title": "管理端 - Step1 基础信息保存"
|
||
},
|
||
"管理端 - Step2 行程保存": {
|
||
"type": "object",
|
||
"properties": {
|
||
"days": {
|
||
"type": "array",
|
||
"description": "行程天列表",
|
||
"items": {
|
||
"$ref": "#/definitions/行程天",
|
||
"originalRef": "行程天"
|
||
}
|
||
}
|
||
},
|
||
"title": "管理端 - Step2 行程保存"
|
||
},
|
||
"管理端 - Step3 路线与备品保存": {
|
||
"type": "object",
|
||
"properties": {
|
||
"extraCosts": {
|
||
"type": "array",
|
||
"description": "额外成本项列表",
|
||
"items": {
|
||
"$ref": "#/definitions/额外成本项",
|
||
"originalRef": "额外成本项"
|
||
}
|
||
},
|
||
"routeDescription": {
|
||
"type": "string",
|
||
"description": "线路描述"
|
||
},
|
||
"routeMapUrl": {
|
||
"type": "string",
|
||
"description": "路线图URL(手动上传)"
|
||
},
|
||
"supplies": {
|
||
"type": "array",
|
||
"description": "备品列表",
|
||
"items": {
|
||
"$ref": "#/definitions/备品项",
|
||
"originalRef": "备品项"
|
||
}
|
||
},
|
||
"totalMileage": {
|
||
"type": "number",
|
||
"description": "总里程(km)"
|
||
}
|
||
},
|
||
"title": "管理端 - Step3 路线与备品保存"
|
||
},
|
||
"管理端 - Step5 补充信息保存": {
|
||
"type": "object",
|
||
"properties": {
|
||
"bookingTermsId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "预订条款ID"
|
||
},
|
||
"childAccommodation": {
|
||
"type": "string",
|
||
"description": "儿童住宿(BED/NO_BED)"
|
||
},
|
||
"childExperience": {
|
||
"type": "object",
|
||
"description": "孩子经历"
|
||
},
|
||
"childMeal": {
|
||
"type": "string",
|
||
"description": "儿童餐饮(FULL/HALF)"
|
||
},
|
||
"childTicket": {
|
||
"type": "string",
|
||
"description": "儿童门票优惠(FREE/HALF_PRICE/FULL_PRICE)"
|
||
},
|
||
"contractSchemeId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "合同方案ID"
|
||
},
|
||
"crowdBenefitTips": {
|
||
"type": "string",
|
||
"description": "人群优惠温馨提示"
|
||
},
|
||
"customFees": {
|
||
"type": "array",
|
||
"description": "自定义费用列表",
|
||
"items": {
|
||
"$ref": "#/definitions/费用项",
|
||
"originalRef": "费用项"
|
||
}
|
||
},
|
||
"elderAccommodation": {
|
||
"type": "string",
|
||
"description": "老人住宿"
|
||
},
|
||
"elderTicket": {
|
||
"type": "string",
|
||
"description": "老人门票优惠"
|
||
},
|
||
"equipmentAdvice": {
|
||
"type": "string",
|
||
"description": "装备建议(富文本)"
|
||
},
|
||
"excludedFees": {
|
||
"type": "array",
|
||
"description": "费用不含列表",
|
||
"items": {
|
||
"$ref": "#/definitions/费用项",
|
||
"originalRef": "费用项"
|
||
}
|
||
},
|
||
"feeIgnoredTypes": {
|
||
"type": "array",
|
||
"description": "费用推导已忽略类型",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"growthGains": {
|
||
"type": "array",
|
||
"description": "成长收获",
|
||
"items": {
|
||
"type": "object"
|
||
}
|
||
},
|
||
"includedFees": {
|
||
"type": "array",
|
||
"description": "费用包含列表",
|
||
"items": {
|
||
"$ref": "#/definitions/费用项",
|
||
"originalRef": "费用项"
|
||
}
|
||
},
|
||
"insuranceNotice": {
|
||
"type": "string",
|
||
"description": "保险告知(INCLUDED/EXCLUDED/OPTIONAL)"
|
||
},
|
||
"insuranceSchemeId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "保险方案ID"
|
||
},
|
||
"quickUnderstand": {
|
||
"type": "object",
|
||
"description": "快速理解"
|
||
},
|
||
"refundPolicyIds": {
|
||
"type": "object",
|
||
"description": "退改政策映射"
|
||
},
|
||
"vehicleModelIds": {
|
||
"type": "array",
|
||
"description": "展示车型ID列表",
|
||
"items": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"vehicleRuleText": {
|
||
"type": "string",
|
||
"description": "用车规则说明"
|
||
},
|
||
"warmTipsId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "温馨提示ID"
|
||
}
|
||
},
|
||
"title": "管理端 - Step5 补充信息保存"
|
||
},
|
||
"管理端 - 产品列表项": {
|
||
"type": "object",
|
||
"properties": {
|
||
"category": {
|
||
"type": "string",
|
||
"description": "产品分类(字典product_category)"
|
||
},
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "封面图URL"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"description": "创建时间"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "创建人ID"
|
||
},
|
||
"createdByName": {
|
||
"type": "string",
|
||
"description": "创建人名称"
|
||
},
|
||
"lineId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品线ID(前端叫「主题」)"
|
||
},
|
||
"lineName": {
|
||
"type": "string",
|
||
"description": "产品线名称(前端叫「主题名」,从产品线表关联查出)"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "产品名称"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品ID"
|
||
},
|
||
"productNo": {
|
||
"type": "string",
|
||
"description": "产品编号(如C260409001)"
|
||
},
|
||
"productType": {
|
||
"type": "string",
|
||
"description": "产品类型(字典product_type: CORE=核心产品, GROUP=小蒙马, CUSTOM=私人定制)"
|
||
},
|
||
"publishedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"description": "上架时间"
|
||
},
|
||
"seasons": {
|
||
"type": "array",
|
||
"description": "产品季节(JSON数组,如[\"summer\",\"autumn\"])",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序号"
|
||
},
|
||
"startPrice": {
|
||
"type": "number",
|
||
"description": "起步价(已上架产品的最低成人售价,草稿为null)"
|
||
},
|
||
"status": {
|
||
"type": "string",
|
||
"description": "产品状态(字典product_status)"
|
||
},
|
||
"subtitle": {
|
||
"type": "string",
|
||
"description": "副标题"
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"description": "产品标签(JSON数组,如[\"亲子\",\"研学\"])",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"tierCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "档位数量(前端叫「规格数」,单一=1,多档=N,未配置=0)"
|
||
},
|
||
"tripDays": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "行程天数"
|
||
},
|
||
"tripNights": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "行程晚数"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"description": "更新时间"
|
||
}
|
||
},
|
||
"title": "管理端 - 产品列表项"
|
||
},
|
||
"管理端 - 产品操作记录": {
|
||
"type": "object",
|
||
"properties": {
|
||
"action": {
|
||
"type": "string",
|
||
"description": "操作类型"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"description": "操作时间"
|
||
},
|
||
"detail": {
|
||
"type": "string",
|
||
"description": "详情/驳回原因"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "记录ID"
|
||
},
|
||
"operatorId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "操作人ID"
|
||
},
|
||
"operatorName": {
|
||
"type": "string",
|
||
"description": "操作人名称"
|
||
},
|
||
"step": {
|
||
"type": "string",
|
||
"description": "步骤号"
|
||
}
|
||
},
|
||
"title": "管理端 - 产品操作记录"
|
||
},
|
||
"管理端 - 产品状态变更": {
|
||
"type": "object",
|
||
"required": [
|
||
"action"
|
||
],
|
||
"properties": {
|
||
"action": {
|
||
"type": "string",
|
||
"description": "操作动作(SUBMIT_PUBLISH/WITHDRAW/DIRECT_PUBLISH/UNPUBLISH/FORCE_UNPUBLISH/COMPLETE)"
|
||
},
|
||
"remark": {
|
||
"type": "string",
|
||
"description": "备注/驳回原因(可选)"
|
||
}
|
||
},
|
||
"title": "管理端 - 产品状态变更"
|
||
},
|
||
"管理端 - 产品详情": {
|
||
"type": "object",
|
||
"properties": {
|
||
"carouselImages": {
|
||
"type": "object",
|
||
"description": "轮播图"
|
||
},
|
||
"category": {
|
||
"type": "string",
|
||
"description": "产品分类(字典product_category)"
|
||
},
|
||
"childAgeMax": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "儿童年龄上限"
|
||
},
|
||
"childAgeMin": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "儿童年龄下限"
|
||
},
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "封面图"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"description": "创建时间"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "创建人ID"
|
||
},
|
||
"crowdBenefit": {
|
||
"description": "人群优惠",
|
||
"$ref": "#/definitions/ProductCrowdBenefitDO",
|
||
"originalRef": "ProductCrowdBenefitDO"
|
||
},
|
||
"currentStep": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "当前步骤进度(1=基础信息, 2=行程编排, 3=路线与备品, 4=定价管理, 5=补充信息)"
|
||
},
|
||
"customFees": {
|
||
"type": "array",
|
||
"description": "自定义费用",
|
||
"items": {
|
||
"$ref": "#/definitions/ProductFeeItemDO",
|
||
"originalRef": "ProductFeeItemDO"
|
||
}
|
||
},
|
||
"depositAmount": {
|
||
"type": "number",
|
||
"description": "订金固定额"
|
||
},
|
||
"depositRatio": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "订金比例"
|
||
},
|
||
"excludedFees": {
|
||
"type": "array",
|
||
"description": "费用不含",
|
||
"items": {
|
||
"$ref": "#/definitions/ProductFeeItemDO",
|
||
"originalRef": "ProductFeeItemDO"
|
||
}
|
||
},
|
||
"extraCosts": {
|
||
"type": "array",
|
||
"description": "额外成本项",
|
||
"items": {
|
||
"$ref": "#/definitions/ProductFeeItemDO",
|
||
"originalRef": "ProductFeeItemDO"
|
||
}
|
||
},
|
||
"includedFees": {
|
||
"type": "array",
|
||
"description": "费用包含",
|
||
"items": {
|
||
"$ref": "#/definitions/ProductFeeItemDO",
|
||
"originalRef": "ProductFeeItemDO"
|
||
}
|
||
},
|
||
"infantAgeMax": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "幼童年龄上限"
|
||
},
|
||
"introduction": {
|
||
"type": "string",
|
||
"description": "产品简介"
|
||
},
|
||
"isBooking": {
|
||
"type": "boolean",
|
||
"description": "是否预约产品"
|
||
},
|
||
"itinerary": {
|
||
"type": "array",
|
||
"description": "行程天列表",
|
||
"items": {
|
||
"type": "object"
|
||
}
|
||
},
|
||
"lineId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品线ID"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "产品名称"
|
||
},
|
||
"paymentType": {
|
||
"type": "string",
|
||
"description": "支付方式"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品ID"
|
||
},
|
||
"productNo": {
|
||
"type": "string",
|
||
"description": "产品编号"
|
||
},
|
||
"productType": {
|
||
"type": "string",
|
||
"description": "产品类型"
|
||
},
|
||
"publishedAt": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"description": "上架时间"
|
||
},
|
||
"routeInfo": {
|
||
"description": "路线信息",
|
||
"$ref": "#/definitions/ProductRouteInfoDO",
|
||
"originalRef": "ProductRouteInfoDO"
|
||
},
|
||
"schedules": {
|
||
"type": "array",
|
||
"description": "班期列表",
|
||
"items": {
|
||
"$ref": "#/definitions/GroupTourBatchDO",
|
||
"originalRef": "GroupTourBatchDO"
|
||
}
|
||
},
|
||
"seasons": {
|
||
"type": "object",
|
||
"description": "产品季节"
|
||
},
|
||
"showReview": {
|
||
"type": "boolean",
|
||
"description": "展示评价"
|
||
},
|
||
"status": {
|
||
"type": "string",
|
||
"description": "产品状态"
|
||
},
|
||
"subtitle": {
|
||
"type": "string",
|
||
"description": "副标题"
|
||
},
|
||
"supplement": {
|
||
"description": "补充配置",
|
||
"$ref": "#/definitions/ProductSupplementDO",
|
||
"originalRef": "ProductSupplementDO"
|
||
},
|
||
"supplies": {
|
||
"type": "array",
|
||
"description": "备品列表",
|
||
"items": {
|
||
"$ref": "#/definitions/ProductSuppliesDO",
|
||
"originalRef": "ProductSuppliesDO"
|
||
}
|
||
},
|
||
"tags": {
|
||
"type": "object",
|
||
"description": "产品标签"
|
||
},
|
||
"tiers": {
|
||
"type": "object",
|
||
"description": "档位列表"
|
||
},
|
||
"toddlerAgeMax": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "小童年龄上限"
|
||
},
|
||
"tripDays": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "行程天数"
|
||
},
|
||
"tripNights": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "行程晚数"
|
||
}
|
||
},
|
||
"title": "管理端 - 产品详情"
|
||
},
|
||
"管理端 - 产品转让": {
|
||
"type": "object",
|
||
"required": [
|
||
"newCreatorId"
|
||
],
|
||
"properties": {
|
||
"newCreatorId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "新创建人ID"
|
||
}
|
||
},
|
||
"title": "管理端 - 产品转让"
|
||
},
|
||
"管理端 - 价格日历批量设置": {
|
||
"type": "object",
|
||
"required": [
|
||
"adultSellPrice",
|
||
"endDate",
|
||
"startDate"
|
||
],
|
||
"properties": {
|
||
"adultSellPrice": {
|
||
"type": "number",
|
||
"description": "成人售价"
|
||
},
|
||
"childSellPrice": {
|
||
"type": "number",
|
||
"description": "儿童售价"
|
||
},
|
||
"dailyStock": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "每日库存上限(NULL=不限量)"
|
||
},
|
||
"endDate": {
|
||
"type": "string",
|
||
"format": "date",
|
||
"description": "结束日期"
|
||
},
|
||
"infantPrice": {
|
||
"type": "number",
|
||
"description": "幼童售价(0=免费)"
|
||
},
|
||
"priceType": {
|
||
"type": "string",
|
||
"description": "价格类型(NORMAL/PEAK/HOLIDAY/SPECIAL)"
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"format": "date",
|
||
"description": "开始日期"
|
||
},
|
||
"tierSeq": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "档位序号(默认1)"
|
||
},
|
||
"toddlerDiscount": {
|
||
"type": "number",
|
||
"description": "小童优惠额(负数)"
|
||
}
|
||
},
|
||
"title": "管理端 - 价格日历批量设置"
|
||
},
|
||
"管理端 - 报价结果": {
|
||
"type": "object",
|
||
"properties": {
|
||
"dailyDetails": {
|
||
"type": "array",
|
||
"description": "每日价格明细",
|
||
"items": {
|
||
"$ref": "#/definitions/DailyDetail",
|
||
"originalRef": "DailyDetail"
|
||
}
|
||
},
|
||
"grandTotal": {
|
||
"type": "number",
|
||
"description": "总价合计"
|
||
},
|
||
"totalAdultPrice": {
|
||
"type": "number",
|
||
"description": "成人总价"
|
||
},
|
||
"totalChildPrice": {
|
||
"type": "number",
|
||
"description": "儿童总价"
|
||
}
|
||
},
|
||
"title": "管理端 - 报价结果"
|
||
},
|
||
"管理端 - 报价计算": {
|
||
"type": "object",
|
||
"required": [
|
||
"adultCount",
|
||
"departureDate"
|
||
],
|
||
"properties": {
|
||
"adultCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "成人数"
|
||
},
|
||
"batchId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "班期ID(小蒙马用)"
|
||
},
|
||
"childCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "儿童数"
|
||
},
|
||
"departureDate": {
|
||
"type": "string",
|
||
"format": "date",
|
||
"description": "出发日期"
|
||
},
|
||
"infantCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "幼童数"
|
||
},
|
||
"tierSeq": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "档位序号(默认1)"
|
||
},
|
||
"toddlerCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "小童数"
|
||
}
|
||
},
|
||
"title": "管理端 - 报价计算"
|
||
},
|
||
"管理端 - 班期保存": {
|
||
"type": "object",
|
||
"required": [
|
||
"departureDate"
|
||
],
|
||
"properties": {
|
||
"adultPrice": {
|
||
"type": "number",
|
||
"description": "成人价"
|
||
},
|
||
"batchId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "班期ID(修改时传)"
|
||
},
|
||
"batchName": {
|
||
"type": "string",
|
||
"description": "班期名称"
|
||
},
|
||
"childPrice": {
|
||
"type": "number",
|
||
"description": "儿童价"
|
||
},
|
||
"departureDate": {
|
||
"type": "string",
|
||
"format": "date",
|
||
"description": "出发日期"
|
||
},
|
||
"enrollmentDeadline": {
|
||
"type": "string",
|
||
"format": "date",
|
||
"description": "报名截止日(默认出发前1天)"
|
||
},
|
||
"infantPrice": {
|
||
"type": "number",
|
||
"description": "幼童价"
|
||
},
|
||
"maxParticipants": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "最大参与人数"
|
||
},
|
||
"maxRooms": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "总房间数(0=不限)"
|
||
},
|
||
"productStockLimit": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "产品库存上限"
|
||
},
|
||
"remark": {
|
||
"type": "string",
|
||
"description": "备注"
|
||
},
|
||
"toddlerDiscount": {
|
||
"type": "number",
|
||
"description": "小童优惠额(负数)"
|
||
}
|
||
},
|
||
"title": "管理端 - 班期保存"
|
||
},
|
||
"管理端 - 班期团队保存": {
|
||
"type": "object",
|
||
"properties": {
|
||
"staffList": {
|
||
"type": "array",
|
||
"description": "团队成员列表",
|
||
"items": {
|
||
"$ref": "#/definitions/StaffItem",
|
||
"originalRef": "StaffItem"
|
||
}
|
||
}
|
||
},
|
||
"title": "管理端 - 班期团队保存"
|
||
},
|
||
"管理端 - 班期批量创建": {
|
||
"type": "object",
|
||
"required": [
|
||
"endDate",
|
||
"repeatMode",
|
||
"startDate"
|
||
],
|
||
"properties": {
|
||
"adultPrice": {
|
||
"type": "number",
|
||
"description": "成人价"
|
||
},
|
||
"childPrice": {
|
||
"type": "number",
|
||
"description": "儿童价"
|
||
},
|
||
"dayOfWeek": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "星期几(1=周一...7=周日)"
|
||
},
|
||
"endDate": {
|
||
"type": "string",
|
||
"format": "date",
|
||
"description": "结束日期"
|
||
},
|
||
"maxParticipants": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "最大参与人数"
|
||
},
|
||
"maxRooms": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "总房间数"
|
||
},
|
||
"repeatMode": {
|
||
"type": "string",
|
||
"description": "重复模式(WEEKLY/BIWEEKLY/MONTHLY)"
|
||
},
|
||
"startDate": {
|
||
"type": "string",
|
||
"format": "date",
|
||
"description": "开始日期"
|
||
}
|
||
},
|
||
"title": "管理端 - 班期批量创建"
|
||
},
|
||
"管理端 - 费用推导预览": {
|
||
"type": "object",
|
||
"properties": {
|
||
"feeType": {
|
||
"type": "string",
|
||
"description": "费用类型标签"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "费用名称"
|
||
},
|
||
"source": {
|
||
"type": "string",
|
||
"description": "来源(AUTO=自动推导)"
|
||
},
|
||
"sourceNodeName": {
|
||
"type": "string",
|
||
"description": "来源节点名称"
|
||
}
|
||
},
|
||
"title": "管理端 - 费用推导预览"
|
||
},
|
||
"统一响应结果«List«GroupBatchStaffDO»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/GroupBatchStaffDO",
|
||
"originalRef": "GroupBatchStaffDO"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«GroupBatchStaffDO»»"
|
||
},
|
||
"统一响应结果«List«GroupTourBatchDO»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/GroupTourBatchDO",
|
||
"originalRef": "GroupTourBatchDO"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«GroupTourBatchDO»»"
|
||
},
|
||
"统一响应结果«List«ProductPriceCalendarDO»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/ProductPriceCalendarDO",
|
||
"originalRef": "ProductPriceCalendarDO"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«ProductPriceCalendarDO»»"
|
||
},
|
||
"统一响应结果«List«string»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«string»»"
|
||
},
|
||
"统一响应结果«List«管理端 - 产品操作记录»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/管理端 - 产品操作记录",
|
||
"originalRef": "管理端 - 产品操作记录"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«管理端 - 产品操作记录»»"
|
||
},
|
||
"统一响应结果«List«管理端 - 费用推导预览»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/管理端 - 费用推导预览",
|
||
"originalRef": "管理端 - 费用推导预览"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«管理端 - 费用推导预览»»"
|
||
},
|
||
"统一响应结果«Void»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«Void»"
|
||
},
|
||
"统一响应结果«int»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "响应数据"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«int»"
|
||
},
|
||
"统一响应结果«long»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "响应数据"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«long»"
|
||
},
|
||
"统一响应结果«分页结果«管理端 - 产品列表项»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"description": "响应数据",
|
||
"$ref": "#/definitions/分页结果«管理端 - 产品列表项»",
|
||
"originalRef": "分页结果«管理端 - 产品列表项»"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«分页结果«管理端 - 产品列表项»»"
|
||
},
|
||
"统一响应结果«管理端 - 产品详情»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"description": "响应数据",
|
||
"$ref": "#/definitions/管理端 - 产品详情",
|
||
"originalRef": "管理端 - 产品详情"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«管理端 - 产品详情»"
|
||
},
|
||
"统一响应结果«管理端 - 报价结果»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"description": "响应数据",
|
||
"$ref": "#/definitions/管理端 - 报价结果",
|
||
"originalRef": "管理端 - 报价结果"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«管理端 - 报价结果»"
|
||
},
|
||
"行程天": {
|
||
"type": "object",
|
||
"properties": {
|
||
"breakfast": {
|
||
"type": "string",
|
||
"description": "早餐(HOTEL/CAMP/SPECIAL/SELF)"
|
||
},
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "当日封面图"
|
||
},
|
||
"customFields": {
|
||
"type": "object",
|
||
"description": "自定义概况"
|
||
},
|
||
"dailyMileage": {
|
||
"type": "number",
|
||
"description": "当日里程(km)"
|
||
},
|
||
"dayId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "行程天ID(已有则传,新增不传)"
|
||
},
|
||
"dayNumber": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "天序号"
|
||
},
|
||
"dayTitle": {
|
||
"type": "string",
|
||
"description": "当日标题"
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"description": "行程描述"
|
||
},
|
||
"diningRemark": {
|
||
"type": "string",
|
||
"description": "餐饮备注"
|
||
},
|
||
"dinner": {
|
||
"type": "string",
|
||
"description": "晚餐"
|
||
},
|
||
"hotels": {
|
||
"type": "array",
|
||
"description": "住宿列表",
|
||
"items": {
|
||
"$ref": "#/definitions/住宿项",
|
||
"originalRef": "住宿项"
|
||
}
|
||
},
|
||
"lunch": {
|
||
"type": "string",
|
||
"description": "午餐"
|
||
},
|
||
"mileageManualOverride": {
|
||
"type": "boolean",
|
||
"description": "里程是否手动覆盖"
|
||
},
|
||
"nodes": {
|
||
"type": "array",
|
||
"description": "活动节点列表",
|
||
"items": {
|
||
"$ref": "#/definitions/活动节点",
|
||
"originalRef": "活动节点"
|
||
}
|
||
},
|
||
"photoUrls": {
|
||
"type": "array",
|
||
"description": "照片集",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"quoteText": {
|
||
"type": "string",
|
||
"description": "当日金句"
|
||
},
|
||
"routePoints": {
|
||
"type": "array",
|
||
"description": "途经路线点列表",
|
||
"items": {
|
||
"$ref": "#/definitions/途经路线点",
|
||
"originalRef": "途经路线点"
|
||
}
|
||
}
|
||
},
|
||
"title": "行程天"
|
||
},
|
||
"规格项": {
|
||
"type": "object",
|
||
"required": [
|
||
"tierName",
|
||
"tierSeq"
|
||
],
|
||
"properties": {
|
||
"tierName": {
|
||
"type": "string",
|
||
"example": "舒适",
|
||
"description": "规格名称"
|
||
},
|
||
"tierSeq": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 1,
|
||
"description": "规格序号(1开始递增)"
|
||
}
|
||
},
|
||
"title": "规格项"
|
||
},
|
||
"费用项": {
|
||
"type": "object",
|
||
"properties": {
|
||
"description": {
|
||
"type": "string",
|
||
"description": "说明"
|
||
},
|
||
"feeType": {
|
||
"type": "string",
|
||
"description": "费用类型"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "费用项ID(已有则传)"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "名称"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
},
|
||
"source": {
|
||
"type": "string",
|
||
"description": "来源(AUTO/MANUAL)"
|
||
},
|
||
"unit": {
|
||
"type": "string",
|
||
"description": "单位(自定义费用)"
|
||
},
|
||
"unitPrice": {
|
||
"type": "number",
|
||
"description": "单价(自定义费用)"
|
||
}
|
||
},
|
||
"title": "费用项"
|
||
},
|
||
"途经路线点": {
|
||
"type": "object",
|
||
"properties": {
|
||
"latitude": {
|
||
"type": "number",
|
||
"description": "纬度"
|
||
},
|
||
"longitude": {
|
||
"type": "number",
|
||
"description": "经度"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "地点名称"
|
||
},
|
||
"resourceId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "资源ID(可空=自定义地点)"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
}
|
||
},
|
||
"title": "途经路线点"
|
||
},
|
||
"额外成本项": {
|
||
"type": "object",
|
||
"properties": {
|
||
"costItemId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "费用项ID"
|
||
},
|
||
"daily": {
|
||
"type": "boolean",
|
||
"description": "是否按天计费"
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"description": "说明"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "费用项ID(已有则传,新增不传)"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "名称"
|
||
},
|
||
"quantity": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "数量"
|
||
},
|
||
"resourceId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "资源ID"
|
||
},
|
||
"resourceType": {
|
||
"type": "string",
|
||
"description": "资源类型"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
},
|
||
"unitPrice": {
|
||
"type": "number",
|
||
"description": "单价"
|
||
}
|
||
},
|
||
"title": "额外成本项"
|
||
},
|
||
"分页结果«管理端 - 产品线详情/列表项»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"page": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 1,
|
||
"description": "当前页码"
|
||
},
|
||
"pageSize": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 20,
|
||
"description": "每页条数"
|
||
},
|
||
"records": {
|
||
"type": "array",
|
||
"description": "数据列表",
|
||
"items": {
|
||
"$ref": "#/definitions/管理端 - 产品线详情/列表项",
|
||
"originalRef": "管理端 - 产品线详情/列表项"
|
||
}
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 100,
|
||
"description": "总记录数"
|
||
}
|
||
},
|
||
"title": "分页结果«管理端 - 产品线详情/列表项»"
|
||
},
|
||
"管理端 - 产品线下拉": {
|
||
"type": "object",
|
||
"properties": {
|
||
"lineId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品线ID"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "产品线名称"
|
||
}
|
||
},
|
||
"title": "管理端 - 产品线下拉"
|
||
},
|
||
"管理端 - 产品线保存": {
|
||
"type": "object",
|
||
"required": [
|
||
"name"
|
||
],
|
||
"properties": {
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "封面图"
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"description": "描述"
|
||
},
|
||
"lineId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品线ID(修改时传)"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "名称"
|
||
},
|
||
"productType": {
|
||
"type": "string",
|
||
"description": "绑定产品类型"
|
||
},
|
||
"seasons": {
|
||
"type": "array",
|
||
"description": "适用季节",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
},
|
||
"status": {
|
||
"type": "string",
|
||
"description": "状态(ACTIVE/INACTIVE)"
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"description": "标签",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"title": "管理端 - 产品线保存"
|
||
},
|
||
"管理端 - 产品线详情/列表项": {
|
||
"type": "object",
|
||
"properties": {
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "封面图"
|
||
},
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time",
|
||
"description": "创建时间"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "创建人ID"
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"description": "描述"
|
||
},
|
||
"lineId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品线ID"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "产品线名称"
|
||
},
|
||
"productCount": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"example": 12,
|
||
"description": "产品数量"
|
||
},
|
||
"productType": {
|
||
"type": "string",
|
||
"description": "绑定产品类型"
|
||
},
|
||
"seasons": {
|
||
"type": "array",
|
||
"description": "适用季节",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序"
|
||
},
|
||
"status": {
|
||
"type": "string",
|
||
"description": "状态"
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"description": "产品线标签",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"title": "管理端 - 产品线详情/列表项"
|
||
},
|
||
"统一响应结果«List«管理端 - 产品线下拉»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/管理端 - 产品线下拉",
|
||
"originalRef": "管理端 - 产品线下拉"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«管理端 - 产品线下拉»»"
|
||
},
|
||
"统一响应结果«分页结果«管理端 - 产品线详情/列表项»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"description": "响应数据",
|
||
"$ref": "#/definitions/分页结果«管理端 - 产品线详情/列表项»",
|
||
"originalRef": "分页结果«管理端 - 产品线详情/列表项»"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«分页结果«管理端 - 产品线详情/列表项»»"
|
||
},
|
||
"统一响应结果«管理端 - 产品线详情/列表项»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"description": "响应数据",
|
||
"$ref": "#/definitions/管理端 - 产品线详情/列表项",
|
||
"originalRef": "管理端 - 产品线详情/列表项"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«管理端 - 产品线详情/列表项»"
|
||
},
|
||
"管理端 - 安全保障模板": {
|
||
"type": "object",
|
||
"properties": {
|
||
"items": {
|
||
"type": "string",
|
||
"description": "具体条目(JSON)"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "模板名称"
|
||
},
|
||
"templateId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "模板ID"
|
||
}
|
||
},
|
||
"title": "管理端 - 安全保障模板"
|
||
},
|
||
"管理端 - 温馨提示": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tipsId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "提示ID"
|
||
},
|
||
"tipsName": {
|
||
"type": "string",
|
||
"description": "提示名称"
|
||
}
|
||
},
|
||
"title": "管理端 - 温馨提示"
|
||
},
|
||
"管理端 - 预订条款": {
|
||
"type": "object",
|
||
"properties": {
|
||
"termsId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "条款ID"
|
||
},
|
||
"termsName": {
|
||
"type": "string",
|
||
"description": "条款名称"
|
||
}
|
||
},
|
||
"title": "管理端 - 预订条款"
|
||
},
|
||
"统一响应结果«List«管理端 - 安全保障模板»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/管理端 - 安全保障模板",
|
||
"originalRef": "管理端 - 安全保障模板"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«管理端 - 安全保障模板»»"
|
||
},
|
||
"统一响应结果«List«管理端 - 温馨提示»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/管理端 - 温馨提示",
|
||
"originalRef": "管理端 - 温馨提示"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«管理端 - 温馨提示»»"
|
||
},
|
||
"统一响应结果«List«管理端 - 预订条款»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/管理端 - 预订条款",
|
||
"originalRef": "管理端 - 预订条款"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«管理端 - 预订条款»»"
|
||
},
|
||
"C端人群优惠": {
|
||
"type": "object",
|
||
"properties": {
|
||
"childAccommodation": {
|
||
"type": "string",
|
||
"description": "儿童住宿"
|
||
},
|
||
"childMeal": {
|
||
"type": "string",
|
||
"description": "儿童餐饮"
|
||
},
|
||
"childTicket": {
|
||
"type": "string",
|
||
"description": "儿童门票"
|
||
},
|
||
"elderTicket": {
|
||
"type": "string",
|
||
"description": "老人门票"
|
||
},
|
||
"tips": {
|
||
"type": "string",
|
||
"description": "温馨提示"
|
||
}
|
||
},
|
||
"title": "C端人群优惠"
|
||
},
|
||
"C端活动节点": {
|
||
"type": "object",
|
||
"properties": {
|
||
"description": {
|
||
"type": "string",
|
||
"description": "描述"
|
||
},
|
||
"durationMinutes": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "时长(分钟)"
|
||
},
|
||
"nodeName": {
|
||
"type": "string",
|
||
"description": "节点名称"
|
||
},
|
||
"nodeType": {
|
||
"type": "string",
|
||
"description": "节点类型"
|
||
},
|
||
"startTime": {
|
||
"type": "string",
|
||
"description": "开始时间"
|
||
}
|
||
},
|
||
"title": "C端活动节点"
|
||
},
|
||
"C端行程天": {
|
||
"type": "object",
|
||
"properties": {
|
||
"breakfast": {
|
||
"type": "string",
|
||
"description": "早餐"
|
||
},
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "封面图"
|
||
},
|
||
"dayNumber": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "天序号"
|
||
},
|
||
"dayTitle": {
|
||
"type": "string",
|
||
"description": "标题"
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"description": "描述"
|
||
},
|
||
"dinner": {
|
||
"type": "string",
|
||
"description": "晚餐"
|
||
},
|
||
"lunch": {
|
||
"type": "string",
|
||
"description": "午餐"
|
||
},
|
||
"nodes": {
|
||
"type": "array",
|
||
"description": "节点列表",
|
||
"items": {
|
||
"$ref": "#/definitions/C端活动节点",
|
||
"originalRef": "C端活动节点"
|
||
}
|
||
}
|
||
},
|
||
"title": "C端行程天"
|
||
},
|
||
"C端费用说明": {
|
||
"type": "object",
|
||
"properties": {
|
||
"description": {
|
||
"type": "string",
|
||
"description": "说明"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "名称"
|
||
}
|
||
},
|
||
"title": "C端费用说明"
|
||
},
|
||
"Map«int,List«ProductDayHotelDO»»": {
|
||
"type": "object",
|
||
"title": "Map«int,List«ProductDayHotelDO»»",
|
||
"additionalProperties": {
|
||
"$ref": "#/definitions/List",
|
||
"originalRef": "List"
|
||
}
|
||
},
|
||
"ProductDayHotelDO": {
|
||
"type": "object",
|
||
"properties": {
|
||
"createTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"createdBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"dayId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"dayNumber": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"deletedAt": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"hotelId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"hotelName": {
|
||
"type": "string"
|
||
},
|
||
"id": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"isDefault": {
|
||
"type": "boolean"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"roomCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"roomTypeId": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"tierSeq": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"updateTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"updatedBy": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
},
|
||
"title": "ProductDayHotelDO"
|
||
},
|
||
"小程序端 - 产品详情": {
|
||
"type": "object",
|
||
"properties": {
|
||
"carouselImages": {
|
||
"type": "array",
|
||
"description": "轮播图",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "封面图"
|
||
},
|
||
"crowdBenefit": {
|
||
"description": "人群优惠",
|
||
"$ref": "#/definitions/C端人群优惠",
|
||
"originalRef": "C端人群优惠"
|
||
},
|
||
"excludedFees": {
|
||
"type": "array",
|
||
"description": "费用不含",
|
||
"items": {
|
||
"$ref": "#/definitions/C端费用说明",
|
||
"originalRef": "C端费用说明"
|
||
}
|
||
},
|
||
"includedFees": {
|
||
"type": "array",
|
||
"description": "费用包含",
|
||
"items": {
|
||
"$ref": "#/definitions/C端费用说明",
|
||
"originalRef": "C端费用说明"
|
||
}
|
||
},
|
||
"introduction": {
|
||
"type": "string",
|
||
"description": "产品简介"
|
||
},
|
||
"itinerary": {
|
||
"type": "array",
|
||
"description": "行程天列表",
|
||
"items": {
|
||
"$ref": "#/definitions/C端行程天",
|
||
"originalRef": "C端行程天"
|
||
}
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "产品名称"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品ID"
|
||
},
|
||
"productType": {
|
||
"type": "string",
|
||
"description": "产品类型"
|
||
},
|
||
"routeMapUrl": {
|
||
"type": "string",
|
||
"description": "路线图URL"
|
||
},
|
||
"subtitle": {
|
||
"type": "string",
|
||
"description": "副标题"
|
||
},
|
||
"tripDays": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "行程天数"
|
||
},
|
||
"tripNights": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "行程晚数"
|
||
}
|
||
},
|
||
"title": "小程序端 - 产品详情"
|
||
},
|
||
"小程序端 - 价格日历": {
|
||
"type": "object",
|
||
"properties": {
|
||
"days": {
|
||
"type": "array",
|
||
"description": "日历列表",
|
||
"items": {
|
||
"$ref": "#/definitions/日历日期项",
|
||
"originalRef": "日历日期项"
|
||
}
|
||
}
|
||
},
|
||
"title": "小程序端 - 价格日历"
|
||
},
|
||
"日历日期项": {
|
||
"type": "object",
|
||
"properties": {
|
||
"adultPrice": {
|
||
"type": "number",
|
||
"description": "成人售价"
|
||
},
|
||
"childPrice": {
|
||
"type": "number",
|
||
"description": "儿童售价"
|
||
},
|
||
"date": {
|
||
"type": "string",
|
||
"description": "日期(yyyy-MM-dd)"
|
||
},
|
||
"isSelectable": {
|
||
"type": "boolean",
|
||
"description": "是否可选(有库存且未过期)"
|
||
},
|
||
"priceType": {
|
||
"type": "string",
|
||
"description": "价格类型"
|
||
},
|
||
"remainStock": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "剩余库存(NULL=不限量)"
|
||
}
|
||
},
|
||
"title": "日历日期项"
|
||
},
|
||
"统一响应结果«List«小程序端 - 产品详情»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/小程序端 - 产品详情",
|
||
"originalRef": "小程序端 - 产品详情"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«小程序端 - 产品详情»»"
|
||
},
|
||
"统一响应结果«Map«int,List«ProductDayHotelDO»»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "object",
|
||
"description": "响应数据",
|
||
"additionalProperties": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/definitions/ProductDayHotelDO",
|
||
"originalRef": "ProductDayHotelDO"
|
||
}
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«Map«int,List«ProductDayHotelDO»»»"
|
||
},
|
||
"统一响应结果«小程序端 - 产品详情»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"description": "响应数据",
|
||
"$ref": "#/definitions/小程序端 - 产品详情",
|
||
"originalRef": "小程序端 - 产品详情"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«小程序端 - 产品详情»"
|
||
},
|
||
"统一响应结果«小程序端 - 价格日历»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"description": "响应数据",
|
||
"$ref": "#/definitions/小程序端 - 价格日历",
|
||
"originalRef": "小程序端 - 价格日历"
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«小程序端 - 价格日历»"
|
||
},
|
||
"小程序端 - 产品列表项": {
|
||
"type": "object",
|
||
"properties": {
|
||
"coverImageUrl": {
|
||
"type": "string",
|
||
"description": "封面图URL"
|
||
},
|
||
"lineName": {
|
||
"type": "string",
|
||
"description": "产品线名称(前端叫「主题名」)"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "产品名称"
|
||
},
|
||
"paymentType": {
|
||
"type": "string",
|
||
"description": "支付方式(FULL=全款, DEPOSIT=订金)"
|
||
},
|
||
"productId": {
|
||
"type": "integer",
|
||
"format": "int64",
|
||
"description": "产品ID"
|
||
},
|
||
"productType": {
|
||
"type": "string",
|
||
"description": "产品类型(CORE/GROUP/CUSTOM)"
|
||
},
|
||
"seasons": {
|
||
"type": "array",
|
||
"description": "产品季节(如[\"summer\",\"autumn\"])",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"sortOrder": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "排序号"
|
||
},
|
||
"startPrice": {
|
||
"type": "number",
|
||
"description": "起步价(¥X起,最低成人售价)"
|
||
},
|
||
"startPriceLabel": {
|
||
"type": "string",
|
||
"description": "起步价展示文案(如\"¥3980起/人\")"
|
||
},
|
||
"subtitle": {
|
||
"type": "string",
|
||
"description": "副标题(一句话卖点)"
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"description": "产品标签(如[\"亲子\",\"研学\"])",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"tierCount": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "规格数量(前端叫「规格数」,单一=1,多档=N)"
|
||
},
|
||
"tripDays": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "行程天数"
|
||
},
|
||
"tripNights": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"description": "行程晚数"
|
||
}
|
||
},
|
||
"title": "小程序端 - 产品列表项"
|
||
},
|
||
"统一响应结果«List«小程序端 - 产品列表项»»": {
|
||
"type": "object",
|
||
"properties": {
|
||
"code": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"example": 200,
|
||
"description": "状态码"
|
||
},
|
||
"data": {
|
||
"type": "array",
|
||
"description": "响应数据",
|
||
"items": {
|
||
"$ref": "#/definitions/小程序端 - 产品列表项",
|
||
"originalRef": "小程序端 - 产品列表项"
|
||
}
|
||
},
|
||
"message": {
|
||
"type": "string",
|
||
"example": "成功",
|
||
"description": "响应消息"
|
||
},
|
||
"success": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"title": "统一响应结果«List«小程序端 - 产品列表项»»"
|
||
}
|
||
}
|
||
} |