{ "openapi": "3.0.1", "info": { "title": "One Pipe package silence admin API - Apifox snapshot", "version": "2026-10-28", "description": "21 order-silence and first-purchase operations. Read-only snapshot; refresh the source export when Apifox changes." }, "paths": { "/api/admin/assets/{asset_type}/{id}/first-purchase-records": { "get": { "summary": "资产首次购买套餐记录", "deprecated": false, "description": "按资产查看各世代首次购买套餐记录(首次购买套餐时间、来源(首次购买套餐 / 历史回填)、订单号、结束时间与原因);换货后的新资产在当前世代真正购买套餐后才有记录;只读。", "tags": [ "卡管/资产 - 首次购买套餐时间", "资产 - 首次购买套餐时间" ], "parameters": [ { "name": "asset_type", "in": "path", "description": "资产类型 card/iot_card/device", "required": true, "example": "", "schema": { "description": "资产类型 card/iot_card/device", "type": "string" } }, { "name": "id", "in": "path", "description": "资产 ID", "required": true, "example": 0, "schema": { "description": "资产 ID", "minimum": 0, "type": "integer" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "items": { "$ref": "#/components/schemas/DtoAssetFirstPurchaseRecordResponse" }, "type": "array" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/batches": { "get": { "summary": "延期批次列表", "deprecated": false, "description": "", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "example": 0, "schema": { "description": "页码", "type": "integer" } }, { "name": "page_size", "in": "query", "description": "每页数量", "required": false, "example": 0, "schema": { "description": "每页数量", "type": "integer" } }, { "name": "batch_no", "in": "query", "description": "批次号", "required": false, "example": "", "schema": { "description": "批次号", "type": "string" } }, { "name": "path", "in": "query", "description": "路径", "required": false, "example": "", "schema": { "description": "路径", "type": "string" } }, { "name": "extension_type", "in": "query", "description": "延期类型", "required": false, "example": "", "schema": { "description": "延期类型", "type": "string" } }, { "name": "status", "in": "query", "description": "批次状态", "required": false, "example": "", "schema": { "description": "批次状态", "type": "string" } }, { "name": "has_exception", "in": "query", "description": "只看含异常明细的批次", "required": false, "example": "", "schema": { "description": "只看含异常明细的批次", "type": "boolean", "nullable": true } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceBatchPageResult" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/batches/{id}": { "get": { "summary": "延期批次详情(含明细)", "deprecated": false, "description": "", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [ { "name": "id", "in": "path", "description": "ID", "required": true, "example": 0, "schema": { "description": "ID", "minimum": 0, "type": "integer" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceBatchResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/eligibility": { "get": { "summary": "延期资格", "deprecated": false, "description": "待实名但已到期的先判定为过期;返回最少 / 最多天数与月数、单价、各月数档位;金额全部由后端计算。\n\n沉默期总开关关闭时返回错误码 1274(silence_feature_disabled);已发生的支付回调、查单与审批回调不受开关影响。", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [ { "name": "package_usage_id", "in": "query", "description": "套餐记录 ID", "required": true, "example": 0, "schema": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceEligibilityResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/extensions/{id}/handle": { "post": { "summary": "处理异常延期明细", "deprecated": false, "description": "需 package_silence:exception 权限;retry 按原快照重新执行,close 关闭(在线订单按冻结商户原路退款)。不得直接改截止时间。", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [ { "name": "id", "in": "path", "description": "延期明细 ID", "required": true, "example": 0, "schema": { "description": "延期明细 ID", "minimum": 0, "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DtoSilenceExceptionHandleParams" } } } }, "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceExtensionResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/orders": { "get": { "summary": "延期订单列表", "deprecated": false, "description": "叠加店铺数据范围;支付方式、收款商户、交易流水号取已支付或已退款支付单快照。导出使用统一导出任务,场景 package_silence_order,筛选参数同本接口。", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "example": 0, "schema": { "description": "页码", "type": "integer" } }, { "name": "page_size", "in": "query", "description": "每页数量", "required": false, "example": 0, "schema": { "description": "每页数量", "type": "integer" } }, { "name": "package_usage_id", "in": "query", "description": "套餐记录 ID", "required": false, "example": 0, "schema": { "description": "套餐记录 ID", "minimum": 0, "type": "integer", "nullable": true } }, { "name": "package_id", "in": "query", "description": "套餐 ID", "required": false, "example": 0, "schema": { "description": "套餐 ID", "minimum": 0, "type": "integer", "nullable": true } }, { "name": "asset_identifier", "in": "query", "description": "资产标识(ICCID / 虚拟号 / IMEI)", "required": false, "example": "", "schema": { "description": "资产标识(ICCID / 虚拟号 / IMEI)", "type": "string" } }, { "name": "order_no", "in": "query", "description": "订单号", "required": false, "example": "", "schema": { "description": "订单号", "type": "string" } }, { "name": "status", "in": "query", "description": "状态", "required": false, "example": "", "schema": { "description": "状态", "type": "string" } }, { "name": "source", "in": "query", "description": "来源", "required": false, "example": "", "schema": { "description": "来源", "type": "string" } }, { "name": "payment_method", "in": "query", "description": "支付方式", "required": false, "example": "", "schema": { "description": "支付方式", "type": "string" } }, { "name": "merchant_name", "in": "query", "description": "收款商户名称(模糊)", "required": false, "example": "", "schema": { "description": "收款商户名称(模糊)", "type": "string" } }, { "name": "third_party_trade_no", "in": "query", "description": "交易流水号或线下交易单号", "required": false, "example": "", "schema": { "description": "交易流水号或线下交易单号", "type": "string" } }, { "name": "paid_start", "in": "query", "description": "支付时间起(RFC3339)", "required": false, "example": "", "schema": { "description": "支付时间起(RFC3339)", "type": "string" } }, { "name": "paid_end", "in": "query", "description": "支付时间止(RFC3339)", "required": false, "example": "", "schema": { "description": "支付时间止(RFC3339)", "type": "string" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceOrderPageResult" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/orders/{id}": { "get": { "summary": "延期订单详情", "deprecated": false, "description": "", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [ { "name": "id", "in": "path", "description": "ID", "required": true, "example": 0, "schema": { "description": "ID", "minimum": 0, "type": "integer" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceExtensionOrderResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/orders/offline": { "post": { "summary": "登记线下付费延期", "deprecated": false, "description": "需 package_silence:offline 权限;实收金额必须等于系统计算金额(1273),同一收款方式下交易单号唯一(1272);政策未勾选 offline_paid 免审批时提交企微审批,通过后延期,驳回订单 rejected 且系统不退款。\n\n沉默期总开关关闭时返回错误码 1274(silence_feature_disabled);已发生的支付回调、查单与审批回调不受开关影响。", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DtoSilenceOfflineOrderRequest" } } } }, "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceExtensionOrderResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/orders/qrcode": { "post": { "summary": "运营创建在线延期订单并生成支付二维码", "deprecated": false, "description": "需 package_silence:extend 权限;商户按支付方式经商户池路由并冻结;返回 qr_content 由前端渲染为二维码,客户扫码支付后自动延期,不审批。同一套餐已有待支付订单时先查单:未支付则关闭旧单再新建,已支付则按已支付处理并返回旧单。\n\n沉默期总开关关闭时返回错误码 1274(silence_feature_disabled);已发生的支付回调、查单与审批回调不受开关影响。", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DtoSilenceOnlineOrderRequest" } } } }, "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceExtensionOrderResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/quote": { "get": { "summary": "按天数试算付费延期", "deprecated": false, "description": "按每月 30 天向上取整计费(1 天按 30 天,31 天按 60 天),延长天数等于计费天数。\n\n沉默期总开关关闭时返回错误码 1274(silence_feature_disabled);已发生的支付回调、查单与审批回调不受开关影响。", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [ { "name": "package_usage_id", "in": "query", "description": "套餐记录 ID", "required": true, "example": 0, "schema": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" } }, { "name": "days", "in": "query", "description": "输入的延期天数(按每月 30 天向上取整计费)", "required": true, "example": 0, "schema": { "description": "输入的延期天数(按每月 30 天向上取整计费)", "type": "integer" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceQuoteResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/special": { "post": { "summary": "提交特殊延期(单个 / 批量)", "deprecated": false, "description": "需 package_silence:extend 权限,批量(多条或导入文件)另需 package_silence:extend_batch;免费延期受政策次数约束(1267);不受付费上限与套餐是否支持延期约束,只要求新截止晚于今天。政策未勾选对应免审批场景(批量看 batch)时提交企微审批,通过后逐条执行。\n\n沉默期总开关关闭时返回错误码 1274(silence_feature_disabled);已发生的支付回调、查单与审批回调不受开关影响。", "tags": [ "卡管/沉默期 - 延期", "沉默期 - 延期" ], "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DtoSilenceSpecialRequest" } } } }, "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceBatchResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/policies": { "get": { "summary": "延期政策列表", "deprecated": false, "description": "需 package_silence:policy 权限。", "tags": [ "卡管/沉默期 - 延期政策", "沉默期 - 延期政策" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "example": 0, "schema": { "description": "页码", "type": "integer" } }, { "name": "page_size", "in": "query", "description": "每页数量", "required": false, "example": 0, "schema": { "description": "每页数量", "type": "integer" } }, { "name": "name", "in": "query", "description": "政策名称(模糊)", "required": false, "example": "", "schema": { "description": "政策名称(模糊)", "type": "string" } }, { "name": "scope_type", "in": "query", "description": "适用范围", "required": false, "example": "", "schema": { "description": "适用范围", "type": "string" } }, { "name": "status", "in": "query", "description": "状态", "required": false, "example": 0, "schema": { "description": "状态", "type": "integer", "nullable": true } }, { "name": "effective_at", "in": "query", "description": "在该时间生效(RFC3339)", "required": false, "example": "", "schema": { "description": "在该时间生效(RFC3339)", "type": "string" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "items": { "$ref": "#/components/schemas/DtoSilencePolicyResponse" }, "type": "array" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] }, "post": { "summary": "新增延期政策", "deprecated": false, "description": "同一优先级的适用范围与生效时间段不能重叠,重叠返回 1269(silence_policy_overlap)。修改只影响之后发起的延期。", "tags": [ "卡管/沉默期 - 延期政策", "沉默期 - 延期政策" ], "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DtoSilencePolicyRequest" } } } }, "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilencePolicyResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/policies/{id}": { "get": { "summary": "延期政策详情", "deprecated": false, "description": "", "tags": [ "卡管/沉默期 - 延期政策", "沉默期 - 延期政策" ], "parameters": [ { "name": "id", "in": "path", "description": "ID", "required": true, "example": 0, "schema": { "description": "ID", "minimum": 0, "type": "integer" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilencePolicyResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] }, "put": { "summary": "编辑延期政策", "deprecated": false, "description": "全量提交字段;已创建的延期订单与已提交的审批按快照执行。", "tags": [ "卡管/沉默期 - 延期政策", "沉默期 - 延期政策" ], "parameters": [ { "name": "id", "in": "path", "description": "政策 ID", "required": true, "example": 0, "schema": { "description": "政策 ID", "minimum": 0, "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DtoSilencePolicyUpdateParams" } } } }, "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilencePolicyResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/policies/{id}/status": { "put": { "summary": "启停延期政策", "deprecated": false, "description": "启用时同样做重叠校验。", "tags": [ "卡管/沉默期 - 延期政策", "沉默期 - 延期政策" ], "parameters": [ { "name": "id", "in": "path", "description": "政策 ID", "required": true, "example": 0, "schema": { "description": "政策 ID", "minimum": 0, "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DtoSilencePolicyStatusParams" } } } }, "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilencePolicyResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/policies/match": { "get": { "summary": "查询套餐当前匹配的延期政策", "deprecated": false, "description": "优先级:指定套餐 > 套餐系列 > 全部套餐;只匹配启用且在生效期内的政策。", "tags": [ "卡管/沉默期 - 延期政策", "沉默期 - 延期政策" ], "parameters": [ { "name": "package_id", "in": "query", "description": "套餐 ID", "required": true, "example": 0, "schema": { "description": "套餐 ID", "minimum": 0, "type": "integer" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilencePolicyMatchResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/records": { "get": { "summary": "套餐沉默期流水", "deprecated": false, "description": "设置、调整、过期、结束、延期、换货迁移、回填等不可变流水。", "tags": [ "卡管/沉默期", "沉默期" ], "parameters": [ { "name": "package_usage_id", "in": "query", "description": "套餐记录 ID", "required": true, "example": 0, "schema": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "items": { "$ref": "#/components/schemas/DtoSilenceRecordResponse" }, "type": "array" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/switch": { "get": { "summary": "查询沉默期总开关", "deprecated": false, "description": "返回总开关当前值与打开前 4 项检查结果(未配置默认沉默期的套餐、未回填记录、全部套餐延期政策、企微审批场景)。", "tags": [ "卡管/沉默期", "沉默期" ], "parameters": [], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceSwitchResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] }, "put": { "summary": "切换沉默期总开关(仅超级管理员)", "deprecated": false, "description": "打开前逐项检查,任一项不满足返回 1275(silence_switch_precheck_failed),data.failed_items 为未满足项与数量;关闭(应急)不检查:规则暂停、数据保留。每次切换写审计 package.silence_switch_changed。", "tags": [ "卡管/沉默期", "沉默期" ], "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DtoSilenceSwitchRequest" } } } }, "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceSwitchResponse" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } }, "/api/admin/package-silence/usages": { "get": { "summary": "即将过期 / 已过期套餐", "deprecated": false, "description": "view=expiring(默认 7 天内到期)/ expired / all;导出使用统一导出任务,场景 package_silence_usage,筛选参数同本接口。", "tags": [ "卡管/沉默期", "沉默期" ], "parameters": [ { "name": "page", "in": "query", "description": "页码", "required": false, "example": 0, "schema": { "description": "页码", "type": "integer" } }, { "name": "page_size", "in": "query", "description": "每页数量", "required": false, "example": 0, "schema": { "description": "每页数量", "type": "integer" } }, { "name": "view", "in": "query", "description": "视图:expiring 即将过期(默认 7 天内) / expired 已过期 / all 全部待实名与已过期", "required": false, "example": "", "schema": { "description": "视图:expiring 即将过期(默认 7 天内) / expired 已过期 / all 全部待实名与已过期", "type": "string" } }, { "name": "within_days", "in": "query", "description": "即将过期的天数范围(默认 7)", "required": false, "example": 0, "schema": { "description": "即将过期的天数范围(默认 7)", "type": "integer" } }, { "name": "asset_identifier", "in": "query", "description": "资产标识", "required": false, "example": "", "schema": { "description": "资产标识", "type": "string" } }, { "name": "package_id", "in": "query", "description": "套餐 ID", "required": false, "example": 0, "schema": { "description": "套餐 ID", "minimum": 0, "type": "integer", "nullable": true } }, { "name": "shop_id", "in": "query", "description": "资产所属店铺", "required": false, "example": 0, "schema": { "description": "资产所属店铺", "minimum": 0, "type": "integer", "nullable": true } }, { "name": "deadline_start", "in": "query", "description": "截止时间起(RFC3339)", "required": false, "example": "", "schema": { "description": "截止时间起(RFC3339)", "type": "string" } }, { "name": "deadline_end", "in": "query", "description": "截止时间止(RFC3339)", "required": false, "example": "", "schema": { "description": "截止时间止(RFC3339)", "type": "string" } } ], "responses": { "200": { "description": "成功", "content": { "application/json": { "schema": { "properties": { "code": { "description": "响应码", "type": "integer", "examples": [ 0 ] }, "data": { "$ref": "#/components/schemas/DtoSilenceUsagePageResult" }, "msg": { "description": "响应消息", "type": "string", "examples": [ "success" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "data", "msg", "timestamp" ], "type": "object" } } }, "headers": {} }, "400": { "description": "请求参数错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "401": { "description": "未认证或认证已过期", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "403": { "description": "无权访问", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} }, "500": { "description": "服务器内部错误", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "headers": {} } }, "security": [ { "BearerAuth": [] } ] } } }, "components": { "schemas": { "DtoAssetFirstPurchaseRecordResponse": { "properties": { "asset_id": { "description": "资产 ID", "minimum": 0, "type": "integer" }, "asset_identifier": { "description": "资产标识快照", "type": "string" }, "asset_type": { "description": "资产类型", "type": "string" }, "created_at": { "description": "记录时间", "format": "date-time", "type": "string" }, "end_reason": { "description": "结束原因:exchange_return 换货回库", "type": "string" }, "ended_at": { "description": "该世代结束时间", "format": "date-time", "type": "string", "nullable": true }, "first_purchase_at": { "description": "首次购买套餐时间", "format": "date-time", "type": "string" }, "generation": { "description": "世代", "type": "integer" }, "id": { "description": "记录 ID", "minimum": 0, "type": "integer" }, "order_no": { "description": "订单号", "type": "string" }, "source": { "description": "来源:order 首次购买套餐 / backfill 历史回填", "type": "string" }, "source_name": { "description": "来源名称", "type": "string" } }, "type": "object" }, "ErrorResponse": { "properties": { "code": { "description": "错误码", "type": "integer", "examples": [ 1001 ] }, "data": { "description": "错误详情(可选)", "type": "object", "properties": {} }, "msg": { "description": "错误消息", "type": "string", "examples": [ "参数验证失败" ] }, "timestamp": { "description": "时间戳", "format": "date-time", "type": "string" } }, "required": [ "code", "msg", "timestamp" ], "type": "object" }, "DtoSilenceBatchPageResult": { "properties": { "items": { "description": "批次列表", "items": { "$ref": "#/components/schemas/DtoSilenceBatchResponse" }, "type": "array" }, "page": { "description": "页码", "type": "integer" }, "page_size": { "description": "每页数量", "type": "integer" }, "total": { "description": "总数", "type": "integer" } }, "type": "object" }, "DtoSilenceBatchResponse": { "properties": { "amount": { "description": "费用(分)", "type": "integer" }, "approval_instance_id": { "description": "审批实例 ID", "minimum": 0, "type": "integer", "nullable": true }, "approval_required": { "description": "是否需要审批", "type": "boolean" }, "approval_status": { "description": "审批状态", "type": "string" }, "basis": { "description": "依据", "type": "string" }, "batch_no": { "description": "批次号", "type": "string" }, "completed_at": { "description": "完成时间", "format": "date-time", "type": "string", "nullable": true }, "evidence_refs": { "description": "附件", "items": { "type": "string" }, "type": "array" }, "extension_type": { "description": "延期类型", "type": "string" }, "failed_count": { "description": "失败数", "type": "integer" }, "id": { "description": "批次 ID", "minimum": 0, "type": "integer" }, "items": { "description": "明细", "items": { "$ref": "#/components/schemas/DtoSilenceExtensionResponse" }, "type": "array" }, "path": { "description": "路径:online / offline / special / adjust", "type": "string" }, "reason": { "description": "原因", "type": "string" }, "requested_at": { "description": "发起时间", "format": "date-time", "type": "string" }, "requested_by": { "description": "发起人", "minimum": 0, "type": "integer" }, "requested_count": { "description": "明细数", "type": "integer" }, "status": { "description": "批次状态", "type": "string" }, "succeeded_count": { "description": "成功数", "type": "integer" } }, "type": "object" }, "DtoSilenceExtensionResponse": { "properties": { "after_deadline_at": { "description": "延期后截止时间", "format": "date-time", "type": "string", "nullable": true }, "amount": { "description": "金额(分)", "type": "integer" }, "asset_identifier": { "description": "资产标识", "type": "string" }, "asset_type": { "description": "资产类型", "type": "string" }, "batch_id": { "description": "批次 ID", "minimum": 0, "type": "integer" }, "before_deadline_at": { "description": "延期前截止时间", "format": "date-time", "type": "string", "nullable": true }, "executed_at": { "description": "执行时间", "format": "date-time", "type": "string", "nullable": true }, "extension_days": { "description": "延长天数", "type": "integer" }, "extension_order_id": { "description": "延期订单 ID", "minimum": 0, "type": "integer", "nullable": true }, "extension_type": { "description": "延期类型", "type": "string" }, "failure_code": { "description": "失败 / 异常原因码", "type": "string" }, "failure_summary": { "description": "失败 / 异常说明", "type": "string" }, "id": { "description": "明细 ID", "minimum": 0, "type": "integer" }, "input_days": { "description": "输入天数", "type": "integer" }, "months": { "description": "计费月数", "type": "integer" }, "package_name": { "description": "套餐名称", "type": "string" }, "package_usage_id": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" }, "row_no": { "description": "行号", "type": "integer" }, "status": { "description": "明细状态", "type": "string" } }, "type": "object" }, "DtoSilenceEligibilityResponse": { "properties": { "can_extend": { "description": "能否办理付费延期", "type": "boolean" }, "extended_days": { "description": "已累计延期天数", "type": "integer" }, "extension_enabled": { "description": "套餐是否支持付费延期", "type": "boolean" }, "free_extension_available": { "description": "是否还能申请免费延期", "type": "boolean" }, "free_extension_limit": { "description": "免费延期次数上限", "type": "integer" }, "free_extension_used": { "description": "已使用免费延期次数", "type": "integer" }, "max_days": { "description": "本次付费延期可输入的最多天数", "type": "integer" }, "max_months": { "description": "本次付费延期最多月数(特殊延期不受此限)", "type": "integer" }, "min_days": { "description": "可输入的最少天数(付费与特殊延期都适用)", "type": "integer" }, "min_months": { "description": "最少延期月数", "type": "integer" }, "options": { "description": "min~max 每档计费天数、金额与新截止日期", "items": { "$ref": "#/components/schemas/DtoSilenceExtensionOption" }, "type": "array" }, "original_deadline": { "description": "当前截止日期(YYYY-MM-DD)", "type": "string" }, "overdue_days": { "description": "已过期天数", "type": "integer" }, "package_usage_id": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" }, "paid_extended_days": { "description": "其中付费延期累计天数", "type": "integer" }, "pending_order_no": { "description": "未结束的延期订单号(有则不能新建,需先完成或关闭)", "type": "string" }, "policy_id": { "description": "当前匹配的延期政策 ID", "minimum": 0, "type": "integer", "nullable": true }, "policy_name": { "description": "当前匹配的延期政策名称", "type": "string" }, "reason": { "description": "付费延期不能办理的原因:not_expired/no_silence/extension_disabled/no_policy/exceeds_limit/refunded/order_pending/activated/adjust_pending", "type": "string" }, "silence_status": { "description": "沉默期状态(待实名但已到期的先判定为过期)", "type": "string" }, "special_extension_available": { "description": "能否申请特殊延期(只要求套餐已过期)", "type": "boolean" }, "unit_price": { "description": "每月单价(分),取当前匹配的延期政策", "type": "integer" } }, "type": "object" }, "DtoSilenceExtensionOption": { "properties": { "amount": { "description": "金额(分)", "type": "integer" }, "billed_days": { "description": "计费 / 延长天数(月数 × 30)", "type": "integer" }, "months": { "description": "计费月数", "type": "integer" }, "new_deadline": { "description": "新截止日期(YYYY-MM-DD,当日 23:59:59 截止)", "type": "string" } }, "type": "object" }, "DtoSilenceExceptionHandleParams": { "properties": { "action": { "description": "处理方式:retry 重试执行 / close 关闭(在线订单关闭时原路退款)", "type": "string" }, "id": { "description": "延期明细 ID", "minimum": 0, "type": "integer" }, "reason": { "description": "处理原因", "type": "string" } }, "required": [ "action", "id", "reason" ], "type": "object" }, "DtoSilenceOrderPageResult": { "properties": { "items": { "description": "订单列表", "items": { "$ref": "#/components/schemas/DtoSilenceExtensionOrderResponse" }, "type": "array" }, "page": { "description": "页码", "type": "integer" }, "page_size": { "description": "每页数量", "type": "integer" }, "total": { "description": "总数", "type": "integer" } }, "type": "object" }, "DtoSilenceExtensionOrderResponse": { "properties": { "amount": { "description": "应付金额(分)", "type": "integer" }, "approval_instance_id": { "description": "审批实例 ID", "minimum": 0, "type": "integer", "nullable": true }, "approval_required": { "description": "是否需要审批", "type": "boolean" }, "asset_id": { "description": "资产 ID", "minimum": 0, "type": "integer" }, "asset_identifier": { "description": "资产标识快照", "type": "string" }, "asset_type": { "description": "资产类型 iot_card / device", "type": "string" }, "batch_no": { "description": "批次号", "type": "string" }, "before_deadline_at": { "description": "下单时截止时间", "format": "date-time", "type": "string" }, "completed_at": { "description": "延期生效时间", "format": "date-time", "type": "string", "nullable": true }, "created_at": { "description": "创建时间", "format": "date-time", "type": "string" }, "created_by": { "description": "后台创建人", "minimum": 0, "type": "integer", "nullable": true }, "customer_id": { "description": "H5 下单的客户", "minimum": 0, "type": "integer", "nullable": true }, "evidence_refs": { "description": "申请依据", "items": { "type": "string" }, "type": "array" }, "exception_code": { "description": "异常原因码", "type": "string" }, "exception_summary": { "description": "异常说明", "type": "string" }, "expected_deadline_at": { "description": "预计新截止时间", "format": "date-time", "type": "string" }, "expire_at": { "description": "支付截止时间", "format": "date-time", "type": "string", "nullable": true }, "extension_days": { "description": "计费 / 延长天数", "type": "integer" }, "id": { "description": "订单 ID", "minimum": 0, "type": "integer" }, "input_days": { "description": "输入天数", "type": "integer" }, "months": { "description": "计费月数", "type": "integer" }, "offline_payment_method_name": { "description": "线下收款方式", "type": "string" }, "offline_trade_no": { "description": "线下交易单号", "type": "string" }, "order_no": { "description": "订单号", "type": "string" }, "package_id": { "description": "套餐 ID", "minimum": 0, "type": "integer" }, "package_name": { "description": "套餐名称快照", "type": "string" }, "package_usage_id": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" }, "paid_amount": { "description": "实付金额(分)", "type": "integer", "nullable": true }, "paid_at": { "description": "支付时间", "format": "date-time", "type": "string", "nullable": true }, "payment_merchant_name": { "description": "收款商户名称(取已支付或已退款支付单快照)", "type": "string" }, "payment_method": { "description": "支付方式:wechat/alipay/offline", "type": "string" }, "payment_no": { "description": "支付单号", "type": "string" }, "payment_voucher_keys": { "description": "线下收款凭证", "items": { "type": "string" }, "type": "array" }, "policy_name": { "description": "政策名称快照", "type": "string" }, "qr_content": { "description": "支付内容(待支付时返回,前端渲染为二维码或跳转链接)", "type": "string" }, "refund_amount": { "description": "退款金额", "type": "integer", "nullable": true }, "refund_no": { "description": "原路退款单号(仅执行异常)", "type": "string" }, "refunded_at": { "description": "退款时间", "format": "date-time", "type": "string", "nullable": true }, "shop_id": { "description": "下单时资产所属店铺", "minimum": 0, "type": "integer" }, "source": { "description": "来源:client / admin / offline", "type": "string" }, "source_name": { "description": "来源名称", "type": "string" }, "status": { "description": "状态:pending_payment/pending_approval/rejected/paid/completed/closed/exception/refunded", "type": "string" }, "status_name": { "description": "状态名称", "type": "string" }, "third_party_trade_no": { "description": "交易流水号", "type": "string" }, "unit_price": { "description": "单价(分/月)", "type": "integer" } }, "type": "object" }, "DtoSilenceOfflineOrderRequest": { "properties": { "days": { "description": "输入的延期天数", "type": "integer" }, "evidence_refs": { "description": "客户申请依据", "items": { "type": "string" }, "type": "array", "nullable": true }, "offline_payment_method_id": { "description": "线下收款方式(字典 ID)", "minimum": 0, "type": "integer" }, "offline_trade_no": { "description": "线下交易单号(同一收款方式下唯一)", "type": "string" }, "package_usage_id": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" }, "paid_amount": { "description": "实收金额(分),必须等于系统计算金额", "type": "integer" }, "paid_at": { "description": "付款时间", "format": "date-time", "type": "string" }, "payment_voucher_keys": { "description": "收款凭证对象存储 Key(1~5 个)", "items": { "type": "string" }, "type": "array", "nullable": true }, "request_id": { "description": "幂等键", "type": "string" } }, "required": [ "days", "offline_payment_method_id", "offline_trade_no", "package_usage_id", "paid_at", "payment_voucher_keys", "request_id" ], "type": "object" }, "DtoSilenceOnlineOrderRequest": { "properties": { "days": { "description": "输入的延期天数", "type": "integer" }, "evidence_refs": { "description": "客户申请记录或截图对象存储 Key(后台创建时填写)", "items": { "type": "string" }, "type": "array", "nullable": true }, "package_usage_id": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" }, "payment_method": { "description": "支付方式:wechat / alipay(经商户池路由)", "type": "string" }, "request_id": { "description": "下单幂等键", "type": "string" } }, "required": [ "days", "package_usage_id", "payment_method", "request_id" ], "type": "object" }, "DtoSilenceQuoteResponse": { "properties": { "amount": { "description": "金额(分)", "type": "integer" }, "billed_days": { "description": "计费 / 延长天数", "type": "integer" }, "input_days": { "description": "输入天数", "type": "integer" }, "months": { "description": "计费月数", "type": "integer" }, "new_deadline": { "description": "新截止日期", "type": "string" }, "valid": { "description": "是否在可办理范围内", "type": "boolean" } }, "type": "object" }, "DtoSilenceSpecialRequest": { "properties": { "amount": { "description": "费用(分,免费为 0;优惠价为实收合计)", "type": "integer" }, "basis": { "description": "免费或优惠依据", "type": "string" }, "evidence_refs": { "description": "客户申请记录或截图", "items": { "type": "string" }, "type": "array", "nullable": true }, "extension_type": { "description": "延期类型:free 免费 / discount 优惠价 / complaint_compensation 客诉补偿 / system_compensation 系统异常补偿 / special_customer 特殊客户政策", "type": "string" }, "import_file_key": { "description": "批量导入的明细文件 Key", "type": "string" }, "items": { "description": "明细(批量需 package_silence:extend_batch 权限)", "items": { "$ref": "#/components/schemas/DtoSilenceSpecialItem" }, "type": "array", "nullable": true }, "offline_paid_at": { "description": "优惠价有收款时:付款时间", "format": "date-time", "type": "string", "nullable": true }, "offline_payment_method_id": { "description": "优惠价有收款时:线下收款方式", "minimum": 0, "type": "integer", "nullable": true }, "offline_trade_no": { "description": "优惠价有收款时:交易单号", "type": "string" }, "payment_voucher_keys": { "description": "优惠价有收款时:收款凭证", "items": { "type": "string" }, "type": "array", "nullable": true }, "reason": { "description": "原因", "type": "string" } }, "required": [ "extension_type", "items", "reason" ], "type": "object" }, "DtoSilenceSpecialItem": { "properties": { "days": { "description": "延期天数(按 30 天向上取整)", "type": "integer" }, "package_usage_id": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" } }, "required": [ "days", "package_usage_id" ], "type": "object" }, "DtoSilencePolicyResponse": { "properties": { "approval_exempt_types": { "description": "免审批场景", "items": { "type": "string" }, "type": "array" }, "created_at": { "description": "创建时间", "format": "date-time", "type": "string" }, "creator": { "description": "创建人", "minimum": 0, "type": "integer" }, "effective_from": { "description": "生效时间", "format": "date-time", "type": "string" }, "effective_to": { "description": "失效时间", "format": "date-time", "type": "string", "nullable": true }, "free_extension_limit": { "description": "免费延期次数", "type": "integer" }, "id": { "description": "政策 ID", "minimum": 0, "type": "integer" }, "name": { "description": "政策名称", "type": "string" }, "paid_max_months": { "description": "付费延期累计最多月数", "type": "integer" }, "remark": { "description": "备注", "type": "string" }, "scope_ids": { "description": "系列或套餐 ID 列表", "items": { "minimum": 0, "type": "integer" }, "type": "array" }, "scope_type": { "description": "适用范围", "type": "string" }, "scope_type_name": { "description": "适用范围名称", "type": "string" }, "single_max_months": { "description": "单次付费延期最多月数", "type": "integer", "nullable": true }, "status": { "description": "状态:0-停用 1-启用", "type": "integer" }, "unit_price": { "description": "每月单价(分)", "type": "integer" }, "updated_at": { "description": "更新时间", "format": "date-time", "type": "string" }, "updater": { "description": "更新人", "minimum": 0, "type": "integer" } }, "type": "object" }, "DtoSilencePolicyRequest": { "properties": { "approval_exempt_types": { "description": "免审批场景(多选,空表示全部需审批)", "items": { "type": "string" }, "type": "array", "nullable": true }, "effective_from": { "description": "生效时间", "format": "date-time", "type": "string" }, "effective_to": { "description": "失效时间(为空表示长期)", "format": "date-time", "type": "string", "nullable": true }, "free_extension_limit": { "description": "每笔套餐免费延期次数", "minimum": 0, "type": "integer" }, "name": { "description": "政策名称(唯一)", "maxLength": 100, "type": "string" }, "paid_max_months": { "description": "付费延期累计最多月数", "minimum": 0, "type": "integer" }, "remark": { "description": "备注", "maxLength": 500, "type": "string" }, "scope_ids": { "description": "系列 ID 或套餐 ID 列表(all 时为空)", "items": { "minimum": 0, "type": "integer" }, "type": "array", "nullable": true }, "scope_type": { "description": "适用范围:all-全部套餐 series-套餐系列 package-指定套餐", "type": "string" }, "single_max_months": { "description": "单次付费延期最多月数(为空表示不单独限制)", "type": "integer", "nullable": true }, "status": { "description": "状态:0-停用 1-启用(新增默认启用)", "type": "integer", "nullable": true }, "unit_price": { "description": "每月单价(分),1 月 = 30 天", "minimum": 0, "type": "integer" } }, "required": [ "effective_from", "name", "scope_type" ], "type": "object" }, "DtoSilencePolicyUpdateParams": { "properties": { "approval_exempt_types": { "description": "免审批场景(多选,空表示全部需审批)", "items": { "type": "string" }, "type": "array", "nullable": true }, "effective_from": { "description": "生效时间", "format": "date-time", "type": "string" }, "effective_to": { "description": "失效时间(为空表示长期)", "format": "date-time", "type": "string", "nullable": true }, "free_extension_limit": { "description": "每笔套餐免费延期次数", "minimum": 0, "type": "integer" }, "id": { "description": "政策 ID", "minimum": 0, "type": "integer" }, "name": { "description": "政策名称(唯一)", "maxLength": 100, "type": "string" }, "paid_max_months": { "description": "付费延期累计最多月数", "minimum": 0, "type": "integer" }, "remark": { "description": "备注", "maxLength": 500, "type": "string" }, "scope_ids": { "description": "系列 ID 或套餐 ID 列表(all 时为空)", "items": { "minimum": 0, "type": "integer" }, "type": "array", "nullable": true }, "scope_type": { "description": "适用范围:all-全部套餐 series-套餐系列 package-指定套餐", "type": "string" }, "single_max_months": { "description": "单次付费延期最多月数(为空表示不单独限制)", "type": "integer", "nullable": true }, "status": { "description": "状态:0-停用 1-启用(新增默认启用)", "type": "integer", "nullable": true }, "unit_price": { "description": "每月单价(分),1 月 = 30 天", "minimum": 0, "type": "integer" } }, "required": [ "effective_from", "id", "name", "scope_type" ], "type": "object" }, "DtoSilencePolicyStatusParams": { "properties": { "id": { "description": "政策 ID", "minimum": 0, "type": "integer" }, "status": { "description": "状态:0-停用 1-启用", "type": "integer", "nullable": true } }, "required": [ "id", "status" ], "type": "object" }, "DtoSilencePolicyMatchResponse": { "properties": { "matched": { "description": "是否匹配到政策(未匹配时不能付费延期,特殊延期仍可申请)", "type": "boolean" }, "package_id": { "description": "套餐 ID", "minimum": 0, "type": "integer" }, "policy": { "$ref": "#/components/schemas/DtoSilencePolicyResponse" } }, "type": "object" }, "DtoSilenceRecordResponse": { "properties": { "after_deadline_at": { "description": "变更后截止时间", "format": "date-time", "type": "string", "nullable": true }, "after_status": { "description": "变更后状态", "type": "string", "nullable": true }, "approval_instance_id": { "description": "审批实例", "minimum": 0, "type": "integer", "nullable": true }, "asset_id": { "description": "资产 ID", "minimum": 0, "type": "integer" }, "asset_type": { "description": "资产类型", "type": "string" }, "batch_id": { "description": "批次", "minimum": 0, "type": "integer", "nullable": true }, "before_deadline_at": { "description": "变更前截止时间", "format": "date-time", "type": "string", "nullable": true }, "before_status": { "description": "变更前状态", "type": "string", "nullable": true }, "change_days": { "description": "变化天数", "type": "integer" }, "created_at": { "description": "时间", "format": "date-time", "type": "string" }, "default_days": { "description": "默认值快照", "type": "integer", "nullable": true }, "event_name": { "description": "事件名称", "type": "string" }, "event_type": { "description": "事件:set/adjust/expired/ended/extend/exchange/backfill/realname_backfill", "type": "string" }, "exchange_no": { "description": "换货单号", "type": "string" }, "extension_id": { "description": "延期明细", "minimum": 0, "type": "integer", "nullable": true }, "id": { "description": "流水 ID", "minimum": 0, "type": "integer" }, "is_adjusted": { "description": "是否调整", "type": "boolean" }, "operator_id": { "description": "操作人", "minimum": 0, "type": "integer" }, "operator_type": { "description": "操作人类型", "type": "string" }, "package_usage_id": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" }, "period_days": { "description": "沉默期天数", "type": "integer", "nullable": true }, "reason": { "description": "原因", "type": "string" }, "trigger_source": { "description": "触发来源", "type": "string" } }, "type": "object" }, "DtoSilenceSwitchResponse": { "properties": { "enabled": { "description": "总开关是否打开", "type": "boolean" }, "precheck": { "description": "打开前检查各项结果", "items": { "$ref": "#/components/schemas/DtoSilenceSwitchPrecheckItem" }, "type": "array" }, "precheck_passed": { "description": "打开前检查是否全部通过", "type": "boolean" } }, "type": "object" }, "DtoSilenceSwitchPrecheckItem": { "properties": { "code": { "description": "检查项:unconfigured_packages / unbackfilled_usages / default_policy_missing / approval_scene_missing", "type": "string" }, "count": { "description": "数量(前两项为未满足的数量,后两项为已具备的数量)", "type": "integer" }, "name": { "description": "检查项名称", "type": "string" }, "passed": { "description": "是否满足", "type": "boolean" } }, "type": "object" }, "DtoSilenceSwitchRequest": { "properties": { "enabled": { "description": "目标状态:true 打开 / false 关闭(应急关闭不做检查)", "type": "boolean", "nullable": true } }, "required": [ "enabled" ], "type": "object" }, "DtoSilenceUsagePageResult": { "properties": { "items": { "description": "列表", "items": { "$ref": "#/components/schemas/DtoSilenceUsageItem" }, "type": "array" }, "page": { "description": "页码", "type": "integer" }, "page_size": { "description": "每页数量", "type": "integer" }, "total": { "description": "总数", "type": "integer" } }, "type": "object" }, "DtoSilenceUsageItem": { "properties": { "asset_id": { "description": "资产 ID", "minimum": 0, "type": "integer" }, "asset_identifier": { "description": "资产标识", "type": "string" }, "asset_type": { "description": "资产类型", "type": "string" }, "created_at": { "description": "购买时间", "format": "date-time", "type": "string" }, "order_no": { "description": "订单号", "type": "string" }, "package_id": { "description": "套餐 ID", "minimum": 0, "type": "integer" }, "package_name": { "description": "套餐名称", "type": "string" }, "package_usage_id": { "description": "套餐记录 ID", "minimum": 0, "type": "integer" }, "shop_id": { "description": "资产所属店铺", "minimum": 0, "type": "integer", "nullable": true }, "shop_name": { "description": "店铺名称", "type": "string" }, "silence": { "$ref": "#/components/schemas/DtoPackageSilenceView" } }, "type": "object" }, "DtoPackageSilenceView": { "properties": { "extendable": { "description": "是否显示延期入口(沉默期已过期的待生效套餐)", "type": "boolean" }, "silence_adjust_pending": { "description": "购买时调整沉默期的审批是否进行中", "type": "boolean" }, "silence_deadline_at": { "description": "当前沉默期截止时间(截止日 23:59:59)", "format": "date-time", "type": "string", "nullable": true }, "silence_expired_at": { "description": "最近一次过期时间", "format": "date-time", "type": "string", "nullable": true }, "silence_extended_days": { "description": "累计已延期天数", "type": "integer" }, "silence_extension_count": { "description": "累计延期次数", "type": "integer" }, "silence_free_extension_used": { "description": "已使用免费延期次数", "type": "integer" }, "silence_paid_extended_days": { "description": "其中付费延期累计天数", "type": "integer" }, "silence_period_days": { "description": "沉默期天数", "type": "integer", "nullable": true }, "silence_start_at": { "description": "沉默期起算时间(购买支付成功时间)", "format": "date-time", "type": "string", "nullable": true }, "silence_status": { "description": "沉默期状态:waiting-待实名 expired-沉默期已过期 ended-沉默期已结束;待实名但已过截止的按 expired 返回", "type": "string" }, "silence_status_name": { "description": "沉默期状态名称(待实名 / 延期待实名 / 沉默期已过期 / 沉默期已结束)", "type": "string" } }, "type": "object" } }, "securitySchemes": { "BearerAuth": { "bearerFormat": "JWT", "scheme": "bearer", "type": "jwt" }, "AgentOpenAPIAccount": { "description": "代理账号标识,填写代理登录平台使用的用户名或手机号,例如 agent001。", "in": "header", "name": "X-Agent-Account", "type": "apikey" }, "AgentOpenAPINonce": { "description": "调用方每次请求自行生成的随机串,不需要平台提前分配;同一账号在 5 分钟内不可重复。", "in": "header", "name": "X-Agent-Nonce", "type": "apikey" }, "AgentOpenAPIPassword": { "description": "代理账号当前登录密码,同时作为 HMAC-SHA256 签名密钥;密码变更后必须使用新密码签名。", "in": "header", "name": "X-Agent-Password", "type": "apikey" }, "AgentOpenAPISign": { "description": "调用方按签名规则实时计算的 HMAC-SHA256 小写十六进制签名,不是固定值。", "in": "header", "name": "X-Agent-Sign", "type": "apikey" }, "AgentOpenAPITimestamp": { "description": "调用方生成的请求发起时间,支持 Unix 秒、Unix 毫秒或 RFC3339 时间,必须与签名原文 timestamp 行一致。", "in": "header", "name": "X-Agent-Timestamp", "type": "apikey" }, "Combination": { "group": [ { "id": 1892463 }, { "id": 1892464 }, { "id": 1892465 }, { "id": 1892466 }, { "id": 1892467 } ], "type": "combination" } } } }