{ "swagger": "2.0", "info": { "title": "小程序聚合服务", "version": "1.0.0" }, "basePath": "/", "paths": { "/mp/home": { "get": { "tags": [ "C端 - 首页接口" ], "summary": "首页数据", "description": "聚合流程:并行获取推荐产品列表+产品线列表+轮播图 → Redis缓存5分钟 → 返回聚合数据\n\n**关联字典(BFF透传)**:\n- product_type:产品类型(产品卡片显示)\n- product_status:产品状态(透传自product-service)", "operationId": "getHomeDataUsingGET", "produces": [ "*/*" ], "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/search": { "get": { "tags": [ "C端 - 搜索接口" ], "summary": "搜索产品", "description": "按关键词搜索已上架产品(匹配产品名称和描述),支持按产品类型进一步筛选\n\n**关联字典(BFF透传)**:\n- product_type:产品类型(筛选+显示)", "operationId": "searchUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "keyword", "in": "query", "description": "搜索关键词", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false }, { "name": "productType", "in": "query", "description": "产品类型:CORE/ROUTE/CUSTOM/GROUP", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/product/batch/{batchId}/combos": { "get": { "tags": [ "C端 - 产品接口" ], "summary": "GROUP批次套餐列表", "description": "返回指定批次的所有套餐(名称、人数组合、价格、库存)", "operationId": "listBatchCombosUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "batchId", "in": "path", "description": "批次ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/product/lines": { "get": { "tags": [ "C端 - 产品接口" ], "summary": "产品线列表", "description": "返回所有已启用的产品线,用于小程序首页或筛选栏展示", "operationId": "listLinesUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/product/list": { "get": { "tags": [ "C端 - 产品接口" ], "summary": "产品列表", "description": "分页查询已上架产品,支持按关键词、产品类型(CORE/ROUTE/CUSTOM/GROUP)、季节、天数、目的地、产品线筛选和排序\n\n**关联字典(BFF透传)**:\n- product_type:产品类型(列表筛选+显示)\n- product_status:产品状态(透传自product-service)", "operationId": "listProductsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "destination", "in": "query", "description": "目的地", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "keyword", "in": "query", "description": "搜索关键词", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "lineId", "in": "query", "description": "产品线ID", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false }, { "name": "productType", "in": "query", "description": "产品类型:CORE/ROUTE/CUSTOM/GROUP", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "season", "in": "query", "description": "季节", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "sortBy", "in": "query", "description": "排序字段", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "sortDir", "in": "query", "description": "排序方向", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "tripDays", "in": "query", "description": "天数", "required": false, "type": "integer", "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/product/{productId}": { "get": { "tags": [ "C端 - 产品接口" ], "summary": "产品详情(聚合收藏状态)", "description": "聚合流程:获取产品详情 → 并行查询收藏状态 → 异步记录足迹 → 返回聚合数据。支持未登录访问(不返回收藏状态)\n\n**关联字典(BFF透传)**:\n- product_type:产品类型(显示)\n- product_status:产品状态(透传自product-service)", "operationId": "getProductUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "productId", "in": "path", "description": "产品ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«C端产品详情»", "originalRef": "统一响应结果«C端产品详情»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«C端产品详情»", "originalRef": "统一响应结果«C端产品详情»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/product/{productId}/batch-calendar": { "get": { "tags": [ "C端 - 产品接口" ], "summary": "GROUP批次日历", "description": "返回可报名批次列表(出发日期、剩余名额等),仅ENROLLING和CONFIRMED状态", "operationId": "getBatchCalendarUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "productId", "in": "path", "description": "产品ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/product/{productId}/group-quote": { "get": { "tags": [ "C端 - 产品接口" ], "summary": "GROUP报价", "description": "返回指定批次的各套餐报价(totalSellPrice)", "operationId": "getGroupQuoteUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "batchId", "in": "query", "description": "批次ID", "required": false, "type": "integer", "format": "int64", "allowEmptyValue": false }, { "name": "productId", "in": "path", "description": "产品ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/product/{productId}/price-calendar": { "get": { "tags": [ "C端 - 产品接口" ], "summary": "价格日历", "description": "返回产品指定日期范围内的每日价格,用于日历组件展示。不传日期时默认返回未来一个月", "operationId": "getPriceCalendarUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "endDate", "in": "query", "description": "结束日期", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "productId", "in": "path", "description": "产品ID", "required": false, "type": "integer", "format": "int64" }, { "name": "startDate", "in": "query", "description": "开始日期", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/product/{productId}/quote": { "post": { "tags": [ "C端 - 产品接口" ], "summary": "报价计算(含早鸟优惠)", "description": "报价流程:传入出发日期+人数 → 价格日历计算基础报价(与下单一致) → 匹配早鸟优惠方案 → 返回明细报价+优惠信息。\n\n支付方式说明:\n- FULL: 全额支付,需一次性付清全部金额\n- DEPOSIT: 定金+尾款,先付定金(比例由产品配置),出行前补齐尾款", "operationId": "calculateQuoteUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "productId", "in": "path", "description": "产品ID", "required": false, "type": "integer", "format": "int64" }, { "in": "body", "name": "request", "description": "request", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/bind-by-contact": { "post": { "tags": [ "C端 - 订单接口" ], "summary": "绑定未绑定的订单", "description": "绑定流程:用户登录 → 完善个人资料 → 自动通过联系人手机号+姓名匹配 → 将userId=NULL的订单绑定到当前用户", "operationId": "bindByContactUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "绑定请求体", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/count": { "get": { "tags": [ "C端 - 订单接口" ], "summary": "各状态订单数量", "description": "统计当前用户各状态的订单数量,用于「我的」页面的订单状态角标展示\n\n**关联字典(BFF透传)**:\n- order_status:订单状态(状态分类统计)", "operationId": "countByStatusUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/create": { "post": { "tags": [ "C端 - 订单接口" ], "summary": "创建订单", "description": "下单流程:选择产品 → 填写联系人/出行人信息 → 报价计算 → 创建订单 → 返回订单ID", "operationId": "createOrderUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "创建订单请求体", "required": false, "schema": { "$ref": "#/definitions/C端创建订单请求", "originalRef": "C端创建订单请求" } } ], "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/list": { "get": { "tags": [ "C端 - 订单接口" ], "summary": "订单列表", "description": "分页查询当前用户的订单列表,支持按状态筛选。返回订单摘要信息(不含详细出行人信息)\n\n**关联字典(BFF透传)**:\n- order_status:订单状态(列表筛选+显示)\n- product_type:产品类型(订单卡片显示)", "operationId": "listOrdersUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false }, { "name": "status", "in": "query", "description": "状态", "required": false, "type": "string", "allowEmptyValue": false } ], "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/lookup": { "get": { "tags": [ "C端 - 订单接口" ], "summary": "通过联系人手机号+姓名查找订单(无需登录)", "description": "无需登录即可查询。用于管理员代下单场景:管理员创建订单后,用户通过联系人手机号+姓名查找订单并绑定到自己账号。仅返回尚未绑定用户(userId=NULL)的订单。", "operationId": "lookupByContactUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "contactName", "in": "query", "description": "联系人姓名", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "contactPhone", "in": "query", "description": "联系人手机号", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/refund-reasons": { "get": { "tags": [ "C端 - 退款接口" ], "summary": "退款原因列表", "description": "返回系统预设的退款原因选项,用于退款申请页面的原因选择", "operationId": "listRefundReasonsUsingGET", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/refund/{applicationId}": { "get": { "tags": [ "C端 - 退款接口" ], "summary": "退款申请详情", "description": "获取退款申请的完整信息,包含审核状态、退款金额、退款进度和操作记录\n\n**关联字典(BFF透传)**:\n- order_status:订单状态(显示)\n- payment_status:支付/退款状态(显示)", "operationId": "getRefundDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "applicationId", "in": "path", "description": "退款申请ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/refund/{applicationId}/appeal": { "post": { "tags": [ "C端 - 退款接口" ], "summary": "发起申诉", "description": "退款被拒绝后,用户可在3天内发起一次申诉,由上级管理员重新审核", "operationId": "refundAppealUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "applicationId", "in": "path", "description": "退款申请ID", "required": false, "type": "integer", "format": "int64" }, { "in": "body", "name": "body", "description": "申诉请求体", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/refund/{applicationId}/cancel": { "post": { "tags": [ "C端 - 退款接口" ], "summary": "撤回退款申请", "description": "仅PENDING状态的退款申请可撤回,撤回后订单恢复到原状态", "operationId": "cancelRefundUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "applicationId", "in": "path", "description": "退款申请ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/upcoming": { "get": { "tags": [ "C端 - 订单接口" ], "summary": "即将出发的订单", "description": "查询3天内即将出发的订单(状态为已确认/待出发/出行中),含合同和保险信息,按出发日期升序", "operationId": "getUpcomingDeparturesUsingGET", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/{orderId}": { "get": { "tags": [ "C端 - 订单接口" ], "summary": "订单详情", "description": "获取订单完整信息,包含产品快照、出行人列表、支付信息、合同状态等\n\n**关联字典(BFF透传)**:\n- order_status:订单状态(显示)\n- product_type:产品类型(显示)\n- contract_status:合同状态(显示)", "operationId": "getOrderUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/{orderId}/approve-unlock": { "post": { "tags": [ "C端 - 订单接口" ], "summary": "同意解锁订单", "description": "用户同意管理员的修改请求,解除订单锁定状态,允许管理员继续修改订单", "operationId": "approveUnlockUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/{orderId}/cancel": { "post": { "tags": [ "C端 - 订单接口" ], "summary": "取消订单", "description": "取消规则:仅PENDING_PAY/DEPOSIT_PAID状态可用户取消,取消后不可恢复", "operationId": "cancelOrderUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" }, { "in": "body", "name": "body", "description": "body", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/{orderId}/edit": { "put": { "tags": [ "C端 - 订单接口" ], "summary": "修改订单", "description": "用户可修改出发日期和出行人。仅待支付/已付定金/已支付/已确认/待付尾款/待出发状态可修改,清单已确认的订单不允许修改。修改后重走内部流程", "operationId": "editOrderUsingPUT", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" }, { "in": "body", "name": "body", "description": "body", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/{orderId}/refund": { "post": { "tags": [ "C端 - 退款接口" ], "summary": "提交退款申请", "description": "退款流程:获取退款预览 → 选择退款原因 → 提交退款申请 → 管理员审核 → 审核通过后自动退款到原支付方式", "operationId": "applyRefundUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "退款申请请求体", "required": false, "schema": { "$ref": "#/definitions/退款申请请求", "originalRef": "退款申请请求" } }, { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/{orderId}/refund-detail": { "get": { "tags": [ "C端 - 退款接口" ], "summary": "根据订单ID获取最新退款详情", "description": "查询订单关联的最新一条退款申请详情,无退款记录时返回null\n\n**关联字典(BFF透传)**:\n- order_status:订单状态(显示)\n- payment_status:支付/退款状态(显示)", "operationId": "getRefundDetailByOrderUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/{orderId}/refund-preview": { "get": { "tags": [ "C端 - 退款接口" ], "summary": "退款金额预览", "description": "根据退款政策和订单出发日期计算可退金额,展示退款比例和扣除金额明细", "operationId": "refundPreviewUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/order/{orderId}/resources": { "get": { "tags": [ "C端 - 订单接口" ], "summary": "订单资源详情(按分类)", "description": "解析产品快照,提取资源详情按分类返回", "operationId": "getOrderResourcesUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,List«Map«string,object»»»»", "originalRef": "统一响应结果«Map«string,List«Map«string,object»»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,List«Map«string,object»»»»", "originalRef": "统一响应结果«Map«string,List«Map«string,object»»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/invoice/apply": { "post": { "tags": [ "C端 - 发票接口" ], "summary": "申请开票", "description": "开票流程:订单完成后 → 填写发票信息(抬头/税号/类型) → 提交开票申请 → 管理员处理 → 发送电子发票", "operationId": "applyInvoiceUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "开票请求体", "required": false, "schema": { "$ref": "#/definitions/发票申请请求", "originalRef": "发票申请请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/invoice/order/{orderId}": { "get": { "tags": [ "C端 - 发票接口" ], "summary": "通过订单ID查询发票", "description": "查询指定订单的发票信息,如果订单未开票则返回null", "operationId": "getInvoiceByOrderIdUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/invoice/{id}": { "get": { "tags": [ "C端 - 发票接口" ], "summary": "发票详情", "description": "获取发票的完整信息,包含开票状态、发票抬头、税号、金额、电子发票文件链接等", "operationId": "getInvoiceDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "发票ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/invoice/{invoiceId}/reissue": { "post": { "tags": [ "C端 - 发票接口" ], "summary": "发票换开", "description": "对已开发票申请换开(修改抬头/税号等),原发票作废后重新开具新发票", "operationId": "reissueInvoiceUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "invoiceId", "in": "path", "description": "发票ID", "required": false, "type": "integer", "format": "int64" }, { "in": "body", "name": "body", "description": "body", "required": true, "schema": { "$ref": "#/definitions/发票换开请求", "originalRef": "发票换开请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/payment/prepay": { "post": { "tags": [ "C端 - 支付接口" ], "summary": "发起支付", "description": "支付流程:选择支付方式(JSAPI/H5) → 调用微信支付API → 返回支付参数 → 前端调起微信支付\n\n**关联字典(BFF透传)**:\n- payment_status:支付状态(返回字段)", "operationId": "prepayUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "request", "description": "支付请求体", "required": false, "schema": { "$ref": "#/definitions/支付预下单请求", "originalRef": "支付预下单请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/payment/status/{orderId}": { "get": { "tags": [ "C端 - 支付接口" ], "summary": "查询支付状态", "description": "**关联字典(BFF透传)**:\n- payment_status:支付状态(显示)", "operationId": "getStatusUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/payment/transactions/{orderId}": { "get": { "tags": [ "C端 - 支付接口" ], "summary": "订单交易记录列表", "description": "**关联字典(BFF透传)**:\n- payment_status:支付状态(显示)", "operationId": "listTransactionsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/trip/list": { "get": { "tags": [ "C端 - 行程接口" ], "summary": "行程列表", "description": "获取当前登录用户的行程列表(已确认及进行中的订单对应的行程)\n\n**关联字典(BFF透传)**:\n- order_status:订单/行程状态(显示)", "operationId": "getTripListUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/trip/today": { "get": { "tags": [ "C端 - 行程接口" ], "summary": "今日行程", "description": "获取今日行程(如果有正在进行中的行程),无行程时data为null\n\n**关联字典(BFF透传)**:\n- order_status:订单/行程状态(显示)", "operationId": "getTodayTripUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/trip/weather": { "get": { "tags": [ "C端 - 行程接口" ], "summary": "天气查询", "description": "高德天气API代理,传入城市名称返回实时天气信息", "operationId": "getWeatherUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "city", "in": "query", "description": "城市名称,如「成都」「拉萨」", "required": true, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/trip/{orderId}": { "get": { "tags": [ "C端 - 行程接口" ], "summary": "行程详情", "description": "获取订单对应的行程详情,含每日行程节点信息(景点/酒店/餐厅等)\n\n**关联字典(BFF透传)**:\n- order_status:订单/行程状态(显示)", "operationId": "getTripDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": true, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/account": { "delete": { "tags": [ "C端 - 用户接口" ], "summary": "注销账号", "description": "注销后用户数据将被软删除,30天内可联系客服恢复", "operationId": "deleteAccountUsingDELETE", "produces": [ "*/*" ], "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/login": { "post": { "tags": [ "C端 - 用户接口" ], "summary": "微信登录", "description": "登录流程:小程序wx.login获取code → 后端换取openid → 查找/创建用户 → 返回JWT令牌+needProfile标记", "operationId": "loginUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "request", "description": "request", "required": true, "schema": { "$ref": "#/definitions/微信登录请求", "originalRef": "微信登录请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/login/sms": { "post": { "tags": [ "C端 - 用户接口" ], "summary": "短信登录", "description": "登录流程:获取验证码 → 验证手机号+验证码 → 查找/创建用户 → 返回JWT令牌", "operationId": "loginBySmsUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "request", "description": "request", "required": true, "schema": { "$ref": "#/definitions/短信验证码登录请求", "originalRef": "短信验证码登录请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/logout": { "post": { "tags": [ "C端 - 用户接口" ], "summary": "用户登出", "description": "清除用户登录状态和服务端缓存的令牌信息。登出后需重新登录获取新令牌。\n\n**权限**:需登录。", "operationId": "logoutUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/ocr/idcard": { "post": { "tags": [ "C端 - 用户接口" ], "summary": "身份证OCR识别", "description": "将身份证图片上传到OSS后,传入ossUrl进行OCR识别。返回姓名、身份证号、性别、民族等结构化数据,可用于自动填充出行人信息", "operationId": "ocrIdCardUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "body", "required": true, "schema": { "$ref": "#/definitions/身份证OCR识别请求", "originalRef": "身份证OCR识别请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,string»»", "originalRef": "统一响应结果«Map«string,string»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,string»»", "originalRef": "统一响应结果«Map«string,string»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/profile": { "get": { "tags": [ "C端 - 用户接口" ], "summary": "获取用户信息", "description": "获取当前登录用户的个人资料,包含头像、昵称、手机号、实名信息等", "operationId": "getProfileUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" }, "put": { "tags": [ "C端 - 用户接口" ], "summary": "更新用户信息", "description": "更新当前用户的个人资料,支持部分更新(只传需要修改的字段)。首次完善资料时realName为必填", "operationId": "updateProfileUsingPUT", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "body", "required": true, "schema": { "$ref": "#/definitions/更新个人资料请求", "originalRef": "更新个人资料请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/sms/send": { "post": { "tags": [ "C端 - 用户接口" ], "summary": "发送短信验证码", "description": "向指定手机号发送登录验证码,有效期5分钟,60秒内不可重复发送", "operationId": "sendSmsCodeUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "request", "description": "request", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/traveler": { "get": { "tags": [ "C端 - 出行人接口" ], "summary": "出行人列表", "description": "返回当前用户的所有出行人列表。如果用户已完善实名信息,列表中会自动包含一条「本人」虚拟记录(travelerId=0)", "operationId": "listTravelersUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" }, "post": { "tags": [ "C端 - 出行人接口" ], "summary": "添加出行人", "description": "添加常用出行人信息(姓名/证件/联系方式等),下单时可快速选择。单个用户最多50个出行人", "operationId": "addTravelerUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "body", "required": true, "schema": { "$ref": "#/definitions/出行人请求(新增/修改)", "originalRef": "出行人请求(新增/修改)" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/traveler/{id}": { "get": { "tags": [ "C端 - 出行人接口" ], "summary": "出行人详情", "description": "获取单个出行人的完整信息(姓名、证件信息、联系方式等)。\n\n**权限**:需登录,仅能查看自己的出行人。", "operationId": "getTravelerUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "出行人ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" }, "put": { "tags": [ "C端 - 出行人接口" ], "summary": "更新出行人", "description": "修改出行人信息,支持部分更新(只传需要修改的字段)。已关联订单的出行人修改不影响历史订单记录。\n\n**权限**:需登录。", "operationId": "updateTravelerUsingPUT", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "出行人ID", "required": false, "type": "integer", "format": "int64" }, { "in": "body", "name": "body", "description": "body", "required": true, "schema": { "$ref": "#/definitions/出行人请求(新增/修改)", "originalRef": "出行人请求(新增/修改)" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" }, "delete": { "tags": [ "C端 - 出行人接口" ], "summary": "删除出行人", "description": "删除常用出行人记录。默认出行人不可删除,需先取消默认后再删除。\n\n**权限**:需登录。", "operationId": "deleteTravelerUsingDELETE", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "出行人ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/traveler/{id}/default": { "put": { "tags": [ "C端 - 出行人接口" ], "summary": "设为默认出行人", "description": "设为默认出行人后,下单时自动作为第一个出行人。每个用户只能有一个默认出行人", "operationId": "setDefaultTravelerUsingPUT", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "出行人ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/favorite": { "get": { "tags": [ "C端 - 收藏接口" ], "summary": "收藏列表(含资源摘要)", "description": "分页查询收藏列表,聚合层会补充每个收藏项对应资源的摘要信息(名称、封面图、价格等)。支持按目标类型筛选。\n\n**权限**:需登录。\n\n**关联字典**:\n- favorite_resource_type:收藏资源类型(PRODUCT/SCENIC/RESTAURANT/ACTIVITY)", "operationId": "listFavoritesUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false }, { "name": "targetType", "in": "query", "description": "目标类型筛选(字典:favorite_resource_type):PRODUCT/SCENIC/RESTAURANT/ACTIVITY", "required": false, "type": "string", "allowEmptyValue": false } ], "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" } }, "deprecated": false, "x-order": "2147483647" }, "post": { "tags": [ "C端 - 收藏接口" ], "summary": "添加收藏", "description": "将产品/景区/餐厅/活动加入收藏。同一目标重复收藏会返回已有收藏记录", "operationId": "addFavoriteUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "body", "required": true, "schema": { "$ref": "#/definitions/收藏请求", "originalRef": "收藏请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/favorite/batch": { "delete": { "tags": [ "C端 - 收藏接口" ], "summary": "批量删除收藏", "description": "批量删除多条收藏记录,传入收藏记录ID列表。用于收藏管理页面的批量操作。\n\n**权限**:需登录,仅能删除自己的收藏。", "operationId": "batchDeleteFavoritesUsingDELETE", "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "ids", "description": "收藏ID列表", "required": false, "schema": { "type": "array", "items": { "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/favorite/by-target": { "delete": { "tags": [ "C端 - 收藏接口" ], "summary": "按目标取消收藏", "description": "通过目标类型+目标ID取消收藏,适用于详情页点击取消收藏的场景(不需要知道收藏记录ID)。\n\n**权限**:需登录。", "operationId": "deleteFavoriteByTargetUsingDELETE", "produces": [ "*/*" ], "parameters": [ { "name": "targetId", "in": "query", "description": "目标资源ID", "required": false, "type": "integer", "format": "int64", "allowEmptyValue": false }, { "name": "targetType", "in": "query", "description": "目标类型", "required": false, "type": "string", "allowEmptyValue": false } ], "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/favorite/check": { "get": { "tags": [ "C端 - 收藏接口" ], "summary": "检查是否已收藏", "description": "检查当前用户是否已收藏指定资源,用于详情页收藏按钮状态显示。\n\n**权限**:需登录。", "operationId": "checkFavoriteUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "targetId", "in": "query", "description": "目标资源ID", "required": false, "type": "integer", "format": "int64", "allowEmptyValue": false }, { "name": "targetType", "in": "query", "description": "目标类型(字典:favorite_resource_type)", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/favorite/{id}": { "delete": { "tags": [ "C端 - 收藏接口" ], "summary": "取消收藏", "description": "通过收藏记录ID取消收藏,适用于收藏列表页的删除操作。\n\n**权限**:需登录,仅能删除自己的收藏。", "operationId": "deleteFavoriteUsingDELETE", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "收藏记录ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/footprint": { "get": { "tags": [ "C端 - 足迹接口" ], "summary": "足迹列表(含资源摘要)", "description": "分页查询浏览足迹列表,聚合层会补充每条足迹对应资源的摘要信息(名称、封面图等)。支持按资源类型筛选,按浏览时间倒序。\n\n**权限**:需登录。", "operationId": "listFootprintsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false }, { "name": "resourceType", "in": "query", "description": "资源类型筛选:PRODUCT/SCENIC/RESTAURANT/ACTIVITY", "required": false, "type": "string", "allowEmptyValue": false } ], "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" } }, "deprecated": false, "x-order": "2147483647" }, "post": { "tags": [ "C端 - 足迹接口" ], "summary": "记录足迹", "description": "记录用户浏览资源的足迹,同一资源重复浏览会更新浏览时间而非新增记录", "operationId": "addFootprintUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "body", "required": true, "schema": { "$ref": "#/definitions/添加足迹请求", "originalRef": "添加足迹请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/footprint/batch": { "delete": { "tags": [ "C端 - 足迹接口" ], "summary": "批量删除足迹", "description": "批量删除多条浏览足迹记录,传入足迹ID列表。用于足迹管理页面的批量清理。\n\n**权限**:需登录,仅能删除自己的足迹。", "operationId": "batchDeleteFootprintsUsingDELETE", "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "ids", "description": "足迹ID列表", "required": false, "schema": { "type": "array", "items": { "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/user/footprint/{id}": { "delete": { "tags": [ "C端 - 足迹接口" ], "summary": "删除足迹", "description": "删除单条浏览足迹记录。\n\n**权限**:需登录,仅能删除自己的足迹。", "operationId": "deleteFootprintUsingDELETE", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "足迹ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/message/list": { "get": { "tags": [ "C端 - 消息接口" ], "summary": "消息列表", "description": "消息列表,支持按分类筛选,按时间倒序分页返回", "operationId": "listMessagesUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "category", "in": "query", "description": "消息分类筛选,不传返回全部", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码,默认1", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数,默认20", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/message/read-all": { "put": { "tags": [ "C端 - 消息接口" ], "summary": "全部标记已读", "description": "将指定分类或全部消息标记为已读,不传category则全部已读", "operationId": "markAllReadUsingPUT", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "category", "in": "query", "description": "消息分类,不传则将所有分类标记为已读", "required": false, "type": "string", "allowEmptyValue": false } ], "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/message/summary": { "get": { "tags": [ "C端 - 消息接口" ], "summary": "消息摘要", "description": "获取各分类的未读数量和最新一条消息,用于消息中心首页展示", "operationId": "getSummaryUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/message/{id}": { "delete": { "tags": [ "C端 - 消息接口" ], "summary": "删除消息", "description": "删除单条消息", "operationId": "deleteMessageUsingDELETE", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/message/{id}/read": { "put": { "tags": [ "C端 - 消息接口" ], "summary": "标记已读", "description": "标记单条消息为已读", "operationId": "markReadUsingPUT", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "消息ID", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/create": { "post": { "tags": [ "C端 - 评价接口" ], "summary": "创建评价", "description": "评价流程:订单完成后 → 查询可评价目标列表 → 对每个目标(酒店/景区/活动等)提交评价 → 自动内容审核 → 审核通过后公开展示\n\n**关联字典(BFF透传)**:\n- review_status:评价审核状态(返回字段)\n- rating_level:评价等级(返回字段)", "operationId": "createReviewUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "评价请求体", "required": false, "schema": { "$ref": "#/definitions/创建评价请求", "originalRef": "创建评价请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/featured": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "精选评价列表(公开)", "description": "无需登录,返回精选评价数组,用于评价浏览页\n\n**关联字典(BFF透传)**:\n- rating_level:评价等级(显示)", "operationId": "getFeaturedReviewsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "limit", "in": "query", "description": "数量限制", "required": false, "type": "integer", "default": 50, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/my": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "我的评价列表", "description": "**关联字典(BFF透传)**:\n- review_status:评价审核状态(显示)\n- rating_level:评价等级(显示)", "operationId": "getMyReviewsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/order/{orderId}/reviewable-targets": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "订单可评价目标列表", "description": "返回订单中可评价的资源目标列表(景区/酒店/活动等),用于评价页面展示可评价项。已评价的目标不会重复出现。\n\n**权限**:需登录。", "operationId": "getReviewableTargetsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/order/{orderId}/reviewed": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "检查订单是否已评价", "description": "检查指定订单是否已提交评价,用于订单详情页决定是否显示'去评价'按钮。", "operationId": "isOrderReviewedUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/product/{productId}": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "按产品ID查看评价列表", "description": "返回评价列表+统计数据,支持好中差评/有图/有视频筛选\n\n**关联字典(BFF透传)**:\n- rating_level:评价等级(筛选+显示)", "operationId": "getProductReviewsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "hasImage", "in": "query", "description": "是否有图片", "required": false, "type": "boolean", "allowEmptyValue": false }, { "name": "hasVideo", "in": "query", "description": "是否有视频", "required": false, "type": "boolean", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false }, { "name": "productId", "in": "path", "description": "产品ID", "required": false, "type": "integer", "format": "int64" }, { "name": "ratingLevel", "in": "query", "description": "评价等级: GOOD/MEDIUM/BAD", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/product/{productId}/highlights": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "产品精选评价(最高评分+最高点赞+统计)", "description": "用于产品详情页评价区域展示", "operationId": "getProductHighlightsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "productId", "in": "path", "description": "产品ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/rating-categories": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "评分类别列表", "description": "从字典读取评价时需要填写的评分维度,前端据此渲染评分组件。字典类型: review_rating_category,remark字段包含扩展JSON(required/min/max)", "operationId": "getRatingCategoriesUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/search": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "关键词搜索评价(公开)", "description": "按关键词搜索已通过的评价内容,支持按目标类型和目标ID筛选\n\n**关联字典(BFF透传)**:\n- rating_level:评价等级(显示)", "operationId": "searchReviewsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "keyword", "in": "query", "description": "搜索关键词", "required": true, "type": "string", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false }, { "name": "targetId", "in": "query", "description": "目标ID(可选)", "required": false, "type": "integer", "format": "int64", "allowEmptyValue": false }, { "name": "targetType", "in": "query", "description": "目标类型(可选): PRODUCT/SCENIC_SPOT/ACTIVITY/HOTEL等", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/stats": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "评价统计(平均分、数量)", "description": "获取指定目标的评价统计数据(平均评分、总评价数等),用于详情页评价区域展示。产品showReview关闭时返回空统计。", "operationId": "getTargetStatsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "targetId", "in": "query", "description": "目标ID", "required": false, "type": "integer", "format": "int64", "allowEmptyValue": false }, { "name": "targetType", "in": "query", "description": "目标类型", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/target": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "某目标的已通过评价(公开)", "description": "**关联字典(BFF透传)**:\n- rating_level:评价等级(筛选+显示)", "operationId": "getTargetReviewsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "hasImage", "in": "query", "description": "是否有图片", "required": false, "type": "boolean", "allowEmptyValue": false }, { "name": "hasVideo", "in": "query", "description": "是否有视频", "required": false, "type": "boolean", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false }, { "name": "ratingLevel", "in": "query", "description": "评价等级: GOOD/MEDIUM/BAD", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "targetId", "in": "query", "description": "目标ID", "required": false, "type": "integer", "format": "int64", "allowEmptyValue": false }, { "name": "targetType", "in": "query", "description": "目标类型", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/{reviewId}/like": { "post": { "tags": [ "C端 - 评价接口" ], "summary": "点赞/取消点赞评价", "description": "对评价进行点赞或取消点赞操作,返回当前点赞状态和点赞总数。\n\n**权限**:需登录。", "operationId": "toggleLikeUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "reviewId", "in": "path", "description": "评价ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/review/{reviewId}/like/check": { "get": { "tags": [ "C端 - 评价接口" ], "summary": "检查是否已点赞", "description": "检查当前用户是否已点赞指定评价,用于评价列表/详情的点赞按钮状态展示。\n\n**权限**:需登录。", "operationId": "checkLikedUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "reviewId", "in": "path", "description": "评价ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/designer": { "get": { "tags": [ "C端 - 定制师接口" ], "summary": "定制师列表(含真实产品数和评分,综合排序)", "description": "获取定制师列表,聚合层会补充每个定制师的真实产品数量和评价评分。按综合排序(评分>路线数>咨询人数),用于小程序定制师推荐页。", "operationId": "listDesignersUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "limit", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/designer/featured": { "get": { "tags": [ "C端 - 定制师接口" ], "summary": "推荐定制师(综合排序第一名)", "description": "获取综合排序排名第一的定制师信息(含产品数和评分),用于首页推荐定制师卡片展示。", "operationId": "getFeaturedDesignerUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/designer/{id}": { "get": { "tags": [ "C端 - 定制师接口" ], "summary": "定制师详情(含产品数量和评分)", "description": "获取定制师完整个人信息,聚合层会补充该定制师的已发布产品数量和综合评分,用于定制师个人主页展示。", "operationId": "getDesignerDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "定制师ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/designer/{id}/products": { "get": { "tags": [ "C端 - 定制师接口" ], "summary": "定制师已发布产品列表", "description": "**关联字典(BFF透传)**:\n- product_type:产品类型(显示)", "operationId": "getDesignerProductsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "定制师ID", "required": false, "type": "integer", "format": "int64" }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/designer/{id}/reviews": { "get": { "tags": [ "C端 - 定制师接口" ], "summary": "定制师产品评价列表", "description": "**关联字典(BFF透传)**:\n- rating_level:评价等级(显示)", "operationId": "getDesignerReviewsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "定制师ID", "required": false, "type": "integer", "format": "int64" }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/wiki/article/{articleId}": { "get": { "tags": [ "C端 - 攻略接口" ], "summary": "文章详情", "description": "**关联字典(BFF透传)**:\n- wiki_status:文章状态(返回字段)", "operationId": "getArticleUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "articleId", "in": "path", "description": "文章ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/wiki/categories": { "get": { "tags": [ "C端 - 攻略接口" ], "summary": "攻略分类列表", "description": "获取所有已启用的攻略分类,按排序值排列。用于小程序攻略频道的分类导航展示。", "operationId": "listCategoriesUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/wiki/category/{categoryId}/articles": { "get": { "tags": [ "C端 - 攻略接口" ], "summary": "分类文章列表", "description": "分页查询指定攻略分类下已发布的文章列表,按发布时间倒序排列。用于攻略分类详情页。", "operationId": "listCategoryArticlesUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "categoryId", "in": "path", "description": "攻略分类ID", "required": false, "type": "integer", "format": "int64" }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/wiki/recommend-articles": { "get": { "tags": [ "C端 - 攻略接口" ], "summary": "推荐文章列表", "description": "获取编辑推荐的攻略文章列表(按推荐权重排序),用于首页或攻略频道的推荐位展示。", "operationId": "listRecommendArticlesUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "limit", "in": "query", "description": "返回条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/contract/by-order/{orderId}": { "get": { "tags": [ "C端 - 合同接口" ], "summary": "按订单查合同", "description": "返回订单关联的最新有效合同(非作废)\n\n**关联字典(BFF透传)**:\n- contract_status:合同状态(显示)", "operationId": "getContractByOrderUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/contract/by-order/{orderId}/all": { "get": { "tags": [ "C端 - 合同接口" ], "summary": "按订单查所有合同", "description": "返回订单关联的所有有效合同(TOUR+INSURANCE各一条)\n\n**关联字典(BFF透传)**:\n- contract_status:合同状态(显示)", "operationId": "getContractsByOrderUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/contract/list": { "get": { "tags": [ "C端 - 合同接口" ], "summary": "合同列表", "description": "**关联字典(BFF透传)**:\n- contract_status:合同状态(列表筛选+显示)", "operationId": "listContractsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false }, { "name": "status", "in": "query", "description": "状态", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/contract/{contractId}/resend-sms": { "post": { "tags": [ "C端 - 合同接口" ], "summary": "重新发送合同签署短信", "description": "重新向出行人发送合同签署短信通知,适用于出行人未收到短信或短信过期的场景。\n\n**权限**:需登录。", "operationId": "resendContractSmsUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "contractId", "in": "path", "description": "合同ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/contract/{id}": { "get": { "tags": [ "C端 - 合同接口" ], "summary": "合同详情", "description": "返回合同基本信息、签署状态、出行人签署详情及合同文件下载链接\n\n**关联字典(BFF透传)**:\n- contract_status:合同状态(显示)", "operationId": "getContractDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "合同ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/hotel/list": { "get": { "tags": [ "C端 - 酒店接口" ], "summary": "酒店列表", "description": "分页查询已上架的酒店列表,支持按关键词、城市、星级筛选。聚合层透传resource-service的酒店数据。", "operationId": "listHotelsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "city", "in": "query", "description": "城市", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "keyword", "in": "query", "description": "关键词", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false }, { "name": "starLevel", "in": "query", "description": "星级", "required": false, "type": "integer", "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/hotel/{hotelId}": { "get": { "tags": [ "C端 - 酒店接口" ], "summary": "酒店详情", "description": "获取酒店完整信息(含房型列表、图文详情、价格等),自动注入静态地图图片URL用于详情页地图展示。", "operationId": "getHotelDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "hotelId", "in": "path", "description": "酒店ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/restaurant/list": { "get": { "tags": [ "C端 - 餐厅接口" ], "summary": "餐厅列表", "description": "分页查询已上架的餐厅列表,支持按关键词和城市筛选。聚合层透传resource-service的餐厅数据。", "operationId": "listRestaurantsUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "city", "in": "query", "description": "城市", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "keyword", "in": "query", "description": "关键词", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/restaurant/{restaurantId}": { "get": { "tags": [ "C端 - 餐厅接口" ], "summary": "餐厅详情", "description": "获取餐厅完整信息(含菜品、图文详情等),自动注入静态地图图片URL用于详情页地图展示。", "operationId": "getRestaurantDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "restaurantId", "in": "path", "description": "餐厅ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/dict/all": { "get": { "tags": [ "C端 - 字典接口" ], "summary": "获取所有字典数据", "description": "获取系统全部字典数据(按字典类型分组),用于小程序端的下拉选项、枚举映射等。建议前端缓存此数据", "operationId": "getAllDictUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/badge": { "get": { "tags": [ "C端 - 徽章接口" ], "summary": "获取徽章数据", "description": "返回用户的徽章统计(未读消息数、待办事项数等),用于「我的」页面角标展示", "operationId": "getBadgesUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/banner/active": { "get": { "tags": [ "C端 - 轮播图接口" ], "summary": "获取当前生效的轮播图列表", "description": "返回当前处于有效期内的轮播图,按排序值排列。用于小程序首页顶部轮播展示,透传自user-service。", "operationId": "listActiveBannersUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/common/agreement/list": { "get": { "tags": [ "C端 - 公共接口" ], "summary": "协议列表", "description": "获取所有已上线的协议列表(不含内容,仅含类型、标题、版本)", "operationId": "listAgreementsUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/common/agreement/{type}": { "get": { "tags": [ "C端 - 公共接口" ], "summary": "获取协议文本", "description": "获取指定类型的协议文本(如隐私政策、用户协议),返回富文本内容", "operationId": "getAgreementUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "type", "in": "path", "description": "协议类型: privacy(隐私政策) / user(用户协议)", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/common/config": { "get": { "tags": [ "C端 - 公共接口" ], "summary": "应用配置", "description": "获取应用全局配置信息", "operationId": "getConfigUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/common/contact": { "get": { "tags": [ "C端 - 公共接口" ], "summary": "联系方式列表", "description": "获取有效的联系方式列表(电话/微信/邮箱等)", "operationId": "listContactsUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/common/faq": { "get": { "tags": [ "C端 - 公共接口" ], "summary": "FAQ列表", "description": "获取常见问题列表(按分类分组)", "operationId": "listFaqUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/common/feedback": { "post": { "tags": [ "C端 - 公共接口" ], "summary": "提交反馈", "description": "提交用户反馈,支持文字内容和图片附件", "operationId": "submitFeedbackUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "feedback", "description": "反馈内容(含content、images、contact等字段)", "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/config": { "get": { "tags": [ "C端 - 前端配置接口" ], "summary": "获取所有非敏感前端配置", "description": "返回所有非SECRET类型的前端配置项(如主题色、客服电话、版本号等)。不含敏感配置,可安全传输给小程序端。", "operationId": "listPublicConfigsUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/config/group/{group}": { "get": { "tags": [ "C端 - 前端配置接口" ], "summary": "按分组获取非敏感前端配置", "description": "按配置分组获取前端配置项,如UI分组、功能开关分组等。用于小程序按需加载特定分组的配置。", "operationId": "listPublicConfigsByGroupUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "group", "in": "path", "description": "配置分组", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/wish": { "get": { "tags": [ "C端 - 心愿单接口" ], "summary": "心愿单列表", "description": "返回当前用户的心愿单列表,按创建时间倒序排列", "operationId": "listWishesUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" }, "post": { "tags": [ "C端 - 心愿单接口" ], "summary": "创建心愿", "description": "创建旅行心愿,描述想去的地方和时间偏好,定制师可据此推荐产品", "operationId": "createWishUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "in": "body", "name": "body", "description": "心愿请求体", "required": false, "schema": { "$ref": "#/definitions/创建心愿单请求", "originalRef": "创建心愿单请求" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/explore/list": { "get": { "tags": [ "C端 - 探索接口" ], "summary": "探索列表", "description": "获取已启用的探索分类列表(图文攻略内容),支持综合/最新/最热排序,分页返回。用于小程序探索频道首页瀑布流展示。", "operationId": "listUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false }, { "name": "sortType", "in": "query", "description": "排序方式:comprehensive/newest/hottest", "required": false, "type": "string", "default": "comprehensive", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/explore/{id}": { "get": { "tags": [ "C端 - 探索接口" ], "summary": "探索详情", "description": "自动增加浏览量,已登录时返回点赞/收藏状态", "operationId": "detailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "探索分类ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/explore/{id}/favorite": { "post": { "tags": [ "C端 - 探索接口" ], "summary": "切换收藏", "description": "对探索内容收藏/取消收藏,返回当前收藏状态(true=已收藏)。收藏后可在'我的收藏'中查看。\n\n**权限**:需登录。", "operationId": "toggleFavoriteUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "探索分类ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/explore/{id}/like": { "post": { "tags": [ "C端 - 探索接口" ], "summary": "切换点赞", "description": "对探索内容点赞/取消点赞,返回当前点赞状态(true=已点赞)。\n\n**权限**:需登录。", "operationId": "toggleLikeUsingPOST_1", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "探索分类ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/explore/{id}/view": { "post": { "tags": [ "C端 - 探索接口" ], "summary": "浏览+1", "description": "增加探索内容的浏览计数。前端进入探索详情页时调用,无需登录。", "operationId": "viewUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "id", "in": "path", "description": "探索分类ID", "required": false, "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" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/album/file/{albumFileId}/download-url": { "get": { "tags": [ "C端 - 相册接口" ], "summary": "获取文件下载链接", "description": "获取文件的预签名下载URL,有效期有限", "operationId": "getDownloadUrlUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "albumFileId", "in": "path", "description": "相册文件ID", "required": true, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«string»", "originalRef": "统一响应结果«string»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«string»", "originalRef": "统一响应结果«string»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/album/folder/{folderId}/files": { "get": { "tags": [ "C端 - 相册接口" ], "summary": "文件夹下的文件列表", "description": "获取文件夹下的文件列表(分页),含图片和视频", "operationId": "listFilesUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "folderId", "in": "path", "description": "文件夹ID", "required": true, "type": "integer", "format": "int64" }, { "name": "page", "in": "query", "description": "页码,默认1", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "size", "in": "query", "description": "每页数量,默认20", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/album/order/{orderId}/folders": { "get": { "tags": [ "C端 - 相册接口" ], "summary": "订单的文件夹列表", "description": "获取订单下的相册文件夹列表", "operationId": "listFoldersUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": true, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/album/orders": { "get": { "tags": [ "C端 - 相册接口" ], "summary": "有相册的订单列表", "description": "获取当前登录用户有相册的订单列表", "operationId": "listAlbumOrdersUsingGET", "produces": [ "*/*" ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/activity/list": { "get": { "tags": [ "C端 - 活动接口" ], "summary": "活动列表", "description": "分页查询已上架的活动列表,支持关键词和分类筛选。聚合层透传resource-service的活动数据给小程序前端。", "operationId": "listActivitiesUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "categoryCode", "in": "query", "description": "分类", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "keyword", "in": "query", "description": "关键词", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/activity/{activityId}": { "get": { "tags": [ "C端 - 活动接口" ], "summary": "活动详情", "description": "获取活动完整信息(含图文详情、价格等),自动注入静态地图图片URL用于详情页地图展示。", "operationId": "getActivityDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "activityId", "in": "path", "description": "活动ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/scenic/list": { "get": { "tags": [ "C端 - 景区接口" ], "summary": "景区列表", "description": "分页查询已上架的景区列表,支持按关键词和城市筛选。聚合层透传resource-service的景区数据。", "operationId": "listScenicUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "city", "in": "query", "description": "城市", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "keyword", "in": "query", "description": "关键词", "required": false, "type": "string", "allowEmptyValue": false }, { "name": "page", "in": "query", "description": "页码", "required": false, "type": "integer", "default": 1, "format": "int32", "allowEmptyValue": false }, { "name": "pageSize", "in": "query", "description": "每页条数", "required": false, "type": "integer", "default": 20, "format": "int32", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«分页结果«Map«string,object»»»", "originalRef": "统一响应结果«分页结果«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/scenic/{scenicId}": { "get": { "tags": [ "C端 - 景区接口" ], "summary": "景区详情", "description": "获取景区完整信息(含季节素材、图文详情、价格等),自动注入静态地图图片URL用于详情页地图展示。", "operationId": "getScenicDetailUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "scenicId", "in": "path", "description": "景区ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/scenic/{scenicId}/nearby": { "get": { "tags": [ "C端 - 景区接口" ], "summary": "附近景区(地理+探索分类聚合)", "description": "聚合两个数据源:1.基于经纬度的地理位置附近景区(resource-service);2.探索分类关联的景区(user-service)。去重合并后返回,用于景区详情页底部'附近推荐'展示。", "operationId": "getNearbyScenicUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "limit", "in": "query", "description": "返回条数", "required": false, "type": "integer", "default": 10, "format": "int32", "allowEmptyValue": false }, { "name": "radius", "in": "query", "description": "搜索半径(km)", "required": false, "type": "number", "default": 50.0, "format": "double", "allowEmptyValue": false }, { "name": "scenicId", "in": "path", "description": "景区ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/weather/forecast": { "get": { "tags": [ "C端 - 天气接口" ], "summary": "获取指定城市天气预报", "description": "通过高德天气API查询指定城市未来3天的天气预报信息", "operationId": "getForecastWeatherUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "city", "in": "query", "description": "城市名称", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/weather/itinerary/{orderId}": { "get": { "tags": [ "C端 - 天气接口" ], "summary": "获取订单行程天气", "description": "根据订单行程中的目的地城市,批量查询每日天气信息,用于行程详情页展示", "operationId": "getItineraryWeatherUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "orderId", "in": "path", "description": "订单ID", "required": false, "type": "integer", "format": "int64" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«Map«string,object»»»", "originalRef": "统一响应结果«List«Map«string,object»»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/weather/live": { "get": { "tags": [ "C端 - 天气接口" ], "summary": "获取指定城市实况天气", "description": "通过高德天气API查询指定城市的实时天气(温度、湿度、风向等)", "operationId": "getLiveWeatherUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "city", "in": "query", "description": "城市名称", "required": false, "type": "string", "allowEmptyValue": false } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/like/{targetType}/batch-check": { "post": { "tags": [ "C端 - 通用点赞" ], "summary": "批量检查点赞状态", "description": "批量检查当前用户是否已对多个目标点赞,返回已点赞的目标ID列表。用于列表页批量展示点赞状态。\n\n**权限**:需登录。", "operationId": "batchCheckLikedUsingPOST", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "targetType", "in": "path", "description": "目标类型", "required": false, "type": "string" }, { "in": "body", "name": "targetIds", "description": "targetIds", "required": true, "schema": { "type": "array", "items": { "type": "string" } } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«string»»", "originalRef": "统一响应结果«List«string»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«List«string»»", "originalRef": "统一响应结果«List«string»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/like/{targetType}/{targetId}": { "post": { "tags": [ "C端 - 通用点赞" ], "summary": "切换点赞", "description": "点赞/取消点赞,返回 {liked: true/false, likeCount: 点赞数}", "operationId": "toggleLikeUsingPOST_2", "consumes": [ "application/json" ], "produces": [ "*/*" ], "parameters": [ { "name": "targetId", "in": "path", "description": "目标ID", "required": false, "type": "integer", "format": "int64" }, { "name": "targetType", "in": "path", "description": "目标类型: REVIEW/EXPLORE/GUIDE等", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«Map«string,object»»", "originalRef": "统一响应结果«Map«string,object»»" } }, "201": { "description": "Created" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } }, "/mp/like/{targetType}/{targetId}/check": { "get": { "tags": [ "C端 - 通用点赞" ], "summary": "检查是否已点赞", "description": "检查当前用户是否已对指定目标点赞,用于前端点赞按钮状态展示。\n\n**权限**:需登录。", "operationId": "checkLikeUsingGET", "produces": [ "*/*" ], "parameters": [ { "name": "targetId", "in": "path", "description": "目标ID", "required": false, "type": "integer", "format": "int64" }, { "name": "targetType", "in": "path", "description": "目标类型", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "responsesObject": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/统一响应结果«boolean»", "originalRef": "统一响应结果«boolean»" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "deprecated": false, "x-order": "2147483647" } } }, "definitions": { "Map«string,object»": { "type": "object", "title": "Map«string,object»", "additionalProperties": { "type": "object" } }, "Map«string,object»_1": { "type": "object", "title": "Map«string,object»_1", "additionalProperties": { "type": "object" } }, "分页结果«Map«string,object»»": { "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/Map«string,object»", "originalRef": "Map«string,object»" } }, "total": { "type": "integer", "format": "int32", "example": 100, "description": "总记录数" } }, "title": "分页结果«Map«string,object»»" }, "统一响应结果«分页结果«Map«string,object»»»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/分页结果«Map«string,object»»", "originalRef": "分页结果«Map«string,object»»" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«分页结果«Map«string,object»»»" }, "统一响应结果«首页聚合数据»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/首页聚合数据", "originalRef": "首页聚合数据" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«首页聚合数据»" }, "首页聚合数据": { "type": "object", "properties": { "banners": { "type": "array", "description": "轮播图Banner列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "contactInfo": { "type": "array", "description": "联系我们列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "exploreTopics": { "type": "array", "description": "探索专题列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "featuredDesigner": { "type": "object", "description": "推荐定制师" }, "featuredReviews": { "type": "array", "description": "首页精选评价列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "productLines": { "type": "array", "description": "产品线分类列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "recommendProducts": { "type": "array", "description": "推荐产品列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } } }, "title": "首页聚合数据" }, "C端产品详情": { "type": "object", "properties": { "chatMessages": { "type": "array", "description": "群聊最近消息(来自会话存档)", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "earliestBookingDate": { "type": "string", "description": "最早可订日期(如 2026-07-15)" }, "earlyBirdDiscount": { "type": "number", "description": "早鸟优惠金额(元/人)" }, "earlyBirdPlanName": { "type": "string", "description": "早鸟计划名称" }, "isFavorited": { "type": "boolean", "description": "是否已收藏(null表示未登录)" }, "participantFamilyCount": { "type": "integer", "format": "int32", "description": "参与家庭数" }, "product": { "type": "object", "description": "产品详情(来自product-service)" }, "reviewStats": { "type": "object", "description": "评价统计数据" }, "topLikedReview": { "type": "object", "description": "最高点赞评价" }, "topRatedReview": { "type": "object", "description": "最高评分评价" }, "totalSold": { "type": "integer", "format": "int32", "description": "已购人数" } }, "title": "C端产品详情" }, "Map«string,object»_2": { "type": "object", "title": "Map«string,object»_2", "additionalProperties": { "type": "object" } }, "Map«string,object»_3": { "type": "object", "title": "Map«string,object»_3", "additionalProperties": { "type": "object" } }, "Map«string,object»_4": { "type": "object", "title": "Map«string,object»_4", "additionalProperties": { "type": "object" } }, "Map«string,object»_5": { "type": "object", "title": "Map«string,object»_5", "additionalProperties": { "type": "object" } }, "产品报价结果": { "type": "object", "properties": { "adultSellPrice": { "type": "number", "description": "成人单价" }, "babySellPrice": { "type": "number", "description": "幼童单价(固定价)" }, "childSellPrice": { "type": "number", "description": "儿童单价" }, "childWithBedFee": { "type": "number", "description": "儿童加床费" }, "depositPayment": { "description": "定金支付信息(仅paymentMode=DEPOSIT时有值)", "$ref": "#/definitions/定金支付选项", "originalRef": "定金支付选项" }, "earlyBirdDiscount": { "description": "早鸟优惠信息,无优惠时为null", "$ref": "#/definitions/早鸟优惠信息", "originalRef": "早鸟优惠信息" }, "finalPrice": { "type": "number", "description": "最终价(早鸟优惠后)" }, "fullPayment": { "description": "全额支付信息", "$ref": "#/definitions/全额支付选项", "originalRef": "全额支付选项" }, "grandTotalSellPrice": { "type": "number", "description": "总售价(优惠前)" }, "paymentMode": { "type": "string", "description": "支付方式: FULL(全额支付) / DEPOSIT(定金+尾款)" }, "totalAdultSellPrice": { "type": "number", "description": "成人小计" }, "totalBabySellPrice": { "type": "number", "description": "幼童小计" }, "totalChildSellPrice": { "type": "number", "description": "儿童小计" }, "totalYoungChildSellPrice": { "type": "number", "description": "小童小计" }, "youngChildSellPrice": { "type": "number", "description": "小童单价(儿童价×折扣比例)" } }, "title": "产品报价结果" }, "产品报价请求": { "type": "object", "required": [ "adultCount", "departureDate" ], "properties": { "adultCount": { "type": "integer", "format": "int32", "example": 2, "description": "成人数量" }, "babyCount": { "type": "integer", "format": "int32", "example": 0, "description": "婴儿数量" }, "childCount": { "type": "integer", "format": "int32", "example": 0, "description": "儿童数量" }, "childNeedBed": { "type": "boolean", "example": false, "description": "儿童是否需要床位" }, "departureDate": { "type": "string", "example": "2026-05-01", "description": "出发日期" }, "youngChildCount": { "type": "integer", "format": "int32", "example": 0, "description": "幼儿数量" } }, "title": "产品报价请求" }, "全额支付选项": { "type": "object", "properties": { "amount": { "type": "number", "description": "应付金额" }, "description": { "type": "string", "description": "说明" } }, "title": "全额支付选项" }, "定金支付选项": { "type": "object", "properties": { "balanceAmount": { "type": "number", "description": "尾款金额(出行前需付)" }, "depositAmount": { "type": "number", "description": "定金金额(首次需付)" }, "depositRatio": { "type": "integer", "format": "int32", "description": "定金比例(%)" }, "description": { "type": "string", "description": "说明" } }, "title": "定金支付选项" }, "早鸟优惠信息": { "type": "object", "properties": { "discountAmount": { "type": "number", "description": "优惠金额" }, "minPeople": { "type": "integer", "format": "int32", "description": "最低人数要求" }, "planId": { "type": "integer", "format": "int64", "description": "优惠方案ID" }, "planName": { "type": "string", "description": "优惠方案名称" } }, "title": "早鸟优惠信息" }, "统一响应结果«C端产品详情»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/C端产品详情", "originalRef": "C端产品详情" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«C端产品详情»" }, "统一响应结果«List«Map«string,object»»»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "type": "array", "description": "响应数据", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«List«Map«string,object»»»" }, "统一响应结果«Map«string,object»»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "type": "object", "description": "响应数据" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«Map«string,object»»" }, "统一响应结果«产品报价结果»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/产品报价结果", "originalRef": "产品报价结果" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«产品报价结果»" }, "C端创建订单请求": { "type": "object", "required": [ "contactName", "contactPhone", "productId" ], "properties": { "adultCount": { "type": "integer", "format": "int32", "example": 2, "description": "成人数" }, "babyCount": { "type": "integer", "format": "int32", "example": 0, "description": "幼童数" }, "childCount": { "type": "integer", "format": "int32", "example": 0, "description": "儿童数" }, "childNeedBed": { "type": "boolean", "example": false, "description": "儿童是否需要床位" }, "contactName": { "type": "string", "example": "张三", "description": "联系人姓名" }, "contactPhone": { "type": "string", "example": 13800138000, "description": "联系人电话" }, "customizerId": { "type": "string", "description": "定制师ID(通过分享链接下单时传入)" }, "departureDate": { "type": "string", "format": "date", "example": "2026-05-01", "description": "出发日期(GROUP产品从团期获取,可不传)" }, "groupBatchId": { "type": "string", "description": "团期ID(GROUP产品必填)" }, "productId": { "type": "string", "example": 1760000000000001, "description": "产品ID" }, "remark": { "type": "string", "example": "希望安排靠窗座位", "description": "备注" }, "roomCount": { "type": "integer", "format": "int32", "example": 1, "description": "房间数(GROUP产品,默认1)" }, "sharerOpenid": { "type": "string", "description": "分享人微信openid(通过分享进入下单时传入,用于记录分享关系)" }, "travelers": { "type": "array", "description": "出行人列表", "items": { "$ref": "#/definitions/出行人信息", "originalRef": "出行人信息" } }, "youngChildCount": { "type": "integer", "format": "int32", "example": 0, "description": "小童数" } }, "title": "C端创建订单请求" }, "Map«string,List«Map«string,object»»»": { "type": "object", "title": "Map«string,List«Map«string,object»»»", "additionalProperties": { "$ref": "#/definitions/List", "originalRef": "List" } }, "修改订单请求": { "type": "object", "properties": { "departureDate": { "type": "string", "format": "date", "example": "2026-05-01", "description": "出发日期" }, "travelers": { "type": "array", "description": "出行人列表(提供则替换全部出行人)", "items": { "$ref": "#/definitions/出行人信息_1", "originalRef": "出行人信息_1" } } }, "title": "修改订单请求" }, "出行人信息": { "type": "object", "required": [ "name" ], "properties": { "birthday": { "type": "string", "format": "date", "example": "1990-01-01", "description": "出生日期" }, "email": { "type": "string", "example": "lisi@example.com", "description": "电子邮箱" }, "emergencyContact": { "type": "string", "example": "王五", "description": "紧急联系人" }, "emergencyPhone": { "type": "string", "example": 13800138002, "description": "紧急联系电话" }, "gender": { "type": "integer", "format": "int32", "example": 1, "description": "性别(1=男, 2=女)" }, "idCardNo": { "type": "string", "example": 110101199001011234, "description": "证件号码" }, "idCardType": { "type": "string", "example": "ID_CARD", "description": "证件类型" }, "name": { "type": "string", "example": "李四", "description": "出行人姓名" }, "nationality": { "type": "string", "example": "中国", "description": "国籍" }, "phone": { "type": "string", "example": 13800138001, "description": "手机号" }, "travelerType": { "type": "string", "example": "ADULT", "description": "出行人类型(ADULT/CHILD/YOUNG_CHILD/BABY)" } }, "title": "出行人信息" }, "出行人信息_1": { "type": "object", "required": [ "name" ], "properties": { "birthday": { "type": "string", "format": "date", "example": "1990-01-01", "description": "出生日期" }, "email": { "type": "string", "example": "lisi@example.com", "description": "电子邮箱" }, "emergencyContact": { "type": "string", "example": "王五", "description": "紧急联系人" }, "emergencyPhone": { "type": "string", "example": 13800138002, "description": "紧急联系电话" }, "gender": { "type": "integer", "format": "int32", "example": 1, "description": "性别" }, "idCardNo": { "type": "string", "example": 110101199001011234, "description": "证件号码" }, "idCardType": { "type": "string", "example": "ID_CARD", "description": "证件类型" }, "name": { "type": "string", "example": "李四", "description": "出行人姓名" }, "nationality": { "type": "string", "example": "中国", "description": "国籍" }, "phone": { "type": "string", "example": 13800138001, "description": "手机号" }, "travelerType": { "type": "string", "example": "ADULT", "description": "出行人类型" } }, "title": "出行人信息_1" }, "分页结果«订单列表项»": { "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": { "reason": { "type": "string", "example": "行程有变,需要取消", "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": "响应消息" } }, "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": "响应消息" } }, "title": "统一响应结果«List«退款原因»»" }, "统一响应结果«Map«string,List«Map«string,object»»»»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "type": "object", "description": "响应数据", "additionalProperties": { "type": "array", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } } }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«Map«string,List«Map«string,object»»»»" }, "统一响应结果«Void»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "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": "响应消息" } }, "title": "统一响应结果«int»" }, "统一响应结果«分页结果«订单列表项»»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/分页结果«订单列表项»", "originalRef": "分页结果«订单列表项»" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«分页结果«订单列表项»»" }, "统一响应结果«订单详情»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/订单详情", "originalRef": "订单详情" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«订单详情»" }, "统一响应结果«退款申请详情»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/退款申请详情", "originalRef": "退款申请详情" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«退款申请详情»" }, "统一响应结果«退款预览»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/退款预览", "originalRef": "退款预览" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«退款预览»" }, "订单列表项": { "type": "object", "properties": { "adultCount": { "type": "integer", "format": "int32", "description": "成人数" }, "babyCount": { "type": "integer", "format": "int32", "description": "幼童数" }, "balanceAmount": { "type": "number", "description": "尾款金额" }, "childCount": { "type": "integer", "format": "int32", "description": "儿童数" }, "contracts": { "type": "array", "description": "合同列表(含signUrl/fileUrl/status等)", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "createTime": { "type": "string", "format": "date-time", "description": "创建时间" }, "daysUntilDeparture": { "type": "integer", "format": "int32", "description": "距出发天数(负数表示已出发)" }, "departureDate": { "type": "string", "format": "date", "description": "出发日期" }, "depositAmount": { "type": "number", "description": "定金金额" }, "displayName": { "type": "string", "description": "显示名称(未支付=手机号+姓名,已支付=订单号)" }, "displayStatus": { "type": "string", "description": "C端简化状态(PENDING_PAY/PENDING_DEPARTURE/PENDING_REVIEW/REFUND/CANCELLED)" }, "displayStatusLabel": { "type": "string", "description": "C端简化状态标签" }, "expiryTime": { "type": "string", "format": "date-time", "description": "支付截止时间(PENDING_PAY状态有效)" }, "insurances": { "type": "array", "description": "保险订单列表(含productName/extPolicyNo/status等)", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "nextAction": { "type": "string", "description": "下一步操作提示" }, "orderId": { "type": "integer", "format": "int64", "description": "订单ID" }, "orderNo": { "type": "string", "description": "订单编号" }, "paidAmount": { "type": "number", "description": "已付金额" }, "paymentMode": { "type": "string", "description": "支付模式(FULL/DEPOSIT)" }, "processStatus": { "type": "string", "description": "内部流程状态(字典:order_process_status)" }, "processStatusLabel": { "type": "string", "description": "内部流程状态标签(字典:order_process_status 翻译)" }, "productCoverUrl": { "type": "string", "description": "产品封面图URL" }, "productId": { "type": "integer", "format": "int64", "description": "产品ID" }, "productName": { "type": "string", "description": "产品名称" }, "productType": { "type": "string", "description": "产品类型(CORE/ROUTE/CUSTOM/GROUP)" }, "status": { "type": "string", "description": "订单状态(PENDING_PAY/DEPOSIT_PAID/PAID/CONFIRMED/IN_PROGRESS/COMPLETED/CANCELLED)" }, "statusLabel": { "type": "string", "description": "订单状态标签" }, "totalPrice": { "type": "number", "description": "总售价" }, "tripDays": { "type": "integer", "format": "int32", "description": "行程天数" }, "tripNights": { "type": "integer", "format": "int32", "description": "行程晚数" }, "youngChildCount": { "type": "integer", "format": "int32", "description": "小童数" } }, "title": "订单列表项" }, "订单详情": { "type": "object", "properties": { "adultCount": { "type": "integer", "format": "int32", "description": "成人数" }, "babyCount": { "type": "integer", "format": "int32", "description": "幼童数" }, "balanceAmount": { "type": "number", "description": "尾款金额" }, "balancePayMethod": { "type": "string", "description": "尾款支付方式: ONLINE=线上 OFFLINE=线下" }, "balanceProofUrl": { "type": "string", "description": "尾款凭证URL" }, "cancelReason": { "type": "string", "description": "取消原因" }, "cancelledAt": { "type": "string", "format": "date-time", "description": "取消时间" }, "checklistConfirmed": { "type": "boolean", "description": "清单确认状态" }, "childCount": { "type": "integer", "format": "int32", "description": "儿童数" }, "completedAt": { "type": "string", "format": "date-time", "description": "完成时间" }, "confirmedAt": { "type": "string", "format": "date-time", "description": "确认时间" }, "contactName": { "type": "string", "description": "联系人姓名" }, "contactPhone": { "type": "string", "description": "联系人电话" }, "contracts": { "type": "array", "description": "合同列表(含signUrl/fileUrl/status等)", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "createTime": { "type": "string", "format": "date-time", "description": "创建时间" }, "creatorAdminId": { "type": "integer", "format": "int64", "description": "创建人管理员ID" }, "creatorName": { "type": "string", "description": "创建人姓名" }, "customizerId": { "type": "integer", "format": "int64", "description": "定制师ID" }, "customizerName": { "type": "string", "description": "定制师姓名" }, "departureDate": { "type": "string", "format": "date", "description": "出发日期" }, "depositAmount": { "type": "number", "description": "定金金额" }, "depositRatio": { "type": "integer", "format": "int32", "description": "定金比例" }, "discountAmount": { "type": "number", "description": "优惠金额" }, "discountReason": { "type": "string", "description": "优惠原因" }, "discounts": { "type": "array", "description": "优惠列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "expiryMinutes": { "type": "integer", "format": "int32", "description": "支付时限(分钟)" }, "expiryTime": { "type": "string", "format": "date-time", "description": "支付截止时间" }, "hotelAssignments": { "type": "string", "description": "酒店分配信息JSON" }, "insurances": { "type": "array", "description": "保险订单列表(含productName/extPolicyNo/status/startDate/endDate等)", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "mchId": { "type": "string", "description": "商户号" }, "orderId": { "type": "integer", "format": "int64", "description": "订单ID" }, "orderNo": { "type": "string", "description": "订单编号" }, "paidAmount": { "type": "number", "description": "已付金额" }, "paidAt": { "type": "string", "format": "date-time", "description": "支付时间" }, "payMethodLabel": { "type": "string", "description": "支付方式标签(如:微信支付、定金微信+尾款线下)" }, "paymentMode": { "type": "string", "description": "支付模式(FULL/DEPOSIT)" }, "processStatus": { "type": "string", "description": "内部流程状态" }, "processStatusLabel": { "type": "string", "description": "内部流程状态标签" }, "productCoverUrl": { "type": "string", "description": "产品封面图URL" }, "productId": { "type": "integer", "format": "int64", "description": "产品ID" }, "productName": { "type": "string", "description": "产品名称" }, "productSnapshot": { "type": "string", "description": "产品快照JSON" }, "productType": { "type": "string", "description": "产品类型(CORE/ROUTE/CUSTOM/GROUP)" }, "readyAt": { "type": "string", "format": "date-time", "description": "就绪时间" }, "refundAmount": { "type": "number", "description": "退款金额" }, "remark": { "type": "string", "description": "备注" }, "returnDate": { "type": "string", "format": "date", "description": "返程日期(出发日期 + 行程天数 - 1)" }, "reviewed": { "type": "boolean", "description": "是否已评价" }, "roomInfo": { "type": "string", "description": "房间信息" }, "status": { "type": "string", "description": "订单状态(PENDING_PAY/DEPOSIT_PAID/PAID/CONFIRMED/IN_PROGRESS/COMPLETED/CANCELLED)" }, "statusLabel": { "type": "string", "description": "订单状态标签" }, "timeline": { "type": "array", "description": "时间线列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "todos": { "type": "array", "description": "待办列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "totalPrice": { "type": "number", "description": "总售价" }, "travelers": { "type": "array", "description": "出行人列表", "items": { "$ref": "#/definitions/Map«string,object»", "originalRef": "Map«string,object»" } }, "tripDays": { "type": "integer", "format": "int32", "description": "行程天数" }, "tripNights": { "type": "integer", "format": "int32", "description": "行程晚数" }, "unlockRequestedAt": { "type": "string", "format": "date-time", "description": "解锁请求时间" }, "userId": { "type": "integer", "format": "int64", "description": "用户ID" }, "vehicleInfo": { "type": "string", "description": "车辆信息" }, "youngChildCount": { "type": "integer", "format": "int32", "description": "小童数" } }, "title": "订单详情" }, "退款原因": { "type": "object", "properties": { "category": { "type": "string", "description": "分类: GENERAL(通用)/PRODUCT(产品问题)/SERVICE(服务问题)" }, "enabled": { "type": "boolean", "description": "是否启用" }, "reasonId": { "type": "integer", "format": "int64", "description": "原因ID" }, "reasonText": { "type": "string", "description": "原因描述" }, "sortOrder": { "type": "integer", "format": "int32", "description": "排序序号" } }, "title": "退款原因" }, "退款申诉请求": { "type": "object", "required": [ "appealReason" ], "properties": { "appealReason": { "type": "string", "description": "申诉原因" }, "evidence": { "type": "array", "description": "申诉凭证图片URL列表", "items": { "type": "string" } } }, "title": "退款申诉请求" }, "退款申请详情": { "type": "object", "properties": { "actualAmount": { "type": "number", "description": "实际退款金额(审核后确定)" }, "appealAmount": { "type": "number", "description": "申诉退款金额" }, "appealReason": { "type": "string", "description": "申诉原因" }, "appealStatus": { "type": "integer", "format": "int32", "description": "申诉状态: 1-处理中, 2-通过, 3-驳回" }, "appealStatusLabel": { "type": "string", "description": "申诉状态中文标签" }, "appealedAt": { "type": "string", "format": "date-time", "description": "申诉时间" }, "applicantId": { "type": "integer", "format": "int64", "description": "申请人ID" }, "applicantName": { "type": "string", "description": "申请人姓名" }, "applicantType": { "type": "string", "description": "申请人类型: USER(用户)/ADMIN(管理员)" }, "applicationId": { "type": "integer", "format": "int64", "description": "退款申请ID" }, "approvalNo": { "type": "string", "description": "审批编号(企微OA审批编号)" }, "autoRefundDeadline": { "type": "string", "format": "date-time", "description": "自动退款截止时间" }, "calculatedAmount": { "type": "number", "description": "计算退款金额" }, "createTime": { "type": "string", "format": "date-time", "description": "创建时间" }, "daysBeforeDept": { "type": "integer", "format": "int32", "description": "距出发天数" }, "departureDate": { "type": "string", "format": "date", "description": "出发日期" }, "orderId": { "type": "integer", "format": "int64", "description": "订单ID" }, "orderNo": { "type": "string", "description": "订单号" }, "paidAmount": { "type": "number", "description": "已付金额" }, "policyId": { "type": "integer", "format": "int64", "description": "退款政策ID" }, "policyName": { "type": "string", "description": "退款政策名称" }, "productName": { "type": "string", "description": "产品名称" }, "reasonDetail": { "type": "string", "description": "补充说明" }, "reasonId": { "type": "integer", "format": "int64", "description": "退款原因ID" }, "reasonText": { "type": "string", "description": "退款原因" }, "refundRatio": { "type": "integer", "format": "int32", "description": "退款比例(百分比)" }, "refundType": { "type": "string", "description": "退款类型: DEPOSIT(定金)/BALANCE(尾款)/FULL(全款)" }, "refundTypeLabel": { "type": "string", "description": "退款类型中文标签" }, "refundedAt": { "type": "string", "format": "date-time", "description": "退款完成时间" }, "reviewAdminId": { "type": "integer", "format": "int64", "description": "审批管理员ID" }, "reviewAdminName": { "type": "string", "description": "审批管理员姓名" }, "reviewRemark": { "type": "string", "description": "审批备注" }, "reviewedAt": { "type": "string", "format": "date-time", "description": "审批时间" }, "status": { "type": "string", "description": "退款状态: PENDING(待审核)/APPROVED(已通过)/REJECTED(已拒绝)/REFUNDING(退款中)/REFUNDED(已退款)/CANCELLED(已撤回)/APPEALING(申诉中)/APPEAL_APPROVED(申诉通过)/APPEAL_REJECTED(申诉驳回)" }, "statusLabel": { "type": "string", "description": "退款状态中文标签" }, "updateTime": { "type": "string", "format": "date-time", "description": "更新时间" } }, "title": "退款申请详情" }, "退款申请请求": { "type": "object", "required": [ "reasonText", "refundType" ], "properties": { "images": { "type": "array", "description": "退款凭证图片URL列表", "items": { "type": "string" } }, "reasonDetail": { "type": "string", "description": "退款补充说明" }, "reasonId": { "type": "string", "example": 1, "description": "退款原因ID(已废弃,改用字典)" }, "reasonText": { "type": "string", "example": "行程冲突/时间变动", "description": "退款原因文本" }, "reasonValue": { "type": "string", "example": "schedule_conflict", "description": "退款原因字典值" }, "refundType": { "type": "string", "example": "FULL", "description": "退款类型(FULL/DEPOSIT/BALANCE)" } }, "title": "退款申请请求" }, "退款规则项": { "type": "object", "properties": { "matched": { "type": "boolean", "description": "是否当前命中此规则" }, "minDays": { "type": "integer", "format": "int32", "description": "最低天数" }, "refundRatio": { "type": "integer", "format": "int32", "description": "退款比例(百分比)" } }, "title": "退款规则项" }, "退款预览": { "type": "object", "properties": { "calculatedAmount": { "type": "number", "description": "计算退款金额" }, "daysBeforeDept": { "type": "integer", "format": "int32", "description": "距出发天数" }, "departureDate": { "type": "string", "description": "出发日期" }, "message": { "type": "string", "description": "提示信息" }, "orderId": { "type": "integer", "format": "int64", "description": "订单ID" }, "orderNo": { "type": "string", "description": "订单号" }, "paidAmount": { "type": "number", "description": "已付金额" }, "policyId": { "type": "integer", "format": "int64", "description": "匹配的退款政策ID" }, "policyName": { "type": "string", "description": "匹配的退款政策名称" }, "refundRatio": { "type": "integer", "format": "int32", "description": "退款比例(百分比)" }, "refundType": { "type": "string", "description": "退款类型: DEPOSIT/BALANCE/FULL" }, "refundable": { "type": "boolean", "description": "是否可退款" }, "rules": { "type": "array", "description": "退款规则列表(按天数降序)", "items": { "$ref": "#/definitions/退款规则项", "originalRef": "退款规则项" } } }, "title": "退款预览" }, "通过联系人信息绑定订单请求": { "type": "object", "required": [ "contactName", "contactPhone" ], "properties": { "contactName": { "type": "string", "example": "张三", "description": "联系人姓名" }, "contactPhone": { "type": "string", "example": 13800138000, "description": "联系人手机号" } }, "title": "通过联系人信息绑定订单请求" }, "发票换开请求": { "type": "object", "required": [ "invoiceTitle", "titleType" ], "properties": { "email": { "type": "string", "description": "接收邮箱" }, "invoiceTitle": { "type": "string", "example": "张三", "description": "发票抬头" }, "taxNumber": { "type": "string", "description": "纳税人识别号(企业发票必填)" }, "titleType": { "type": "string", "example": "PERSONAL", "description": "抬头类型: PERSONAL(个人)/COMPANY(企业)" } }, "title": "发票换开请求" }, "发票申请请求": { "type": "object", "required": [ "invoiceTitle", "invoiceType", "orderId" ], "properties": { "email": { "type": "string", "description": "接收邮箱" }, "invoiceTitle": { "type": "string", "example": "张三", "description": "发票抬头" }, "invoiceType": { "type": "string", "example": "PERSONAL", "description": "发票类型: PERSONAL(个人)/COMPANY(企业)" }, "orderId": { "type": "string", "example": 1760000000000001, "description": "订单ID" }, "taxpayerId": { "type": "string", "description": "纳税人识别号(企业发票必填)" } }, "title": "发票申请请求" }, "支付预下单请求": { "type": "object", "required": [ "orderId", "tradeType" ], "properties": { "clientIp": { "type": "string", "example": "192.168.1.1", "description": "客户端IP(H5支付必填)" }, "orderId": { "type": "string", "example": 1760000000000001, "description": "订单ID" }, "tradeType": { "type": "string", "example": "JSAPI", "description": "支付方式: JSAPI(小程序支付)/H5(H5支付)" } }, "title": "支付预下单请求" }, "Map«string,string»": { "type": "object", "title": "Map«string,string»", "additionalProperties": { "type": "string" } }, "发送短信验证码请求": { "type": "object", "required": [ "phone" ], "properties": { "phone": { "type": "string", "example": 13800138000, "description": "手机号" } }, "title": "发送短信验证码请求" }, "微信登录请求": { "type": "object", "required": [ "code" ], "properties": { "code": { "type": "string", "example": "0a3...", "description": "微信授权code" } }, "title": "微信登录请求" }, "更新个人资料请求": { "type": "object", "properties": { "avatar": { "type": "string", "example": "https://...", "description": "头像URL" }, "birthday": { "type": "string", "format": "date", "example": "1990-01-01", "description": "生日" }, "email": { "type": "string", "example": "user@example.com", "description": "邮箱" }, "gender": { "type": "integer", "format": "int32", "example": 1, "description": "性别: 1=男, 2=女" }, "nationality": { "type": "string", "example": "中国", "description": "国籍" }, "nickname": { "type": "string", "example": "旅行者小张", "description": "昵称" }, "phone": { "type": "string", "example": 13800138000, "description": "手机号" }, "realName": { "type": "string", "example": "张三", "description": "真实姓名" } }, "title": "更新个人资料请求" }, "短信验证码登录请求": { "type": "object", "required": [ "code", "phone" ], "properties": { "code": { "type": "string", "example": 123456, "description": "验证码" }, "phone": { "type": "string", "example": 13800138000, "description": "手机号" } }, "title": "短信验证码登录请求" }, "统一响应结果«Map«string,string»»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "type": "object", "description": "响应数据", "additionalProperties": { "type": "string" } }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«Map«string,string»»" }, "身份证OCR识别请求": { "type": "object", "required": [ "imgUrl" ], "properties": { "imgUrl": { "type": "string", "example": "https://hlgl-test.oss-cn-beijing.aliyuncs.com/xxx.jpg", "description": "身份证图片的OSS地址" } }, "title": "身份证OCR识别请求" }, "出行人请求(新增/修改)": { "type": "object", "required": [ "name" ], "properties": { "birthday": { "type": "string", "format": "date", "example": "1990-01-01", "description": "生日" }, "email": { "type": "string", "example": "lisi@example.com", "description": "邮箱" }, "emergencyContact": { "type": "string", "example": "王五", "description": "紧急联系人" }, "emergencyPhone": { "type": "string", "example": 13800138002, "description": "紧急联系电话" }, "gender": { "type": "integer", "format": "int32", "example": 1, "description": "性别: 1=男, 2=女" }, "idCardNo": { "type": "string", "example": 110101199001011234, "description": "证件号码" }, "idCardType": { "type": "string", "example": "ID_CARD", "description": "证件类型: ID_CARD(身份证)/PASSPORT(护照)" }, "name": { "type": "string", "example": "李四", "description": "姓名" }, "nationality": { "type": "string", "example": "中国", "description": "国籍" }, "phone": { "type": "string", "example": 13800138001, "description": "手机号" }, "travelerType": { "type": "string", "example": "ADULT", "description": "出行人类型: ADULT/CHILD/YOUNG_CHILD/BABY" } }, "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": { "coverUrl": { "type": "string", "description": "封面图URL" }, "createdAt": { "type": "string", "format": "date-time", "description": "收藏时间" }, "favoriteId": { "type": "string", "description": "收藏记录ID" }, "name": { "type": "string", "description": "资源名称" }, "tags": { "type": "array", "description": "标签列表", "items": { "type": "string" } }, "targetId": { "type": "string", "description": "目标资源ID" }, "targetType": { "type": "string", "description": "目标类型(字典:favorite_resource_type)" } }, "title": "收藏列表项(含资源摘要)" }, "收藏请求": { "type": "object", "required": [ "targetId", "targetType" ], "properties": { "targetId": { "type": "string", "example": 3001000000000000020, "description": "目标资源ID" }, "targetType": { "type": "string", "example": "SCENIC", "description": "目标类型(字典:favorite_resource_type)", "enum": [ "PRODUCT", "SCENIC", "RESTAURANT", "ACTIVITY" ] } }, "title": "收藏请求" }, "统一响应结果«boolean»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "type": "boolean", "description": "响应数据" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«boolean»" }, "统一响应结果«分页结果«收藏列表项(含资源摘要)»»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/分页结果«收藏列表项(含资源摘要)»", "originalRef": "分页结果«收藏列表项(含资源摘要)»" }, "message": { "type": "string", "example": "成功", "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", "required": [ "resourceId", "resourceType" ], "properties": { "resourceId": { "type": "string", "example": 3001000000000000020, "description": "资源ID" }, "resourceType": { "type": "string", "example": "SCENIC", "description": "资源类型: PRODUCT/SCENIC/RESTAURANT/ACTIVITY" } }, "title": "添加足迹请求" }, "统一响应结果«分页结果«足迹列表项(含资源摘要)»»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "description": "响应数据", "$ref": "#/definitions/分页结果«足迹列表项(含资源摘要)»", "originalRef": "分页结果«足迹列表项(含资源摘要)»" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«分页结果«足迹列表项(含资源摘要)»»" }, "足迹列表项(含资源摘要)": { "type": "object", "properties": { "coverUrl": { "type": "string", "description": "封面图URL" }, "footprintId": { "type": "string", "description": "足迹记录ID" }, "name": { "type": "string", "description": "资源名称" }, "resourceId": { "type": "string", "description": "资源ID" }, "resourceType": { "type": "string", "description": "资源类型:PRODUCT/SCENIC/RESTAURANT/ACTIVITY" }, "tags": { "type": "array", "description": "标签列表", "items": { "type": "string" } }, "visitTime": { "type": "string", "format": "date-time", "description": "浏览时间" } }, "title": "足迹列表项(含资源摘要)" }, "创建评价请求": { "type": "object", "required": [ "content", "orderId", "ratings" ], "properties": { "content": { "type": "string", "example": "非常棒的旅行体验!景色优美,服务周到。", "description": "评价内容(10-500字)" }, "images": { "type": "array", "description": "评价图片列表(最多9张)", "items": { "$ref": "#/definitions/评价图片项", "originalRef": "评价图片项" } }, "orderId": { "type": "integer", "format": "int64", "example": 1760000000000001, "description": "订单ID" }, "ratings": { "type": "object", "description": "评分数据(key为评分类别字典的dictValue,value为1-5整数)。先调用 GET /mp/review/rating-categories 获取评分维度,required=true的必填。示例: {\"ratingItinerary\":5,\"ratingAccommodation\":4,\"ratingDriver\":5,\"ratingDining\":4,\"ratingOverall\":5}", "additionalProperties": { "type": "integer", "format": "int32" } }, "videos": { "type": "array", "description": "评价视频列表(最多3个)", "items": { "$ref": "#/definitions/评价视频项", "originalRef": "评价视频项" } } }, "title": "创建评价请求" }, "评价图片项": { "type": "object", "required": [ "imageUrl" ], "properties": { "fileId": { "type": "integer", "format": "int64", "description": "文件ID" }, "imageUrl": { "type": "string", "description": "图片URL" } }, "title": "评价图片项" }, "评价视频项": { "type": "object", "required": [ "videoUrl" ], "properties": { "coverUrl": { "type": "string", "description": "视频封面URL" }, "duration": { "type": "integer", "format": "int32", "description": "视频时长(秒)" }, "fileId": { "type": "integer", "format": "int64", "description": "文件ID" }, "videoUrl": { "type": "string", "description": "视频URL" } }, "title": "评价视频项" }, "Map«string,object»_6": { "type": "object", "title": "Map«string,object»_6", "additionalProperties": { "type": "object" } }, "Map«string,object»_7": { "type": "object", "title": "Map«string,object»_7", "additionalProperties": { "type": "object" } }, "创建心愿单请求": { "type": "object", "required": [ "productId" ], "properties": { "notes": { "type": "string", "description": "备注" }, "productId": { "type": "string", "example": 1760000000000001, "description": "产品ID" } }, "title": "创建心愿单请求" }, "提交反馈请求": { "type": "object", "required": [ "content" ], "properties": { "contact": { "type": "string", "description": "联系方式" }, "content": { "type": "string", "example": "页面加载较慢", "description": "反馈内容" }, "images": { "type": "array", "description": "图片URL列表", "items": { "type": "string" } } }, "title": "提交反馈请求" }, "统一响应结果«string»": { "type": "object", "properties": { "code": { "type": "integer", "format": "int32", "example": 200, "description": "状态码" }, "data": { "type": "string", "description": "响应数据" }, "message": { "type": "string", "example": "成功", "description": "响应消息" } }, "title": "统一响应结果«string»" }, "统一响应结果«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": "响应消息" } }, "title": "统一响应结果«List«string»»" } } }