3580 lines
98 KiB
JSON
3580 lines
98 KiB
JSON
{
|
|
"openapi": "3.0.1",
|
|
"info": {
|
|
"title": "PC",
|
|
"description": "家谱业务 APP/PC 用户侧接口文档,用于 Apifox 导入。\n\n导入方式:Apifox -> 导入 API 数据 -> OpenAPI/Swagger -> 选择本文件。\n\n约定:\n- APP 路径前缀为 `/genealogy/app`\n- PC/H5 路径前缀为 `/genealogy/pc`\n- 后台管理接口不包含在本文件内\n- 登录后接口需要携带 token,且请求 Header 需携带 `clientid`\n",
|
|
"version": "1.0.0"
|
|
},
|
|
"tags": [
|
|
{
|
|
"name": "认证登录"
|
|
},
|
|
{
|
|
"name": "验证中心"
|
|
},
|
|
{
|
|
"name": "文件上传"
|
|
},
|
|
{
|
|
"name": "行政区划"
|
|
},
|
|
{
|
|
"name": "家族圈"
|
|
}
|
|
],
|
|
"paths": {
|
|
"/genealogy/pc/auth/register": {
|
|
"post": {
|
|
"summary": "PC 用户注册",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PasswordRegisterBody"
|
|
},
|
|
"example": {
|
|
"grantType": "password",
|
|
"tenantId": "000000",
|
|
"phone": "13800000000",
|
|
"password": "e10adc3949ba59abbe56e057f20f883e",
|
|
"nickName": "测试用户",
|
|
"registerSource": "app",
|
|
"validToken": "captcha-ticket-or-sms-token"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/LoginResult",
|
|
"description": "登录结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/login": {
|
|
"post": {
|
|
"summary": "PC 密码登录",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PasswordLoginBody"
|
|
},
|
|
"example": {
|
|
"grantType": "password",
|
|
"tenantId": "000000",
|
|
"phone": "13800000000",
|
|
"password": "e10adc3949ba59abbe56e057f20f883e",
|
|
"validToken": "captcha-ticket"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/LoginResult",
|
|
"description": "登录结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/login/sms": {
|
|
"post": {
|
|
"summary": "PC 短信登录",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SmsLoginBody"
|
|
},
|
|
"example": {
|
|
"grantType": "sms",
|
|
"tenantId": "000000",
|
|
"phone": "13800000000",
|
|
"smsCode": "123456",
|
|
"validToken": "captcha-ticket"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/LoginResult",
|
|
"description": "登录结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/sms/code": {
|
|
"post": {
|
|
"summary": "PC 发送短信验证码",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SmsCodeBody"
|
|
},
|
|
"example": {
|
|
"tenantId": "000000",
|
|
"phone": "13800000000",
|
|
"sceneCode": "WEB_H5_LOGIN",
|
|
"validToken": "captcha-ticket"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/profile": {
|
|
"get": {
|
|
"summary": "PC 当前用户资料",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"summary": "PC 修改用户资料",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProfileUpdateBody"
|
|
},
|
|
"example": {
|
|
"nickName": "张三",
|
|
"avatarOssId": "2060000000000000000",
|
|
"sex": "0",
|
|
"birthday": "1990-01-01",
|
|
"regionCode": "110101",
|
|
"addressDetail": "北京市东城区"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/password": {
|
|
"put": {
|
|
"summary": "PC 修改密码",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PasswordChangeBody"
|
|
},
|
|
"example": {
|
|
"oldPassword": "e10adc3949ba59abbe56e057f20f883e",
|
|
"newPassword": "25d55ad283aa400af464c76d713c07ad",
|
|
"validToken": "captcha-ticket"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/password/reset": {
|
|
"put": {
|
|
"summary": "PC 找回密码",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PasswordResetBody"
|
|
},
|
|
"example": {
|
|
"tenantId": "000000",
|
|
"phone": "13800000000",
|
|
"smsCode": "123456",
|
|
"newPassword": "25d55ad283aa400af464c76d713c07ad",
|
|
"validToken": "captcha-ticket"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/phone": {
|
|
"put": {
|
|
"summary": "PC 换绑手机号",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PhoneChangeBody"
|
|
},
|
|
"example": {
|
|
"newPhone": "13900000000",
|
|
"smsCode": "123456",
|
|
"validToken": "captcha-ticket"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/account/deactivate": {
|
|
"post": {
|
|
"summary": "PC 注销账号",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AccountDeactivateBody"
|
|
},
|
|
"example": {
|
|
"password": "e10adc3949ba59abbe56e057f20f883e",
|
|
"reason": "user request"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/auth/logout": {
|
|
"delete": {
|
|
"summary": "PC 退出登录",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"认证登录"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/captcha/require": {
|
|
"get": {
|
|
"summary": "查询当前场景是否需要验证",
|
|
"deprecated": false,
|
|
"description": "用于登录、注册、换绑手机等场景。按租户、客户端和场景编码匹配后台验证策略。",
|
|
"tags": [
|
|
"验证中心"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "tenantId",
|
|
"in": "query",
|
|
"description": "租户ID,用于区分不同租户的数据和验证策略",
|
|
"required": false,
|
|
"example": "000000",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientId",
|
|
"in": "query",
|
|
"description": "客户端ID,对应后台客户端管理中的APP/PC/小程序等终端",
|
|
"required": false,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "sceneCode",
|
|
"in": "query",
|
|
"description": "验证场景编码,例如APP_LOGIN、PC_LOGIN、APP_REGISTER",
|
|
"required": true,
|
|
"example": "WEB_H5_LOGIN",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "subject",
|
|
"in": "query",
|
|
"description": "验证主体,通常为手机号、用户ID或登录账号",
|
|
"required": false,
|
|
"example": "13800000000",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID",
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "ced7e5f0498645c6ec642dcf450b036f"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VerificationRequireResult",
|
|
"description": "验证需求查询结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/captcha/challenge": {
|
|
"post": {
|
|
"summary": "生成验证挑战",
|
|
"deprecated": false,
|
|
"description": "统一生成验证码。策略为天爱时返回行为验证数据;策略为系统图形时返回 uuid 和 img。",
|
|
"tags": [
|
|
"验证中心"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID",
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "ced7e5f0498645c6ec642dcf450b036f"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/VerificationChallengeBody"
|
|
},
|
|
"example": {
|
|
"tenantId": "000000",
|
|
"clientId": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"sceneCode": "WEB_H5_LOGIN",
|
|
"subject": "13800000000"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VerificationChallengeResult",
|
|
"description": "验证挑战生成结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/captcha/verify": {
|
|
"post": {
|
|
"summary": "校验验证结果并换取 validToken",
|
|
"deprecated": false,
|
|
"description": "验证通过后返回 validToken,登录、注册、发短信等业务接口将 validToken 随请求体一起提交。",
|
|
"tags": [
|
|
"验证中心"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID",
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "ced7e5f0498645c6ec642dcf450b036f"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/VerificationCheckBody"
|
|
},
|
|
"examples": {
|
|
"tianai_behavior": {
|
|
"value": {
|
|
"tenantId": "000000",
|
|
"clientId": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"sceneCode": "WEB_H5_LOGIN",
|
|
"subject": "13800000000",
|
|
"challengeId": "CAPTCHA_CHALLENGE_ID",
|
|
"providerCode": "tianai",
|
|
"captchaType": "SLIDER",
|
|
"payload": {
|
|
"track": {
|
|
"bgImageWidth": 340,
|
|
"bgImageHeight": 180,
|
|
"templateImageWidth": 50,
|
|
"templateImageHeight": 50,
|
|
"startTime": 1720000000000,
|
|
"stopTime": 1720000001500,
|
|
"left": 120,
|
|
"top": 0,
|
|
"trackList": [
|
|
{
|
|
"x": 0,
|
|
"y": 0,
|
|
"t": 0,
|
|
"type": "down"
|
|
},
|
|
{
|
|
"x": 120,
|
|
"y": 0,
|
|
"t": 650,
|
|
"type": "move"
|
|
},
|
|
{
|
|
"x": 120,
|
|
"y": 0,
|
|
"t": 700,
|
|
"type": "up"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"summary": "天爱滑块/旋转/滑动还原/文字点选验证"
|
|
},
|
|
"system_image": {
|
|
"value": {
|
|
"tenantId": "000000",
|
|
"clientId": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"sceneCode": "WEB_H5_LOGIN",
|
|
"subject": "13800000000",
|
|
"challengeId": "CAPTCHA_CHALLENGE_ID",
|
|
"providerCode": "ruoyi_image",
|
|
"captchaType": "math",
|
|
"payload": {
|
|
"uuid": "captcha-uuid",
|
|
"code": "6"
|
|
}
|
|
},
|
|
"summary": "系统图形验证码"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VerificationCheckResult",
|
|
"description": "验证校验结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/auth/code": {
|
|
"get": {
|
|
"summary": "兼容旧系统图形验证码",
|
|
"deprecated": false,
|
|
"description": "老版后台登录图形验证码入口。新的 APP/PC 业务优先使用 /captcha/require + /captcha/challenge + /captcha/verify。",
|
|
"tags": [
|
|
"验证中心"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID",
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "ced7e5f0498645c6ec642dcf450b036f"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/LegacyCaptchaResult",
|
|
"description": "兼容旧图形验证码结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/files/upload": {
|
|
"post": {
|
|
"summary": "PC 单文件上传",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"文件上传"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary",
|
|
"example": ""
|
|
}
|
|
},
|
|
"required": [
|
|
"file"
|
|
]
|
|
},
|
|
"example": {
|
|
"file": ""
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/FileUploadResult",
|
|
"description": "文件上传结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/files/resumable/init": {
|
|
"post": {
|
|
"summary": "PC 分片上传初始化",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"文件上传"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ResumableInitBody"
|
|
},
|
|
"example": {
|
|
"fileName": "cover.jpg",
|
|
"fileSize": 9532,
|
|
"fileMd5": "d41d8cd98f00b204e9800998ecf8427e",
|
|
"contentType": "image/jpeg",
|
|
"chunkSize": 4194304,
|
|
"totalChunks": 1,
|
|
"bizType": "genealogy",
|
|
"usageScene": "cover"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/files/resumable/chunk": {
|
|
"post": {
|
|
"summary": "PC 上传分片",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"文件上传"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"uploadId": {
|
|
"type": "string",
|
|
"example": ""
|
|
},
|
|
"chunkIndex": {
|
|
"type": "integer",
|
|
"example": 0
|
|
},
|
|
"chunkMd5": {
|
|
"type": "string",
|
|
"example": "d41d8cd98f00b204e9800998ecf8427e"
|
|
},
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary",
|
|
"example": ""
|
|
}
|
|
},
|
|
"required": [
|
|
"uploadId",
|
|
"chunkIndex",
|
|
"chunkMd5",
|
|
"file"
|
|
]
|
|
},
|
|
"example": {
|
|
"uploadId": "",
|
|
"chunkIndex": 0,
|
|
"chunkMd5": "d41d8cd98f00b204e9800998ecf8427e",
|
|
"file": ""
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/files/resumable/complete": {
|
|
"post": {
|
|
"summary": "PC 完成分片上传",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"文件上传"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ResumableCompleteBody"
|
|
},
|
|
"example": {
|
|
"uploadId": "UPLOAD202607090001",
|
|
"fileMd5": "d41d8cd98f00b204e9800998ecf8427e",
|
|
"fileSize": 9532
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/FileUploadResult",
|
|
"description": "文件上传结果"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/files/reference": {
|
|
"post": {
|
|
"summary": "PC 绑定文件业务引用",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"文件上传"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "428a8310cd442757ae699df5d894f051",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FileReferenceBody"
|
|
},
|
|
"example": {
|
|
"bizType": "family_feed",
|
|
"bizName": "family feed image",
|
|
"bizTable": "gen_family_feed",
|
|
"bizId": 900013001,
|
|
"bizField": "media_oss_ids",
|
|
"ossId": "2060000000000000000",
|
|
"usageScene": "feed_image"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"summary": "PC 释放文件业务引用",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"文件上传"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "bizTable",
|
|
"in": "query",
|
|
"description": "业务表名,用于文件引用绑定",
|
|
"required": true,
|
|
"example": "gen_family_feed",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "bizId",
|
|
"in": "query",
|
|
"description": "业务数据ID,用于文件引用绑定",
|
|
"required": true,
|
|
"example": 900013001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "bizField",
|
|
"in": "query",
|
|
"description": "业务字段名,例如avatar_oss_id、cover_oss_id",
|
|
"required": true,
|
|
"example": "media_ids",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "428a8310cd442757ae699df5d894f051",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/region/children": {
|
|
"get": {
|
|
"summary": "查询下级行政区划",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"行政区划"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "parentCode",
|
|
"in": "query",
|
|
"description": "父级行政区划编码,不传或传0查省级",
|
|
"required": false,
|
|
"example": "51",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID",
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "ced7e5f0498645c6ec642dcf450b036f"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ListResult",
|
|
"description": "通用列表响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/region/path/{regionCode}": {
|
|
"get": {
|
|
"summary": "查询行政区划路径",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"行政区划"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "regionCode",
|
|
"in": "path",
|
|
"description": "行政区划编码",
|
|
"required": true,
|
|
"example": "510000",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID",
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "ced7e5f0498645c6ec642dcf450b036f"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ListResult",
|
|
"description": "通用列表响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/region/search": {
|
|
"get": {
|
|
"summary": "搜索行政区划",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"行政区划"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "keyword",
|
|
"in": "query",
|
|
"description": "搜索关键词,支持地区名称或编码模糊查询",
|
|
"required": true,
|
|
"example": "北京",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "level",
|
|
"in": "query",
|
|
"description": "行政区划级别,1省、2市、3区县、4乡镇街道、5村社区",
|
|
"required": false,
|
|
"example": 3,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"name": "limit",
|
|
"in": "query",
|
|
"description": "返回数量上限",
|
|
"required": false,
|
|
"example": 20,
|
|
"schema": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID",
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "ced7e5f0498645c6ec642dcf450b036f"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ListResult",
|
|
"description": "通用列表响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/region/{regionCode}": {
|
|
"get": {
|
|
"summary": "查询行政区划详情",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"行政区划"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "regionCode",
|
|
"in": "path",
|
|
"description": "行政区划编码",
|
|
"required": true,
|
|
"example": "510000",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID",
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": "ced7e5f0498645c6ec642dcf450b036f"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/genealogies/{genealogyId}/feeds": {
|
|
"get": {
|
|
"summary": "PC 家族圈动态列表",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ListResult",
|
|
"description": "通用列表响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"summary": "PC 发布家族圈动态",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FamilyFeedBody"
|
|
},
|
|
"example": {
|
|
"feedType": "text",
|
|
"feedContent": "今天上传一张老照片。",
|
|
"mediaOssIds": "2060000000000000001,2060000000000000002",
|
|
"sortOrder": 0,
|
|
"status": "0"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/genealogies/{genealogyId}/feeds/page": {
|
|
"get": {
|
|
"summary": "PC 家族圈动态分页",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "pageNum",
|
|
"in": "query",
|
|
"description": "页码,从1开始",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"default": 1
|
|
}
|
|
},
|
|
{
|
|
"name": "pageSize",
|
|
"in": "query",
|
|
"description": "每页条数",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"default": 10
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/PageResult",
|
|
"description": "通用分页响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/genealogies/{genealogyId}/feeds/{feedId}": {
|
|
"get": {
|
|
"summary": "PC 家族圈动态详情",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"summary": "PC 修改家族圈动态",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FamilyFeedBody"
|
|
},
|
|
"example": {
|
|
"feedType": "text",
|
|
"feedContent": "今天上传一张老照片。",
|
|
"mediaOssIds": "2060000000000000001,2060000000000000002",
|
|
"sortOrder": 0,
|
|
"status": "0"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"summary": "PC 删除家族圈动态",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/genealogies/{genealogyId}/feeds/{feedId}/likes": {
|
|
"post": {
|
|
"summary": "PC 点赞动态",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"summary": "PC 取消点赞动态",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/genealogies/{genealogyId}/feeds/{feedId}/comments": {
|
|
"get": {
|
|
"summary": "PC 动态评论列表",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ListResult",
|
|
"description": "通用列表响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"summary": "PC 评论动态",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FamilyFeedCommentBody"
|
|
},
|
|
"example": {
|
|
"parentCommentId": null,
|
|
"replyUserId": null,
|
|
"content": "这张照片很有年代感。"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/ObjectResult",
|
|
"description": "通用对象响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/genealogies/{genealogyId}/feeds/{feedId}/comments/page": {
|
|
"get": {
|
|
"summary": "PC 动态评论分页",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "pageNum",
|
|
"in": "query",
|
|
"description": "页码,从1开始",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"default": 1
|
|
}
|
|
},
|
|
{
|
|
"name": "pageSize",
|
|
"in": "query",
|
|
"description": "每页条数",
|
|
"required": false,
|
|
"schema": {
|
|
"type": "integer",
|
|
"default": 10
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/PageResult",
|
|
"description": "通用分页响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/genealogy/pc/genealogies/{genealogyId}/feeds/{feedId}/comments/{commentId}": {
|
|
"delete": {
|
|
"summary": "PC 删除动态评论",
|
|
"deprecated": false,
|
|
"description": "",
|
|
"tags": [
|
|
"家族圈"
|
|
],
|
|
"parameters": [
|
|
{
|
|
"name": "genealogyId",
|
|
"in": "path",
|
|
"description": "家谱ID",
|
|
"required": true,
|
|
"example": 900001001,
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "feedId",
|
|
"in": "path",
|
|
"description": "家族动态ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "commentId",
|
|
"in": "path",
|
|
"description": "评论ID",
|
|
"required": true,
|
|
"example": "",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
},
|
|
{
|
|
"name": "clientid",
|
|
"in": "header",
|
|
"description": "客户端ID,请求Header携带,用于区分APP/PC/小程序等终端",
|
|
"required": true,
|
|
"example": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"$ref": "#/components/responses/VoidResult",
|
|
"description": "通用成功响应"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"schemas": {
|
|
"PasswordRegisterBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"grantType",
|
|
"tenantId",
|
|
"phone",
|
|
"password"
|
|
],
|
|
"properties": {
|
|
"clientId": {
|
|
"description": "客户端ID,对应后台客户端管理中的APP/PC/小程序等终端",
|
|
"type": "string"
|
|
},
|
|
"grantType": {
|
|
"description": "授权类型,例如password、sms、wechat、apple",
|
|
"type": "string",
|
|
"example": "password"
|
|
},
|
|
"tenantId": {
|
|
"description": "租户ID,用于区分不同租户的数据和验证策略",
|
|
"type": "string",
|
|
"example": "000000"
|
|
},
|
|
"phone": {
|
|
"description": "手机号",
|
|
"type": "string",
|
|
"example": "13800000000"
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"description": "32 位 MD5",
|
|
"example": "e10adc3949ba59abbe56e057f20f883e"
|
|
},
|
|
"nickName": {
|
|
"description": "用户昵称",
|
|
"type": "string"
|
|
},
|
|
"registerSource": {
|
|
"description": "注册来源,例如APP、PC、H5、MINI_PROGRAM",
|
|
"type": "string"
|
|
},
|
|
"validToken": {
|
|
"description": "验证中心通过后返回的票据,用于注册/登录/换绑等二次校验",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"PasswordLoginBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"grantType",
|
|
"tenantId",
|
|
"phone",
|
|
"password"
|
|
],
|
|
"properties": {
|
|
"clientId": {
|
|
"description": "客户端ID,对应后台客户端管理中的APP/PC/小程序等终端",
|
|
"type": "string"
|
|
},
|
|
"grantType": {
|
|
"description": "授权类型,例如password、sms、wechat、apple",
|
|
"type": "string",
|
|
"example": "password"
|
|
},
|
|
"tenantId": {
|
|
"description": "租户ID,用于区分不同租户的数据和验证策略",
|
|
"type": "string",
|
|
"example": "000000"
|
|
},
|
|
"phone": {
|
|
"description": "手机号",
|
|
"type": "string",
|
|
"example": "13800000000"
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"description": "32 位 MD5",
|
|
"example": "e10adc3949ba59abbe56e057f20f883e"
|
|
},
|
|
"validToken": {
|
|
"description": "验证中心通过后返回的票据,用于注册/登录/换绑等二次校验",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"SmsLoginBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"grantType",
|
|
"tenantId",
|
|
"phone",
|
|
"smsCode"
|
|
],
|
|
"properties": {
|
|
"clientId": {
|
|
"description": "客户端ID,对应后台客户端管理中的APP/PC/小程序等终端",
|
|
"type": "string"
|
|
},
|
|
"grantType": {
|
|
"description": "授权类型,例如password、sms、wechat、apple",
|
|
"type": "string",
|
|
"example": "sms"
|
|
},
|
|
"tenantId": {
|
|
"description": "租户ID,用于区分不同租户的数据和验证策略",
|
|
"type": "string",
|
|
"example": "000000"
|
|
},
|
|
"phone": {
|
|
"description": "手机号",
|
|
"type": "string",
|
|
"example": "13800000000"
|
|
},
|
|
"smsCode": {
|
|
"description": "短信验证码",
|
|
"type": "string",
|
|
"example": "1234"
|
|
}
|
|
}
|
|
},
|
|
"SmsCodeBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"grantType",
|
|
"tenantId",
|
|
"sceneCode",
|
|
"phone",
|
|
"validToken"
|
|
],
|
|
"properties": {
|
|
"clientId": {
|
|
"description": "客户端ID,对应后台客户端管理中的APP/PC/小程序等终端",
|
|
"type": "string"
|
|
},
|
|
"grantType": {
|
|
"description": "授权类型,例如password、sms、wechat、apple",
|
|
"type": "string",
|
|
"example": "sms"
|
|
},
|
|
"tenantId": {
|
|
"description": "租户ID,用于区分不同租户的数据和验证策略",
|
|
"type": "string",
|
|
"example": "000000"
|
|
},
|
|
"sceneCode": {
|
|
"description": "验证场景编码,例如APP_LOGIN、PC_LOGIN、APP_REGISTER",
|
|
"type": "string",
|
|
"example": "WEB_H5_LOGIN"
|
|
},
|
|
"phone": {
|
|
"description": "手机号",
|
|
"type": "string",
|
|
"example": "13800000000"
|
|
},
|
|
"validToken": {
|
|
"description": "验证中心通过后返回的票据,用于注册/登录/换绑等二次校验",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"ProfileUpdateBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"nickName": {
|
|
"description": "用户昵称",
|
|
"type": "string"
|
|
},
|
|
"avatarOssId": {
|
|
"description": "头像文件OSS ID",
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"sex": {
|
|
"description": "性别,建议使用系统字典值",
|
|
"type": "string"
|
|
},
|
|
"birthday": {
|
|
"description": "生日,格式 yyyy-MM-dd",
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"provinceCode": {
|
|
"type": "string"
|
|
},
|
|
"cityCode": {
|
|
"type": "string"
|
|
},
|
|
"districtCode": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"PasswordChangeBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"oldPassword",
|
|
"newPassword"
|
|
],
|
|
"properties": {
|
|
"oldPassword": {
|
|
"type": "string",
|
|
"description": "32 位 MD5"
|
|
},
|
|
"newPassword": {
|
|
"type": "string",
|
|
"description": "32 位 MD5"
|
|
}
|
|
}
|
|
},
|
|
"PasswordResetBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"tenantId",
|
|
"phone",
|
|
"smsCode",
|
|
"newPassword"
|
|
],
|
|
"properties": {
|
|
"tenantId": {
|
|
"description": "租户ID,用于区分不同租户的数据和验证策略",
|
|
"type": "string",
|
|
"example": "000000"
|
|
},
|
|
"phone": {
|
|
"description": "手机号",
|
|
"type": "string"
|
|
},
|
|
"smsCode": {
|
|
"description": "短信验证码",
|
|
"type": "string"
|
|
},
|
|
"newPassword": {
|
|
"type": "string",
|
|
"description": "32 位 MD5"
|
|
},
|
|
"validToken": {
|
|
"description": "验证中心通过后返回的票据,用于注册/登录/换绑等二次校验",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"PhoneChangeBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"newPhone",
|
|
"smsCode"
|
|
],
|
|
"properties": {
|
|
"newPhone": {
|
|
"type": "string"
|
|
},
|
|
"smsCode": {
|
|
"description": "短信验证码",
|
|
"type": "string"
|
|
},
|
|
"validToken": {
|
|
"description": "验证中心通过后返回的票据,用于注册/登录/换绑等二次校验",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"AccountDeactivateBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"password"
|
|
],
|
|
"properties": {
|
|
"password": {
|
|
"type": "string",
|
|
"description": "32 位 MD5"
|
|
},
|
|
"reason": {
|
|
"description": "操作原因或说明",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"ResumableInitBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"fileName",
|
|
"fileSize",
|
|
"fileMd5",
|
|
"chunkSize",
|
|
"totalChunks"
|
|
],
|
|
"properties": {
|
|
"fileName": {
|
|
"description": "原始文件名",
|
|
"type": "string"
|
|
},
|
|
"fileSize": {
|
|
"description": "文件大小,单位字节",
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"fileMd5": {
|
|
"description": "完整文件MD5,用于秒传和完整性校验",
|
|
"type": "string"
|
|
},
|
|
"contentType": {
|
|
"description": "文件MIME类型,例如 image/jpeg、video/mp4",
|
|
"type": "string"
|
|
},
|
|
"chunkSize": {
|
|
"description": "单个分片大小,单位字节",
|
|
"type": "integer",
|
|
"example": 4194304
|
|
},
|
|
"totalChunks": {
|
|
"description": "总分片数",
|
|
"type": "integer"
|
|
},
|
|
"bizType": {
|
|
"description": "业务类型,例如avatar、cover、feed_image",
|
|
"type": "string"
|
|
},
|
|
"usageScene": {
|
|
"description": "文件使用场景,便于后续引用统计和清理",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"ResumableCompleteBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"uploadId",
|
|
"fileMd5",
|
|
"fileSize"
|
|
],
|
|
"properties": {
|
|
"uploadId": {
|
|
"description": "分片上传任务ID",
|
|
"type": "string"
|
|
},
|
|
"fileMd5": {
|
|
"description": "完整文件MD5,用于秒传和完整性校验",
|
|
"type": "string"
|
|
},
|
|
"fileSize": {
|
|
"description": "文件大小,单位字节",
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
},
|
|
"FileReferenceBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"bizType",
|
|
"bizTable",
|
|
"bizId",
|
|
"bizField"
|
|
],
|
|
"properties": {
|
|
"bizType": {
|
|
"description": "业务类型,例如avatar、cover、feed_image",
|
|
"type": "string",
|
|
"example": "family_feed"
|
|
},
|
|
"bizName": {
|
|
"description": "业务名称,用于后台展示文件引用来源",
|
|
"type": "string",
|
|
"example": "家族圈动态"
|
|
},
|
|
"bizTable": {
|
|
"description": "业务表名,用于文件引用绑定",
|
|
"type": "string",
|
|
"example": "gen_family_feed"
|
|
},
|
|
"bizId": {
|
|
"description": "业务数据ID,用于文件引用绑定",
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"bizField": {
|
|
"description": "业务字段名,例如avatar_oss_id、cover_oss_id",
|
|
"type": "string",
|
|
"example": "media_ids"
|
|
},
|
|
"ossId": {
|
|
"description": "OSS文件ID,表单内部使用,用户侧应通过上传组件获取",
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"ossIds": {
|
|
"type": "string",
|
|
"example": "2060001,2060002"
|
|
},
|
|
"usageScene": {
|
|
"description": "文件使用场景,便于后续引用统计和清理",
|
|
"type": "string"
|
|
},
|
|
"usageName": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"FamilyFeedBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"feedContent"
|
|
],
|
|
"properties": {
|
|
"feedType": {
|
|
"description": "动态类型,未传时默认为 text",
|
|
"type": "string",
|
|
"example": "text"
|
|
},
|
|
"feedContent": {
|
|
"description": "动态内容,不能为空",
|
|
"type": "string",
|
|
"example": "今天上传一张老照片。"
|
|
},
|
|
"mediaOssIds": {
|
|
"description": "媒体文件 OSS ID 列表,多个 ID 使用英文逗号分隔",
|
|
"type": "string",
|
|
"example": "2060000000000000001,2060000000000000002"
|
|
},
|
|
"sortOrder": {
|
|
"description": "排序值,未传时默认为 0",
|
|
"type": "integer",
|
|
"format": "int64",
|
|
"example": 0
|
|
},
|
|
"status": {
|
|
"description": "动态状态,未传时默认为正常状态",
|
|
"type": "string",
|
|
"example": "0"
|
|
}
|
|
}
|
|
},
|
|
"FamilyFeedCommentBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"content"
|
|
],
|
|
"properties": {
|
|
"parentCommentId": {
|
|
"type": "integer",
|
|
"format": "int64",
|
|
"nullable": true
|
|
},
|
|
"replyUserId": {
|
|
"type": "integer",
|
|
"format": "int64",
|
|
"nullable": true
|
|
},
|
|
"content": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"VerificationChallengeBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"sceneCode"
|
|
],
|
|
"properties": {
|
|
"tenantId": {
|
|
"type": "string",
|
|
"description": "租户 ID"
|
|
},
|
|
"clientId": {
|
|
"type": "string",
|
|
"description": "客户端 ID"
|
|
},
|
|
"sceneCode": {
|
|
"type": "string",
|
|
"description": "验证场景编码,如 ADMIN_LOGIN/APP_LOGIN/APP_REGISTER"
|
|
},
|
|
"subject": {
|
|
"type": "string",
|
|
"description": "验证主体,如手机号/用户名/IP"
|
|
}
|
|
},
|
|
"example": {
|
|
"tenantId": "000000",
|
|
"clientId": "ced7e5f0498645c6ec642dcf450b036f",
|
|
"sceneCode": "WEB_H5_LOGIN",
|
|
"subject": "13800000000"
|
|
}
|
|
},
|
|
"VerificationCheckBody": {
|
|
"type": "object",
|
|
"required": [
|
|
"sceneCode"
|
|
],
|
|
"properties": {
|
|
"tenantId": {
|
|
"description": "租户ID,用于区分不同租户的数据和验证策略",
|
|
"type": "string"
|
|
},
|
|
"clientId": {
|
|
"description": "客户端ID,对应后台客户端管理中的APP/PC/小程序等终端",
|
|
"type": "string"
|
|
},
|
|
"sceneCode": {
|
|
"description": "验证场景编码,例如APP_LOGIN、PC_LOGIN、APP_REGISTER",
|
|
"type": "string"
|
|
},
|
|
"subject": {
|
|
"description": "验证主体,通常为手机号、用户ID或登录账号",
|
|
"type": "string"
|
|
},
|
|
"challengeId": {
|
|
"description": "验证挑战ID,由验证挑战接口返回",
|
|
"type": "string"
|
|
},
|
|
"providerCode": {
|
|
"type": "string",
|
|
"description": "验证服务,tianai 或 ruoyi_image"
|
|
},
|
|
"captchaType": {
|
|
"type": "string",
|
|
"description": "SLIDER/ROTATE/CONCAT/WORD_IMAGE_CLICK/math/char"
|
|
},
|
|
"payload": {
|
|
"description": "验证结果载荷。天爱行为验证码提交 payload.track;系统图形验证码提交 payload.uuid 和 payload.code",
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/TianaiVerificationPayload"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/SystemImageVerificationPayload"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"TianaiVerificationPayload": {
|
|
"type": "object",
|
|
"required": [
|
|
"track"
|
|
],
|
|
"properties": {
|
|
"track": {
|
|
"$ref": "#/components/schemas/TianaiCaptchaTrack"
|
|
}
|
|
}
|
|
},
|
|
"TianaiCaptchaTrack": {
|
|
"type": "object",
|
|
"required": [
|
|
"bgImageWidth",
|
|
"bgImageHeight",
|
|
"startTime",
|
|
"stopTime",
|
|
"trackList"
|
|
],
|
|
"properties": {
|
|
"bgImageWidth": {
|
|
"type": "integer",
|
|
"description": "验证码背景图片在前端实际显示的宽度,单位像素"
|
|
},
|
|
"bgImageHeight": {
|
|
"type": "integer",
|
|
"description": "验证码背景图片在前端实际显示的高度,单位像素"
|
|
},
|
|
"templateImageWidth": {
|
|
"type": "integer",
|
|
"description": "滑块或旋转模板图片在前端实际显示的宽度,单位像素"
|
|
},
|
|
"templateImageHeight": {
|
|
"type": "integer",
|
|
"description": "滑块或旋转模板图片在前端实际显示的高度,单位像素"
|
|
},
|
|
"startTime": {
|
|
"type": "integer",
|
|
"format": "int64",
|
|
"description": "用户开始操作的时间戳,单位毫秒"
|
|
},
|
|
"stopTime": {
|
|
"type": "integer",
|
|
"format": "int64",
|
|
"description": "用户结束操作的时间戳,单位毫秒"
|
|
},
|
|
"left": {
|
|
"type": "integer",
|
|
"description": "滑块最终水平偏移量,单位像素;由天爱前端控件生成"
|
|
},
|
|
"top": {
|
|
"type": "integer",
|
|
"description": "点选或模板最终垂直偏移量,单位像素;由天爱前端控件生成"
|
|
},
|
|
"trackList": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"description": "用户操作轨迹,不能为空,必须直接使用天爱前端控件产生的数据",
|
|
"items": {
|
|
"$ref": "#/components/schemas/TianaiCaptchaTrackPoint"
|
|
}
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"description": "不同验证码类型附带的扩展数据,由天爱前端控件原样提交",
|
|
"properties": {},
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"TianaiCaptchaTrackPoint": {
|
|
"type": "object",
|
|
"required": [
|
|
"x",
|
|
"y",
|
|
"t",
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"x": {
|
|
"type": "number",
|
|
"format": "float",
|
|
"description": "当前轨迹点的水平坐标"
|
|
},
|
|
"y": {
|
|
"type": "number",
|
|
"format": "float",
|
|
"description": "当前轨迹点的垂直坐标"
|
|
},
|
|
"t": {
|
|
"type": "number",
|
|
"format": "float",
|
|
"description": "当前轨迹点相对操作开始时的时间,单位毫秒"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"description": "轨迹事件类型,例如 down、move、up"
|
|
}
|
|
}
|
|
},
|
|
"SystemImageVerificationPayload": {
|
|
"type": "object",
|
|
"required": [
|
|
"uuid",
|
|
"code"
|
|
],
|
|
"properties": {
|
|
"uuid": {
|
|
"type": "string",
|
|
"description": "系统图形验证码接口返回的唯一标识"
|
|
},
|
|
"code": {
|
|
"type": "string",
|
|
"description": "用户填写的图形验证码答案"
|
|
}
|
|
}
|
|
},
|
|
"RVoid": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"type": "null"
|
|
}
|
|
}
|
|
},
|
|
"RObject": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {}
|
|
}
|
|
}
|
|
},
|
|
"RList": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"PageResult": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"rows": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {}
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"example": 0
|
|
}
|
|
}
|
|
},
|
|
"RLogin": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"$ref": "#/components/schemas/LoginVo"
|
|
}
|
|
}
|
|
},
|
|
"LoginVo": {
|
|
"type": "object",
|
|
"properties": {
|
|
"token": {
|
|
"type": "string"
|
|
},
|
|
"accessToken": {
|
|
"type": "string"
|
|
},
|
|
"tokenValue": {
|
|
"type": "string"
|
|
},
|
|
"userId": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"tenantId": {
|
|
"type": "string"
|
|
},
|
|
"clientId": {
|
|
"type": "string"
|
|
},
|
|
"clientKey": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"RFileUpload": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"$ref": "#/components/schemas/FileUploadVo"
|
|
}
|
|
}
|
|
},
|
|
"FileUploadVo": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ossId": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"thumbnailUrl": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"fileName": {
|
|
"type": "string"
|
|
},
|
|
"originalName": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"RVoid1": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"type": "null"
|
|
}
|
|
}
|
|
},
|
|
"RObject2": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {}
|
|
}
|
|
}
|
|
},
|
|
"RList3": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"PageResult4": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"rows": {
|
|
"description": "分页数据列表",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {}
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"example": 0
|
|
}
|
|
}
|
|
},
|
|
"RLogin5": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/LoginVo6"
|
|
}
|
|
}
|
|
},
|
|
"LoginVo6": {
|
|
"type": "object",
|
|
"properties": {
|
|
"token": {
|
|
"type": "string"
|
|
},
|
|
"accessToken": {
|
|
"type": "string"
|
|
},
|
|
"tokenValue": {
|
|
"type": "string"
|
|
},
|
|
"userId": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"tenantId": {
|
|
"description": "租户ID,用于区分不同租户的数据和验证策略",
|
|
"type": "string"
|
|
},
|
|
"clientId": {
|
|
"description": "客户端ID,对应后台客户端管理中的APP/PC/小程序等终端",
|
|
"type": "string"
|
|
},
|
|
"clientKey": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"RFileUpload7": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/FileUploadVo8"
|
|
}
|
|
}
|
|
},
|
|
"FileUploadVo8": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ossId": {
|
|
"description": "OSS文件ID,表单内部使用,用户侧应通过上传组件获取",
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"thumbnailUrl": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"fileName": {
|
|
"description": "原始文件名",
|
|
"type": "string"
|
|
},
|
|
"originalName": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"RVerificationRequire": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/VerificationRequireVo"
|
|
}
|
|
}
|
|
},
|
|
"VerificationRequireVo": {
|
|
"type": "object",
|
|
"properties": {
|
|
"required": {
|
|
"description": "当前场景是否需要验证",
|
|
"type": "boolean"
|
|
},
|
|
"providerCode": {
|
|
"description": "第三方服务商编码",
|
|
"type": "string"
|
|
},
|
|
"captchaType": {
|
|
"description": "验证码类型,例如SLIDER、ROTATE、CONCAT、WORD_IMAGE_CLICK",
|
|
"type": "string"
|
|
},
|
|
"sceneCode": {
|
|
"description": "验证场景编码,例如APP_LOGIN、PC_LOGIN、APP_REGISTER",
|
|
"type": "string"
|
|
},
|
|
"ttlSeconds": {
|
|
"description": "验证或票据有效秒数",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"example": {
|
|
"required": true,
|
|
"providerCode": "tianai",
|
|
"captchaType": "SLIDER",
|
|
"sceneCode": "APP_LOGIN",
|
|
"ttlSeconds": 300
|
|
}
|
|
},
|
|
"RVerificationChallenge": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/VerificationChallengeVo"
|
|
}
|
|
}
|
|
},
|
|
"VerificationChallengeVo": {
|
|
"type": "object",
|
|
"properties": {
|
|
"required": {
|
|
"description": "当前场景是否需要验证",
|
|
"type": "boolean"
|
|
},
|
|
"providerCode": {
|
|
"description": "第三方服务商编码",
|
|
"type": "string"
|
|
},
|
|
"captchaType": {
|
|
"description": "验证码类型,例如SLIDER、ROTATE、CONCAT、WORD_IMAGE_CLICK",
|
|
"type": "string"
|
|
},
|
|
"challengeId": {
|
|
"description": "验证挑战ID,由验证挑战接口返回",
|
|
"type": "string"
|
|
},
|
|
"uuid": {
|
|
"type": "string",
|
|
"description": "系统图形验证码 uuid"
|
|
},
|
|
"img": {
|
|
"type": "string",
|
|
"description": "系统图形验证码 base64 图片"
|
|
},
|
|
"payload": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"description": "天爱验证码数据,包括背景图、模板图、尺寸等",
|
|
"properties": {}
|
|
},
|
|
"expireSeconds": {
|
|
"description": "验证挑战过期秒数",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"example": {
|
|
"required": true,
|
|
"providerCode": "tianai",
|
|
"captchaType": "SLIDER",
|
|
"challengeId": "CAPTCHA_CHALLENGE_ID",
|
|
"payload": {
|
|
"backgroundImage": "data:image/png;base64,...",
|
|
"templateImage": "data:image/png;base64,...",
|
|
"backgroundImageWidth": 340,
|
|
"backgroundImageHeight": 180
|
|
},
|
|
"expireSeconds": 300
|
|
}
|
|
},
|
|
"RVerificationCheck": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/VerificationCheckVo"
|
|
}
|
|
}
|
|
},
|
|
"VerificationCheckVo": {
|
|
"type": "object",
|
|
"properties": {
|
|
"passed": {
|
|
"description": "验证是否通过",
|
|
"type": "boolean"
|
|
},
|
|
"validToken": {
|
|
"type": "string",
|
|
"description": "验证通过后交给业务接口的票据"
|
|
},
|
|
"expireSeconds": {
|
|
"description": "验证挑战过期秒数",
|
|
"type": "integer"
|
|
},
|
|
"message": {
|
|
"description": "返回消息",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"example": {
|
|
"passed": true,
|
|
"validToken": "captcha-ticket",
|
|
"expireSeconds": 300,
|
|
"message": "验证通过"
|
|
}
|
|
},
|
|
"RLegacyCaptcha": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/LegacyCaptchaVo"
|
|
}
|
|
}
|
|
},
|
|
"LegacyCaptchaVo": {
|
|
"type": "object",
|
|
"properties": {
|
|
"captchaEnabled": {
|
|
"type": "boolean"
|
|
},
|
|
"uuid": {
|
|
"description": "系统图形验证码UUID",
|
|
"type": "string"
|
|
},
|
|
"img": {
|
|
"type": "string",
|
|
"description": "base64 图形验证码"
|
|
}
|
|
},
|
|
"example": {
|
|
"captchaEnabled": true,
|
|
"uuid": "captcha-uuid",
|
|
"img": "data:image/png;base64,..."
|
|
}
|
|
},
|
|
"RVerificationRequire9": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/VerificationRequireVo10"
|
|
}
|
|
}
|
|
},
|
|
"VerificationRequireVo10": {
|
|
"type": "object",
|
|
"properties": {
|
|
"required": {
|
|
"description": "当前场景是否需要验证",
|
|
"type": "boolean"
|
|
},
|
|
"providerCode": {
|
|
"description": "第三方服务商编码",
|
|
"type": "string"
|
|
},
|
|
"captchaType": {
|
|
"description": "验证码类型,例如SLIDER、ROTATE、CONCAT、WORD_IMAGE_CLICK",
|
|
"type": "string"
|
|
},
|
|
"sceneCode": {
|
|
"description": "验证场景编码,例如APP_LOGIN、PC_LOGIN、APP_REGISTER",
|
|
"type": "string"
|
|
},
|
|
"ttlSeconds": {
|
|
"description": "验证或票据有效秒数",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"example": {
|
|
"required": true,
|
|
"providerCode": "tianai",
|
|
"captchaType": "SLIDER",
|
|
"sceneCode": "WEB_H5_LOGIN",
|
|
"ttlSeconds": 300
|
|
}
|
|
},
|
|
"RVerificationChallenge11": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/VerificationChallengeVo12"
|
|
}
|
|
}
|
|
},
|
|
"VerificationChallengeVo12": {
|
|
"type": "object",
|
|
"properties": {
|
|
"required": {
|
|
"description": "当前场景是否需要验证",
|
|
"type": "boolean"
|
|
},
|
|
"providerCode": {
|
|
"description": "第三方服务商编码",
|
|
"type": "string"
|
|
},
|
|
"captchaType": {
|
|
"description": "验证码类型,例如SLIDER、ROTATE、CONCAT、WORD_IMAGE_CLICK",
|
|
"type": "string"
|
|
},
|
|
"challengeId": {
|
|
"description": "验证挑战ID,由验证挑战接口返回",
|
|
"type": "string"
|
|
},
|
|
"uuid": {
|
|
"type": "string",
|
|
"description": "系统图形验证码 uuid"
|
|
},
|
|
"img": {
|
|
"type": "string",
|
|
"description": "系统图形验证码 base64 图片"
|
|
},
|
|
"payload": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"description": "天爱验证码数据,包括背景图、模板图、尺寸等",
|
|
"properties": {}
|
|
},
|
|
"expireSeconds": {
|
|
"description": "验证挑战过期秒数",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"example": {
|
|
"required": true,
|
|
"providerCode": "tianai",
|
|
"captchaType": "SLIDER",
|
|
"challengeId": "CAPTCHA_CHALLENGE_ID",
|
|
"payload": {
|
|
"backgroundImage": "data:image/png;base64,...",
|
|
"templateImage": "data:image/png;base64,...",
|
|
"backgroundImageWidth": 340,
|
|
"backgroundImageHeight": 180
|
|
},
|
|
"expireSeconds": 300
|
|
}
|
|
},
|
|
"RVerificationCheck13": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/VerificationCheckVo14"
|
|
}
|
|
}
|
|
},
|
|
"VerificationCheckVo14": {
|
|
"type": "object",
|
|
"properties": {
|
|
"passed": {
|
|
"description": "验证是否通过",
|
|
"type": "boolean"
|
|
},
|
|
"validToken": {
|
|
"type": "string",
|
|
"description": "验证通过后交给业务接口的票据"
|
|
},
|
|
"expireSeconds": {
|
|
"description": "验证挑战过期秒数",
|
|
"type": "integer"
|
|
},
|
|
"message": {
|
|
"description": "返回消息",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"example": {
|
|
"passed": true,
|
|
"validToken": "captcha-ticket",
|
|
"expireSeconds": 300,
|
|
"message": "验证通过"
|
|
}
|
|
},
|
|
"RLegacyCaptcha15": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"description": "系统图形验证码或响应状态码",
|
|
"type": "integer",
|
|
"example": 200
|
|
},
|
|
"msg": {
|
|
"description": "响应消息",
|
|
"type": "string",
|
|
"example": "操作成功"
|
|
},
|
|
"data": {
|
|
"description": "响应数据主体",
|
|
"$ref": "#/components/schemas/LegacyCaptchaVo16"
|
|
}
|
|
}
|
|
},
|
|
"LegacyCaptchaVo16": {
|
|
"type": "object",
|
|
"properties": {
|
|
"captchaEnabled": {
|
|
"type": "boolean"
|
|
},
|
|
"uuid": {
|
|
"description": "系统图形验证码UUID",
|
|
"type": "string"
|
|
},
|
|
"img": {
|
|
"type": "string",
|
|
"description": "base64 图形验证码"
|
|
}
|
|
},
|
|
"example": {
|
|
"captchaEnabled": true,
|
|
"uuid": "captcha-uuid",
|
|
"img": "data:image/png;base64,..."
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"VoidResult": {
|
|
"description": "通用成功响应",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RVoid1"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"ObjectResult": {
|
|
"description": "通用对象响应",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RObject2"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"ListResult": {
|
|
"description": "通用列表响应",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RList3"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"PageResult": {
|
|
"description": "通用分页响应",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PageResult4"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"LoginResult": {
|
|
"description": "登录结果",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RLogin5"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"FileUploadResult": {
|
|
"description": "文件上传结果",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RFileUpload7"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"VerificationRequireResult": {
|
|
"description": "验证需求查询结果",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RVerificationRequire9"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"VerificationChallengeResult": {
|
|
"description": "验证挑战生成结果",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RVerificationChallenge11"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"VerificationCheckResult": {
|
|
"description": "验证校验结果",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RVerificationCheck13"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"LegacyCaptchaResult": {
|
|
"description": "兼容旧图形验证码结果",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RLegacyCaptcha15"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"securitySchemes": {
|
|
"SaToken1": {
|
|
"type": "apiKey",
|
|
"in": "header",
|
|
"name": "Authorization",
|
|
"description": "登录后返回的 token。若本地配置使用 sa-token 名称,请按项目实际 token-name 调整。"
|
|
}
|
|
}
|
|
},
|
|
"servers": [],
|
|
"security": [
|
|
{
|
|
"SaToken1": []
|
|
}
|
|
]
|
|
} |