Files
tyapi-server/docs/swagger.yaml

6210 lines
153 KiB
YAML
Raw Normal View History

2025-09-01 18:29:59 +08:00
basePath: /
definitions:
commands.AddPackageItemCommand:
properties:
product_id:
type: string
required:
- product_id
type: object
commands.ApiCallCommand:
properties:
data:
type: string
options:
$ref: '#/definitions/commands.ApiCallOptions'
required:
- data
type: object
commands.ApiCallOptions:
properties:
is_debug:
description: 是否为调试调用
type: boolean
json:
description: 是否返回JSON格式
type: boolean
type: object
commands.ApplyContractCommand:
properties:
user_id:
type: string
required:
- user_id
type: object
commands.BatchUpdateSubscriptionPricesCommand:
properties:
discount:
maximum: 10
minimum: 0.1
type: number
scope:
enum:
- undiscounted
- all
type: string
user_id:
type: string
required:
- discount
- scope
- user_id
type: object
commands.ChangePasswordCommand:
description: 修改用户密码请求参数
properties:
code:
example: "123456"
type: string
confirm_new_password:
example: NewPassword123
type: string
new_password:
example: NewPassword123
type: string
old_password:
example: OldPassword123
maxLength: 128
minLength: 6
type: string
required:
- code
- confirm_new_password
- new_password
- old_password
type: object
commands.CreateAlipayRechargeCommand:
properties:
amount:
description: 充值金额
type: string
platform:
description: 支付平台app/h5/pc
enum:
- app
- h5
- pc
type: string
required:
- amount
- platform
type: object
commands.CreateArticleCommand:
properties:
category_id:
type: string
content:
type: string
cover_image:
type: string
is_featured:
type: boolean
summary:
type: string
tag_ids:
items:
type: string
type: array
title:
type: string
required:
- content
- title
type: object
commands.CreateCategoryCommand:
properties:
code:
type: string
description:
maxLength: 200
type: string
is_enabled:
type: boolean
is_visible:
type: boolean
name:
maxLength: 50
minLength: 2
type: string
sort:
maximum: 9999
minimum: 0
type: integer
required:
- code
- name
type: object
commands.CreateDocumentationCommand:
properties:
basic_info:
type: string
error_codes:
type: string
product_id:
type: string
request_method:
type: string
request_params:
type: string
request_url:
type: string
response_example:
type: string
response_fields:
type: string
required:
- basic_info
- product_id
- request_method
- request_params
- request_url
type: object
commands.CreateProductCommand:
properties:
category_id:
type: string
code:
type: string
content:
maxLength: 5000
type: string
description:
maxLength: 500
type: string
is_enabled:
type: boolean
is_package:
type: boolean
is_visible:
type: boolean
name:
maxLength: 100
minLength: 2
type: string
price:
minimum: 0
type: number
seo_description:
maxLength: 200
type: string
seo_keywords:
maxLength: 200
type: string
seo_title:
description: SEO信息
maxLength: 100
type: string
required:
- category_id
- code
- name
type: object
commands.DecryptCommand:
properties:
encrypted_data:
type: string
secret_key:
type: string
required:
- encrypted_data
- secret_key
type: object
commands.EncryptCommand:
properties:
data:
additionalProperties: true
type: object
secret_key:
type: string
required:
- data
- secret_key
type: object
commands.LoginWithPasswordCommand:
description: 使用密码进行用户登录请求参数
properties:
password:
example: Password123
maxLength: 128
minLength: 6
type: string
phone:
example: "13800138000"
type: string
required:
- password
- phone
type: object
commands.LoginWithSMSCommand:
description: 使用短信验证码进行用户登录请求参数
properties:
code:
example: "123456"
type: string
phone:
example: "13800138000"
type: string
required:
- code
- phone
type: object
commands.PackageItemData:
properties:
product_id:
type: string
sort_order:
minimum: 0
type: integer
required:
- product_id
- sort_order
type: object
commands.RegisterUserCommand:
description: 用户注册请求参数
properties:
code:
example: "123456"
type: string
confirm_password:
example: Password123
type: string
password:
example: Password123
type: string
phone:
example: "13800138000"
type: string
required:
- code
- confirm_password
- password
- phone
type: object
commands.ReorderPackageItemsCommand:
properties:
item_ids:
items:
type: string
type: array
required:
- item_ids
type: object
commands.ResetPasswordCommand:
description: 重置用户密码请求参数(忘记密码时使用)
properties:
code:
example: "123456"
type: string
confirm_new_password:
example: NewPassword123
type: string
new_password:
example: NewPassword123
type: string
phone:
example: "13800138000"
type: string
required:
- code
- confirm_new_password
- new_password
- phone
type: object
commands.SendCodeCommand:
description: 发送短信验证码请求参数
properties:
phone:
example: "13800138000"
type: string
scene:
enum:
- register
- login
- change_password
- reset_password
- bind
- unbind
- certification
example: register
type: string
required:
- phone
- scene
type: object
commands.SetFeaturedCommand:
properties:
is_featured:
type: boolean
required:
- is_featured
type: object
commands.SubmitEnterpriseInfoCommand:
properties:
company_name:
maxLength: 100
minLength: 2
type: string
enterprise_address:
type: string
legal_person_id:
type: string
legal_person_name:
maxLength: 20
minLength: 2
type: string
legal_person_phone:
type: string
unified_social_code:
type: string
verification_code:
type: string
required:
- company_name
- enterprise_address
- legal_person_id
- legal_person_name
- legal_person_phone
- unified_social_code
- verification_code
type: object
commands.UpdateArticleCommand:
properties:
category_id:
type: string
content:
type: string
cover_image:
type: string
is_featured:
type: boolean
summary:
type: string
tag_ids:
items:
type: string
type: array
title:
type: string
type: object
commands.UpdateCategoryCommand:
properties:
code:
type: string
description:
maxLength: 200
type: string
is_enabled:
type: boolean
is_visible:
type: boolean
name:
maxLength: 50
minLength: 2
type: string
sort:
maximum: 9999
minimum: 0
type: integer
required:
- code
- name
type: object
commands.UpdatePackageItemCommand:
properties:
sort_order:
minimum: 0
type: integer
required:
- sort_order
type: object
commands.UpdatePackageItemsCommand:
properties:
items:
items:
$ref: '#/definitions/commands.PackageItemData'
type: array
required:
- items
type: object
commands.UpdateProductCommand:
properties:
category_id:
type: string
code:
type: string
content:
maxLength: 5000
type: string
description:
maxLength: 500
type: string
is_enabled:
type: boolean
is_package:
type: boolean
is_visible:
type: boolean
name:
maxLength: 100
minLength: 2
type: string
price:
minimum: 0
type: number
seo_description:
maxLength: 200
type: string
seo_keywords:
maxLength: 200
type: string
seo_title:
description: SEO信息
maxLength: 100
type: string
required:
- category_id
- code
- name
type: object
commands.UpdateSubscriptionPriceCommand:
properties:
price:
minimum: 0
type: number
type: object
dto.ApiCallListResponse:
properties:
items:
items:
$ref: '#/definitions/dto.ApiCallRecordResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
dto.ApiCallRecordResponse:
properties:
access_id:
type: string
client_ip:
type: string
company_name:
type: string
cost:
type: string
created_at:
type: string
end_at:
type: string
error_msg:
type: string
error_type:
type: string
id:
type: string
product_id:
type: string
product_name:
type: string
start_at:
type: string
status:
type: string
transaction_id:
type: string
translated_error_msg:
type: string
updated_at:
type: string
user:
$ref: '#/definitions/dto.UserSimpleResponse'
user_id:
type: string
type: object
dto.ApiCallResponse:
properties:
code:
type: integer
data:
type: string
message:
type: string
transaction_id:
type: string
type: object
dto.AvailableAmountResponse:
properties:
available_amount:
description: 可开票金额
type: number
pending_applications:
description: 待处理申请金额
type: number
total_gifted:
description: 总赠送金额
type: number
total_invoiced:
description: 已开票金额
type: number
total_recharged:
description: 总充值金额
type: number
type: object
dto.EncryptResponse:
properties:
encrypted_data:
type: string
type: object
dto.InvoiceApplicationResponse:
properties:
amount:
type: number
created_at:
type: string
id:
type: string
invoice_info:
$ref: '#/definitions/value_objects.InvoiceInfo'
invoice_type:
$ref: '#/definitions/value_objects.InvoiceType'
status:
$ref: '#/definitions/entities.ApplicationStatus'
user_id:
type: string
type: object
dto.InvoiceInfoResponse:
properties:
bank_account:
description: 用户可编辑
type: string
bank_name:
description: 用户可编辑
type: string
company_address:
description: 用户可编辑
type: string
company_name:
description: 从企业认证信息获取,只读
type: string
company_name_read_only:
description: 字段权限标识
type: boolean
company_phone:
description: 用户可编辑
type: string
is_complete:
type: boolean
missing_fields:
items:
type: string
type: array
receiving_email:
description: 用户可编辑
type: string
taxpayer_id:
description: 从企业认证信息获取,只读
type: string
taxpayer_id_read_only:
description: 纳税人识别号是否只读
type: boolean
type: object
dto.InvoiceRecordResponse:
properties:
amount:
type: number
bank_account:
description: 银行账号
type: string
bank_name:
description: 开户银行
type: string
company_address:
description: 企业地址
type: string
company_name:
description: 开票信息(快照数据)
type: string
company_phone:
description: 企业电话
type: string
created_at:
type: string
file_name:
description: 文件信息
type: string
file_size:
type: integer
file_url:
type: string
id:
type: string
invoice_type:
$ref: '#/definitions/value_objects.InvoiceType'
processed_at:
description: 时间信息
type: string
receiving_email:
description: 接收邮箱
type: string
reject_reason:
description: 拒绝原因
type: string
status:
$ref: '#/definitions/entities.ApplicationStatus'
taxpayer_id:
description: 纳税人识别号
type: string
user_id:
type: string
type: object
dto.InvoiceRecordsResponse:
properties:
page:
type: integer
page_size:
type: integer
records:
items:
$ref: '#/definitions/dto.InvoiceRecordResponse'
type: array
total:
type: integer
total_pages:
type: integer
type: object
dto.PendingApplicationResponse:
properties:
amount:
type: number
bank_account:
type: string
bank_name:
type: string
company_address:
type: string
company_name:
type: string
company_phone:
type: string
created_at:
type: string
file_name:
type: string
file_size:
type: integer
file_url:
type: string
id:
type: string
invoice_type:
$ref: '#/definitions/value_objects.InvoiceType'
processed_at:
type: string
receiving_email:
type: string
reject_reason:
type: string
status:
$ref: '#/definitions/entities.ApplicationStatus'
taxpayer_id:
type: string
user_id:
type: string
type: object
dto.PendingApplicationsResponse:
properties:
applications:
items:
$ref: '#/definitions/dto.PendingApplicationResponse'
type: array
page:
type: integer
page_size:
type: integer
total:
type: integer
total_pages:
type: integer
type: object
dto.UserSimpleResponse:
properties:
company_name:
type: string
id:
type: string
phone:
type: string
type: object
entities.ApplicationStatus:
enum:
- pending
- completed
- rejected
type: string
x-enum-comments:
ApplicationStatusCompleted: 已完成(已上传发票)
ApplicationStatusPending: 待处理
ApplicationStatusRejected: 已拒绝
x-enum-descriptions:
- 待处理
- 已完成(已上传发票)
- 已拒绝
x-enum-varnames:
- ApplicationStatusPending
- ApplicationStatusCompleted
- ApplicationStatusRejected
enums.CertificationStatus:
enum:
- pending
- info_submitted
- enterprise_verified
- contract_applied
- contract_signed
- completed
- info_rejected
- contract_rejected
- contract_expired
type: string
x-enum-comments:
StatusCompleted: 认证完成
StatusContractApplied: 已申请签署合同
StatusContractExpired: 合同签署超时
StatusContractRejected: 合同被拒签
StatusContractSigned: 已签署合同
StatusEnterpriseVerified: 已企业认证
StatusInfoRejected: 企业信息被拒绝
StatusInfoSubmitted: 已提交企业信息
StatusPending: 待认证
x-enum-descriptions:
- 待认证
- 已提交企业信息
- 已企业认证
- 已申请签署合同
- 已签署合同
- 认证完成
- 企业信息被拒绝
- 合同被拒签
- 合同签署超时
x-enum-varnames:
- StatusPending
- StatusInfoSubmitted
- StatusEnterpriseVerified
- StatusContractApplied
- StatusContractSigned
- StatusCompleted
- StatusInfoRejected
- StatusContractRejected
- StatusContractExpired
enums.FailureReason:
enum:
- enterprise_not_exists
- enterprise_info_mismatch
- enterprise_status_abnormal
- legal_person_mismatch
- esign_verification_failed
- invalid_document
- contract_rejected_by_user
- contract_expired
- sign_process_failed
- contract_gen_failed
- esign_flow_error
- system_error
- network_error
- timeout
- unknown_error
type: string
x-enum-comments:
FailureReasonContractExpired: 合同签署超时
FailureReasonContractGenFailed: 合同生成失败
FailureReasonContractRejectedByUser: 用户拒绝签署
FailureReasonEnterpriseInfoMismatch: 企业信息不匹配
FailureReasonEnterpriseNotExists: 企业不存在
FailureReasonEnterpriseStatusAbnormal: 企业状态异常
FailureReasonEsignFlowError: e签宝流程错误
FailureReasonEsignVerificationFailed: e签宝验证失败
FailureReasonInvalidDocument: 证件信息无效
FailureReasonLegalPersonMismatch: 法定代表人信息不匹配
FailureReasonNetworkError: 网络错误
FailureReasonSignProcessFailed: 签署流程失败
FailureReasonSystemError: 系统错误
FailureReasonTimeout: 操作超时
FailureReasonUnknownError: 未知错误
x-enum-descriptions:
- 企业不存在
- 企业信息不匹配
- 企业状态异常
- 法定代表人信息不匹配
- e签宝验证失败
- 证件信息无效
- 用户拒绝签署
- 合同签署超时
- 签署流程失败
- 合同生成失败
- e签宝流程错误
- 系统错误
- 网络错误
- 操作超时
- 未知错误
x-enum-varnames:
- FailureReasonEnterpriseNotExists
- FailureReasonEnterpriseInfoMismatch
- FailureReasonEnterpriseStatusAbnormal
- FailureReasonLegalPersonMismatch
- FailureReasonEsignVerificationFailed
- FailureReasonInvalidDocument
- FailureReasonContractRejectedByUser
- FailureReasonContractExpired
- FailureReasonSignProcessFailed
- FailureReasonContractGenFailed
- FailureReasonEsignFlowError
- FailureReasonSystemError
- FailureReasonNetworkError
- FailureReasonTimeout
- FailureReasonUnknownError
finance.ApplyInvoiceRequest:
properties:
amount:
description: 开票金额
type: string
invoice_type:
description: 发票类型general/special
type: string
required:
- amount
- invoice_type
type: object
finance.RejectInvoiceRequest:
properties:
reason:
description: 拒绝原因
type: string
required:
- reason
type: object
finance.UpdateInvoiceInfoRequest:
properties:
bank_account:
description: 银行账户
type: string
bank_name:
description: 银行名称
type: string
company_address:
description: 公司地址
type: string
company_name:
description: 公司名称(从企业认证信息获取,用户不可修改)
type: string
company_phone:
description: 企业注册电话
type: string
receiving_email:
description: 发票接收邮箱
type: string
taxpayer_id:
description: 纳税人识别号(从企业认证信息获取,用户不可修改)
type: string
required:
- receiving_email
type: object
interfaces.APIResponse:
properties:
data: {}
errors: {}
message:
type: string
meta:
additionalProperties: true
type: object
pagination:
$ref: '#/definitions/interfaces.PaginationMeta'
request_id:
type: string
success:
type: boolean
timestamp:
type: integer
type: object
interfaces.PaginationMeta:
properties:
has_next:
type: boolean
has_prev:
type: boolean
page:
type: integer
page_size:
type: integer
total:
type: integer
total_pages:
type: integer
type: object
queries.ConfirmAuthCommand:
type: object
queries.ConfirmSignCommand:
type: object
responses.AlipayOrderStatusResponse:
properties:
amount:
description: 订单金额
type: number
can_retry:
description: 是否可以重试
type: boolean
created_at:
description: 创建时间
type: string
error_code:
description: 错误码
type: string
error_message:
description: 错误信息
type: string
is_processing:
description: 是否处理中
type: boolean
notify_time:
description: 异步通知时间
type: string
out_trade_no:
description: 商户订单号
type: string
platform:
description: 支付平台
type: string
return_time:
description: 同步返回时间
type: string
status:
description: 订单状态
type: string
subject:
description: 订单标题
type: string
trade_no:
description: 支付宝交易号
type: string
updated_at:
description: 更新时间
type: string
type: object
responses.AlipayRechargeBonusRuleResponse:
properties:
bonus_amount:
type: number
recharge_amount:
type: number
type: object
responses.AlipayRechargeOrderResponse:
properties:
amount:
description: 充值金额
type: number
out_trade_no:
description: 商户订单号
type: string
pay_url:
description: 支付链接
type: string
platform:
description: 支付平台
type: string
subject:
description: 订单标题
type: string
type: object
responses.ArticleInfoResponse:
properties:
category:
$ref: '#/definitions/tyapi-server_internal_application_article_dto_responses.CategoryInfoResponse'
category_id:
type: string
content:
type: string
cover_image:
type: string
created_at:
type: string
id:
type: string
is_featured:
type: boolean
published_at:
type: string
status:
type: string
summary:
type: string
tags:
items:
$ref: '#/definitions/responses.TagInfoResponse'
type: array
title:
type: string
updated_at:
type: string
view_count:
type: integer
type: object
responses.ArticleListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.ArticleInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.ArticleStatsResponse:
properties:
archived_articles:
type: integer
draft_articles:
type: integer
published_articles:
type: integer
total_articles:
type: integer
total_views:
type: integer
type: object
responses.CategoryListResponse:
properties:
items:
items:
$ref: '#/definitions/tyapi-server_internal_application_product_dto_responses.CategoryInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.CategorySimpleResponse:
properties:
code:
type: string
id:
type: string
name:
type: string
type: object
responses.CertificationListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.CertificationResponse'
type: array
page:
type: integer
page_size:
type: integer
total:
type: integer
total_pages:
type: integer
type: object
responses.CertificationResponse:
properties:
available_actions:
items:
type: string
type: array
can_retry:
type: boolean
completed_at:
type: string
contract_applied_at:
type: string
contract_info:
allOf:
- $ref: '#/definitions/value_objects.ContractInfo'
description: 合同信息
contract_signed_at:
type: string
created_at:
description: 时间戳
type: string
enterprise_info:
allOf:
- $ref: '#/definitions/value_objects.EnterpriseInfo'
description: 企业信息
enterprise_verified_at:
type: string
failure_message:
type: string
failure_reason:
allOf:
- $ref: '#/definitions/enums.FailureReason'
description: 失败信息
failure_reason_name:
type: string
id:
type: string
info_submitted_at:
type: string
is_completed:
description: 业务状态
type: boolean
is_failed:
type: boolean
is_user_action_required:
type: boolean
metadata:
additionalProperties: true
description: 元数据
type: object
next_action:
description: 用户操作提示
type: string
progress:
type: integer
retry_count:
type: integer
status:
$ref: '#/definitions/enums.CertificationStatus'
status_name:
type: string
updated_at:
type: string
user_id:
type: string
type: object
responses.ConfirmAuthResponse:
properties:
reason:
type: string
status:
$ref: '#/definitions/enums.CertificationStatus'
type: object
responses.ConfirmSignResponse:
properties:
reason:
type: string
status:
$ref: '#/definitions/enums.CertificationStatus'
type: object
responses.ContractInfoItem:
properties:
contract_file_url:
type: string
contract_name:
type: string
contract_type:
description: 合同类型代码
type: string
contract_type_name:
description: 合同类型中文名称
type: string
created_at:
type: string
id:
type: string
type: object
responses.ContractSignUrlResponse:
properties:
certification_id:
type: string
contract_sign_url:
type: string
contract_url:
type: string
expire_at:
type: string
message:
type: string
next_action:
type: string
type: object
responses.DocumentationResponse:
properties:
basic_info:
type: string
created_at:
type: string
error_codes:
type: string
id:
type: string
product_id:
type: string
request_method:
type: string
request_params:
type: string
request_url:
type: string
response_example:
type: string
response_fields:
type: string
updated_at:
type: string
version:
type: string
type: object
responses.EnterpriseInfoItem:
properties:
company_name:
type: string
contracts:
description: 合同信息
items:
$ref: '#/definitions/responses.ContractInfoItem'
type: array
created_at:
type: string
enterprise_address:
type: string
id:
type: string
legal_person_name:
type: string
legal_person_phone:
type: string
unified_social_code:
type: string
type: object
responses.EnterpriseInfoResponse:
description: 企业信息响应
properties:
certified_at:
example: "2024-01-01T00:00:00Z"
type: string
company_name:
example: 示例企业有限公司
type: string
created_at:
example: "2024-01-01T00:00:00Z"
type: string
enterprise_address:
example: 北京市朝阳区xxx街道xxx号
type: string
id:
example: 123e4567-e89b-12d3-a456-426614174000
type: string
legal_person_id:
example: "110101199001011234"
type: string
legal_person_name:
example: 张三
type: string
legal_person_phone:
example: "13800138000"
type: string
unified_social_code:
example: 91110000123456789X
type: string
updated_at:
example: "2024-01-01T00:00:00Z"
type: string
type: object
responses.LoginUserResponse:
description: 用户登录成功响应
properties:
access_token:
example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
type: string
expires_in:
example: 86400
type: integer
login_method:
example: password
type: string
token_type:
example: Bearer
type: string
user:
$ref: '#/definitions/responses.UserProfileResponse'
type: object
responses.PackageItemResponse:
properties:
id:
type: string
price:
type: number
product_code:
type: string
product_id:
type: string
product_name:
type: string
sort_order:
type: integer
type: object
responses.ProductAdminInfoResponse:
properties:
category:
allOf:
- $ref: '#/definitions/tyapi-server_internal_application_product_dto_responses.CategoryInfoResponse'
description: 关联信息
category_id:
type: string
code:
type: string
content:
type: string
created_at:
type: string
description:
type: string
documentation:
allOf:
- $ref: '#/definitions/responses.DocumentationResponse'
description: 文档信息
id:
type: string
is_enabled:
type: boolean
is_package:
type: boolean
is_visible:
type: boolean
name:
type: string
old_id:
type: string
package_items:
description: 组合包信息
items:
$ref: '#/definitions/responses.PackageItemResponse'
type: array
price:
type: number
seo_description:
type: string
seo_keywords:
type: string
seo_title:
description: SEO信息
type: string
updated_at:
type: string
type: object
responses.ProductAdminListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.ProductAdminInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.ProductApiConfigResponse:
properties:
created_at:
type: string
id:
type: string
product_id:
type: string
request_params:
items:
$ref: '#/definitions/responses.RequestParamResponse'
type: array
response_example:
additionalProperties: true
type: object
response_fields:
items:
$ref: '#/definitions/responses.ResponseFieldResponse'
type: array
updated_at:
type: string
type: object
responses.ProductInfoResponse:
properties:
category:
allOf:
- $ref: '#/definitions/tyapi-server_internal_application_product_dto_responses.CategoryInfoResponse'
description: 关联信息
category_id:
type: string
code:
type: string
content:
type: string
created_at:
type: string
description:
type: string
id:
type: string
is_enabled:
type: boolean
is_package:
type: boolean
is_subscribed:
type: boolean
name:
type: string
old_id:
type: string
package_items:
description: 组合包信息
items:
$ref: '#/definitions/responses.PackageItemResponse'
type: array
price:
type: number
seo_description:
type: string
seo_keywords:
type: string
seo_title:
description: SEO信息
type: string
updated_at:
type: string
type: object
responses.ProductInfoWithDocumentResponse:
properties:
category:
allOf:
- $ref: '#/definitions/tyapi-server_internal_application_product_dto_responses.CategoryInfoResponse'
description: 关联信息
category_id:
type: string
code:
type: string
content:
type: string
created_at:
type: string
description:
type: string
documentation:
$ref: '#/definitions/responses.DocumentationResponse'
id:
type: string
is_enabled:
type: boolean
is_package:
type: boolean
is_subscribed:
type: boolean
name:
type: string
old_id:
type: string
package_items:
description: 组合包信息
items:
$ref: '#/definitions/responses.PackageItemResponse'
type: array
price:
type: number
seo_description:
type: string
seo_keywords:
type: string
seo_title:
description: SEO信息
type: string
updated_at:
type: string
type: object
responses.ProductListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.ProductInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.ProductSimpleResponse:
properties:
category:
$ref: '#/definitions/responses.CategorySimpleResponse'
code:
type: string
description:
type: string
id:
type: string
is_package:
type: boolean
is_subscribed:
type: boolean
name:
type: string
old_id:
type: string
price:
type: number
type: object
responses.ProductStatsResponse:
properties:
enabled_products:
type: integer
package_products:
type: integer
total_products:
type: integer
visible_products:
type: integer
type: object
responses.RechargeConfigResponse:
properties:
alipay_recharge_bonus:
items:
$ref: '#/definitions/responses.AlipayRechargeBonusRuleResponse'
type: array
max_amount:
description: 最高充值金额
type: string
min_amount:
description: 最低充值金额
type: string
type: object
responses.RechargeRecordListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.RechargeRecordResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.RechargeRecordResponse:
properties:
alipay_order_id:
type: string
amount:
type: number
company_name:
type: string
created_at:
type: string
id:
type: string
notes:
type: string
operator_id:
type: string
recharge_type:
type: string
status:
type: string
transfer_order_id:
type: string
updated_at:
type: string
user:
$ref: '#/definitions/tyapi-server_internal_application_finance_dto_responses.UserSimpleResponse'
user_id:
type: string
type: object
responses.RegisterUserResponse:
description: 用户注册成功响应
properties:
id:
example: 123e4567-e89b-12d3-a456-426614174000
type: string
phone:
example: "13800138000"
type: string
type: object
responses.RequestParamResponse:
properties:
description:
type: string
example:
type: string
field:
type: string
name:
type: string
required:
type: boolean
type:
type: string
validation:
type: string
type: object
responses.ResponseFieldResponse:
properties:
description:
type: string
example:
type: string
name:
type: string
path:
type: string
required:
type: boolean
type:
type: string
type: object
responses.SubscriptionInfoResponse:
properties:
api_used:
type: integer
created_at:
type: string
id:
type: string
price:
type: number
product:
$ref: '#/definitions/responses.ProductSimpleResponse'
product_id:
type: string
updated_at:
type: string
user:
allOf:
- $ref: '#/definitions/tyapi-server_internal_application_product_dto_responses.UserSimpleResponse'
description: 关联信息
user_id:
type: string
type: object
responses.SubscriptionListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.SubscriptionInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.SubscriptionStatsResponse:
properties:
total_revenue:
type: number
total_subscriptions:
type: integer
type: object
responses.TagInfoResponse:
properties:
color:
type: string
created_at:
type: string
id:
type: string
name:
type: string
type: object
responses.UserDetailResponse:
properties:
created_at:
type: string
enterprise_info:
allOf:
- $ref: '#/definitions/responses.EnterpriseInfoItem'
description: 企业信息
id:
type: string
is_active:
type: boolean
is_certified:
type: boolean
last_login_at:
type: string
login_count:
type: integer
phone:
type: string
updated_at:
type: string
user_type:
type: string
username:
type: string
wallet_balance:
description: 钱包信息
type: string
type: object
responses.UserListItem:
properties:
created_at:
type: string
enterprise_info:
allOf:
- $ref: '#/definitions/responses.EnterpriseInfoItem'
description: 企业信息
id:
type: string
is_active:
type: boolean
is_certified:
type: boolean
last_login_at:
type: string
login_count:
type: integer
phone:
type: string
updated_at:
type: string
user_type:
type: string
username:
type: string
wallet_balance:
description: 钱包信息
type: string
type: object
responses.UserListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.UserListItem'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.UserProfileResponse:
description: 用户基本信息
properties:
created_at:
example: "2024-01-01T00:00:00Z"
type: string
enterprise_info:
$ref: '#/definitions/responses.EnterpriseInfoResponse'
id:
example: 123e4567-e89b-12d3-a456-426614174000
type: string
is_active:
example: true
type: boolean
is_certified:
example: false
type: boolean
last_login_at:
example: "2024-01-01T00:00:00Z"
type: string
login_count:
example: 10
type: integer
permissions:
example:
- '[''user:read'''
- '''user:write'']'
items:
type: string
type: array
phone:
example: "13800138000"
type: string
updated_at:
example: "2024-01-01T00:00:00Z"
type: string
user_type:
example: user
type: string
username:
example: admin
type: string
type: object
responses.UserStatsResponse:
properties:
active_users:
type: integer
certified_users:
type: integer
total_users:
type: integer
type: object
responses.WalletResponse:
properties:
balance:
type: number
balance_status:
description: normal, low, arrears
type: string
created_at:
type: string
id:
type: string
is_active:
type: boolean
is_arrears:
description: 是否欠费
type: boolean
is_low_balance:
description: 是否余额较低
type: boolean
updated_at:
type: string
user_id:
type: string
type: object
responses.WalletTransactionListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.WalletTransactionResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.WalletTransactionResponse:
properties:
amount:
type: number
api_call_id:
type: string
company_name:
type: string
created_at:
type: string
id:
type: string
product_id:
type: string
product_name:
type: string
transaction_id:
type: string
updated_at:
type: string
user:
$ref: '#/definitions/tyapi-server_internal_application_finance_dto_responses.UserSimpleResponse'
user_id:
type: string
type: object
tyapi-server_internal_application_article_dto_responses.CategoryInfoResponse:
properties:
created_at:
type: string
description:
type: string
id:
type: string
is_active:
type: boolean
name:
type: string
sort_order:
type: integer
type: object
tyapi-server_internal_application_finance_dto_responses.UserSimpleResponse:
properties:
company_name:
type: string
id:
type: string
phone:
type: string
type: object
tyapi-server_internal_application_product_dto_responses.CategoryInfoResponse:
properties:
code:
type: string
created_at:
type: string
description:
type: string
id:
type: string
is_enabled:
type: boolean
is_visible:
type: boolean
name:
type: string
sort:
type: integer
updated_at:
type: string
type: object
tyapi-server_internal_application_product_dto_responses.UserSimpleResponse:
properties:
company_name:
type: string
id:
type: string
phone:
type: string
type: object
value_objects.ContractInfo:
properties:
contract_file_id:
description: 合同基本信息
type: string
contract_sign_url:
description: 合同签署链接
type: string
contract_title:
description: 合同元数据
type: string
contract_url:
description: 合同文件访问链接
type: string
contract_version:
description: 合同版本
type: string
esign_flow_id:
description: e签宝签署流程ID
type: string
expires_at:
description: 签署链接过期时间
type: string
generated_at:
description: 时间信息
type: string
metadata:
additionalProperties: true
description: 附加信息
type: object
sign_flow_created_at:
description: 签署流程创建时间
type: string
sign_progress:
description: 签署进度
type: integer
signed_at:
description: 签署完成时间
type: string
signer_account:
description: 签署相关信息
type: string
signer_name:
description: 签署人姓名
type: string
status:
description: 状态信息
type: string
template_id:
description: 模板ID
type: string
transactor_id_card_num:
description: 经办人身份证号
type: string
transactor_name:
description: 经办人姓名
type: string
transactor_phone:
description: 经办人手机号
type: string
type: object
value_objects.EnterpriseInfo:
properties:
company_name:
description: 企业基本信息
type: string
enterprise_address:
description: 企业地址(新增)
type: string
legal_person_id:
description: 法定代表人身份证号
type: string
legal_person_name:
description: 法定代表人信息
type: string
legal_person_phone:
description: 法定代表人手机号
type: string
registered_address:
description: 企业详细信息
type: string
unified_social_code:
description: 统一社会信用代码
type: string
type: object
value_objects.InvoiceInfo:
properties:
bank_account:
description: 基本开户账号
type: string
bank_name:
description: 基本开户银行
type: string
company_address:
description: 企业注册地址
type: string
company_name:
description: 公司名称
type: string
company_phone:
description: 企业注册电话
type: string
receiving_email:
description: 发票接收邮箱
type: string
taxpayer_id:
description: 纳税人识别号
type: string
type: object
value_objects.InvoiceType:
enum:
- general
- special
type: string
x-enum-comments:
InvoiceTypeGeneral: 增值税普通发票 (普票)
InvoiceTypeSpecial: 增值税专用发票 (专票)
x-enum-descriptions:
- 增值税普通发票 (普票)
- 增值税专用发票 (专票)
x-enum-varnames:
- InvoiceTypeGeneral
- InvoiceTypeSpecial
host: localhost:8080
info:
contact:
email: support@example.com
name: API Support
url: https://github.com/your-org/tyapi-server-gin
description: |-
基于DDD和Clean Architecture的企业级后端API服务
采用Gin框架构建支持用户管理、JWT认证、事件驱动等功能
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
title: TYAPI Server API
version: "1.0"
paths:
/api/v1/:api_name:
post:
consumes:
- application/json
description: 统一API调用入口参数加密传输
parameters:
- description: API调用请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.ApiCallCommand'
produces:
- application/json
responses:
"200":
description: 调用成功
schema:
$ref: '#/definitions/dto.ApiCallResponse'
"400":
description: 请求参数错误
schema:
$ref: '#/definitions/dto.ApiCallResponse'
"401":
description: 未授权
schema:
$ref: '#/definitions/dto.ApiCallResponse'
"429":
description: 请求过于频繁
schema:
$ref: '#/definitions/dto.ApiCallResponse'
"500":
description: 服务器内部错误
schema:
$ref: '#/definitions/dto.ApiCallResponse'
summary: API调用
tags:
- API调用
/api/v1/admin/api-calls:
get:
consumes:
- application/json
description: 管理员获取API调用记录支持筛选和分页
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 用户ID
in: query
name: user_id
type: string
- description: 交易ID
in: query
name: transaction_id
type: string
- description: 产品名称
in: query
name: product_name
type: string
- description: 状态
in: query
name: status
type: string
- description: 开始时间
format: date-time
in: query
name: start_time
type: string
- description: 结束时间
format: date-time
in: query
name: end_time
type: string
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取API调用记录成功
schema:
$ref: '#/definitions/dto.ApiCallListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取管理端API调用记录
tags:
- API管理
/api/v1/admin/invoices/{application_id}/approve:
post:
consumes:
- multipart/form-data
description: 管理员通过发票申请并上传发票文件
parameters:
- description: 申请ID
in: path
name: application_id
required: true
type: string
- description: 发票文件
in: formData
name: file
required: true
type: file
- description: 管理员备注
in: formData
name: admin_notes
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/interfaces.APIResponse'
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 通过发票申请
tags:
- 管理员-发票管理
/api/v1/admin/invoices/{application_id}/download:
get:
description: 管理员下载指定发票的文件
parameters:
- description: 申请ID
in: path
name: application_id
required: true
type: string
produces:
- application/octet-stream
responses:
"200":
description: OK
schema:
type: file
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 管理员下载发票文件
tags:
- 管理员-发票管理
/api/v1/admin/invoices/{application_id}/reject:
post:
consumes:
- application/json
description: 管理员拒绝发票申请
parameters:
- description: 申请ID
in: path
name: application_id
required: true
type: string
- description: 拒绝申请请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/finance.RejectInvoiceRequest'
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/interfaces.APIResponse'
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 拒绝发票申请
tags:
- 管理员-发票管理
/api/v1/admin/invoices/pending:
get:
description: 管理员获取发票申请列表,支持状态和时间范围筛选
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 状态筛选pending/completed/rejected
in: query
name: status
type: string
- description: '开始时间 (格式: 2006-01-02 15:04:05)'
in: query
name: start_time
type: string
- description: '结束时间 (格式: 2006-01-02 15:04:05)'
in: query
name: end_time
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
allOf:
- $ref: '#/definitions/interfaces.APIResponse'
- properties:
data:
$ref: '#/definitions/dto.PendingApplicationsResponse'
type: object
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 获取发票申请列表
tags:
- 管理员-发票管理
/api/v1/admin/product-categories:
get:
consumes:
- application/json
description: 管理员获取产品分类列表
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
produces:
- application/json
responses:
"200":
description: 获取分类列表成功
schema:
$ref: '#/definitions/responses.CategoryListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取分类列表
tags:
- 分类管理
post:
consumes:
- application/json
description: 管理员创建新产品分类
parameters:
- description: 创建分类请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateCategoryCommand'
produces:
- application/json
responses:
"201":
description: 分类创建成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建分类
tags:
- 分类管理
/api/v1/admin/product-categories/{id}:
delete:
consumes:
- application/json
description: 管理员删除产品分类
parameters:
- description: 分类ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 分类删除成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 分类不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 删除分类
tags:
- 分类管理
get:
consumes:
- application/json
description: 管理员获取分类详细信息
parameters:
- description: 分类ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取分类详情成功
schema:
$ref: '#/definitions/tyapi-server_internal_application_product_dto_responses.CategoryInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 分类不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取分类详情
tags:
- 分类管理
put:
consumes:
- application/json
description: 管理员更新产品分类信息
parameters:
- description: 分类ID
in: path
name: id
required: true
type: string
- description: 更新分类请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.UpdateCategoryCommand'
produces:
- application/json
responses:
"200":
description: 分类更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 分类不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 更新分类
tags:
- 分类管理
/api/v1/admin/products:
get:
consumes:
- application/json
description: 管理员获取产品列表,支持筛选和分页,包含所有产品(包括隐藏的)
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 搜索关键词
in: query
name: keyword
type: string
- description: 分类ID
in: query
name: category_id
type: string
- description: 是否启用
in: query
name: is_enabled
type: boolean
- description: 是否可见
in: query
name: is_visible
type: boolean
- description: 是否组合包
in: query
name: is_package
type: boolean
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取产品列表成功
schema:
$ref: '#/definitions/responses.ProductAdminListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取产品列表
tags:
- 产品管理
post:
consumes:
- application/json
description: 管理员创建新产品
parameters:
- description: 创建产品请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateProductCommand'
produces:
- application/json
responses:
"201":
description: 产品创建成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建产品
tags:
- 产品管理
/api/v1/admin/products/{id}:
delete:
consumes:
- application/json
description: 管理员删除产品
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 产品删除成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 删除产品
tags:
- 产品管理
get:
consumes:
- application/json
description: 管理员获取产品详细信息
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
- description: 是否包含文档信息
in: query
name: with_document
type: boolean
produces:
- application/json
responses:
"200":
description: 获取产品详情成功
schema:
$ref: '#/definitions/responses.ProductAdminInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取产品详情
tags:
- 产品管理
put:
consumes:
- application/json
description: 管理员更新产品信息
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
- description: 更新产品请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.UpdateProductCommand'
produces:
- application/json
responses:
"200":
description: 产品更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 更新产品
tags:
- 产品管理
/api/v1/admin/products/{id}/api-config:
delete:
consumes:
- application/json
description: 管理员删除产品的API配置
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: API配置删除成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品或API配置不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 删除产品API配置
tags:
- 产品管理
get:
consumes:
- application/json
description: 管理员获取产品的API配置信息如果不存在则返回空配置
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取API配置成功
schema:
$ref: '#/definitions/responses.ProductApiConfigResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取产品API配置
tags:
- 产品管理
post:
consumes:
- application/json
description: 管理员为产品创建API配置
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
- description: API配置信息
in: body
name: request
required: true
schema:
$ref: '#/definitions/responses.ProductApiConfigResponse'
produces:
- application/json
responses:
"201":
description: API配置创建成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"409":
description: API配置已存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建产品API配置
tags:
- 产品管理
put:
consumes:
- application/json
description: 管理员更新产品的API配置
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
- description: API配置信息
in: body
name: request
required: true
schema:
$ref: '#/definitions/responses.ProductApiConfigResponse'
produces:
- application/json
responses:
"200":
description: API配置更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品或配置不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 更新产品API配置
tags:
- 产品管理
/api/v1/admin/products/{id}/documentation:
delete:
consumes:
- application/json
description: 管理员删除产品的文档
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 文档删除成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品或文档不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 删除产品文档
tags:
- 产品管理
get:
consumes:
- application/json
description: 管理员获取产品的文档信息
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取文档成功
schema:
$ref: '#/definitions/responses.DocumentationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品或文档不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取产品文档
tags:
- 产品管理
post:
consumes:
- application/json
description: 管理员创建或更新产品的文档信息,如果文档不存在则创建,存在则更新
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
- description: 文档信息
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateDocumentationCommand'
produces:
- application/json
responses:
"200":
description: 文档操作成功
schema:
$ref: '#/definitions/responses.DocumentationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建或更新产品文档
tags:
- 产品管理
/api/v1/admin/products/{id}/package-items:
post:
consumes:
- application/json
description: 管理员向组合包添加子产品
parameters:
- description: 组合包ID
in: path
name: id
required: true
type: string
- description: 添加子产品命令
in: body
name: command
required: true
schema:
$ref: '#/definitions/commands.AddPackageItemCommand'
produces:
- application/json
responses:
"200":
description: 添加成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 添加组合包子产品
tags:
- 产品管理
/api/v1/admin/products/{id}/package-items/{item_id}:
delete:
consumes:
- application/json
description: 管理员从组合包移除子产品
parameters:
- description: 组合包ID
in: path
name: id
required: true
type: string
- description: 子产品项目ID
in: path
name: item_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 移除成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 移除组合包子产品
tags:
- 产品管理
put:
consumes:
- application/json
description: 管理员更新组合包子产品信息
parameters:
- description: 组合包ID
in: path
name: id
required: true
type: string
- description: 子产品项目ID
in: path
name: item_id
required: true
type: string
- description: 更新子产品命令
in: body
name: command
required: true
schema:
$ref: '#/definitions/commands.UpdatePackageItemCommand'
produces:
- application/json
responses:
"200":
description: 更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 更新组合包子产品
tags:
- 产品管理
/api/v1/admin/products/{id}/package-items/batch:
put:
consumes:
- application/json
description: 管理员批量更新组合包子产品配置
parameters:
- description: 组合包ID
in: path
name: id
required: true
type: string
- description: 批量更新命令
in: body
name: command
required: true
schema:
$ref: '#/definitions/commands.UpdatePackageItemsCommand'
produces:
- application/json
responses:
"200":
description: 更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 批量更新组合包子产品
tags:
- 产品管理
/api/v1/admin/products/{id}/package-items/reorder:
put:
consumes:
- application/json
description: 管理员重新排序组合包子产品
parameters:
- description: 组合包ID
in: path
name: id
required: true
type: string
- description: 重新排序命令
in: body
name: command
required: true
schema:
$ref: '#/definitions/commands.ReorderPackageItemsCommand'
produces:
- application/json
responses:
"200":
description: 排序成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 重新排序组合包子产品
tags:
- 产品管理
/api/v1/admin/products/available:
get:
consumes:
- application/json
description: 管理员获取可选作组合包子产品的产品列表
parameters:
- description: 排除的组合包ID
in: query
name: exclude_package_id
type: string
- description: 搜索关键词
in: query
name: keyword
type: string
- description: 分类ID
in: query
name: category_id
type: string
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 20
description: 每页数量
in: query
name: page_size
type: integer
produces:
- application/json
responses:
"200":
description: 获取可选产品列表成功
schema:
$ref: '#/definitions/responses.ProductListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取可选子产品列表
tags:
- 产品管理
/api/v1/admin/recharge-records:
get:
consumes:
- application/json
description: 管理员获取充值记录,支持筛选和分页
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 用户ID
in: query
name: user_id
type: string
- description: 充值类型
enum:
- alipay
- transfer
- gift
in: query
name: recharge_type
type: string
- description: 状态
enum:
- pending
- success
- failed
in: query
name: status
type: string
- description: 最小金额
in: query
name: min_amount
type: string
- description: 最大金额
in: query
name: max_amount
type: string
- description: 开始时间
format: date-time
in: query
name: start_time
type: string
- description: 结束时间
format: date-time
in: query
name: end_time
type: string
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取充值记录成功
schema:
$ref: '#/definitions/responses.RechargeRecordListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取管理端充值记录
tags:
- 财务管理
/api/v1/admin/subscriptions:
get:
consumes:
- application/json
description: 管理员获取订阅列表
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 搜索关键词
in: query
name: keyword
type: string
- description: 企业名称
in: query
name: company_name
type: string
- description: 产品名称
in: query
name: product_name
type: string
- description: 订阅开始时间
format: date-time
in: query
name: start_time
type: string
- description: 订阅结束时间
format: date-time
in: query
name: end_time
type: string
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取订阅列表成功
schema:
$ref: '#/definitions/responses.SubscriptionListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取订阅列表
tags:
- 订阅管理
/api/v1/admin/subscriptions/{id}/price:
put:
consumes:
- application/json
description: 管理员修改用户订阅价格
parameters:
- description: 订阅ID
in: path
name: id
required: true
type: string
- description: 更新订阅价格请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.UpdateSubscriptionPriceCommand'
produces:
- application/json
responses:
"200":
description: 订阅价格更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 订阅不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 更新订阅价格
tags:
- 订阅管理
/api/v1/admin/subscriptions/batch-update-prices:
post:
consumes:
- application/json
description: 管理员一键调整用户所有订阅的价格
parameters:
- description: 批量改价请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.BatchUpdateSubscriptionPricesCommand'
produces:
- application/json
responses:
"200":
description: 一键改价成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 一键改价
tags:
- 订阅管理
/api/v1/admin/subscriptions/stats:
get:
consumes:
- application/json
description: 管理员获取订阅统计信息
produces:
- application/json
responses:
"200":
description: 获取订阅统计成功
schema:
$ref: '#/definitions/responses.SubscriptionStatsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取订阅统计
tags:
- 订阅管理
/api/v1/admin/wallet-transactions:
get:
consumes:
- application/json
description: 管理员获取消费记录,支持筛选和分页
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 用户ID
in: query
name: user_id
type: string
- description: 交易ID
in: query
name: transaction_id
type: string
- description: 产品名称
in: query
name: product_name
type: string
- description: 最小金额
in: query
name: min_amount
type: string
- description: 最大金额
in: query
name: max_amount
type: string
- description: 开始时间
format: date-time
in: query
name: start_time
type: string
- description: 结束时间
format: date-time
in: query
name: end_time
type: string
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取消费记录成功
schema:
$ref: '#/definitions/responses.WalletTransactionListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取管理端消费记录
tags:
- 财务管理
/api/v1/articles:
get:
consumes:
- application/json
description: 分页获取文章列表
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 文章状态
in: query
name: status
type: string
- description: 分类ID
in: query
name: category_id
type: string
- description: 作者ID
in: query
name: author_id
type: string
- description: 是否推荐
in: query
name: is_featured
type: boolean
- description: 排序字段
in: query
name: order_by
type: string
- description: 排序方向
in: query
name: order_dir
type: string
produces:
- application/json
responses:
"200":
description: 获取文章列表成功
schema:
$ref: '#/definitions/responses.ArticleListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取文章列表
tags:
- 文章管理
post:
consumes:
- application/json
description: 创建新的文章
parameters:
- description: 创建文章请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateArticleCommand'
produces:
- application/json
responses:
"201":
description: 文章创建成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建文章
tags:
- 文章管理
/api/v1/articles/{id}:
delete:
consumes:
- application/json
description: 删除指定文章
parameters:
- description: 文章ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 文章删除成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 文章不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 删除文章
tags:
- 文章管理
get:
consumes:
- application/json
description: 根据ID获取文章详情
parameters:
- description: 文章ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取文章详情成功
schema:
$ref: '#/definitions/responses.ArticleInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 文章不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取文章详情
tags:
- 文章管理
put:
consumes:
- application/json
description: 更新文章信息
parameters:
- description: 文章ID
in: path
name: id
required: true
type: string
- description: 更新文章请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.UpdateArticleCommand'
produces:
- application/json
responses:
"200":
description: 文章更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 文章不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 更新文章
tags:
- 文章管理
/api/v1/articles/{id}/archive:
post:
consumes:
- application/json
description: 将已发布文章归档
parameters:
- description: 文章ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 文章归档成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 文章不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 归档文章
tags:
- 文章管理
/api/v1/articles/{id}/featured:
put:
consumes:
- application/json
description: 设置文章的推荐状态
parameters:
- description: 文章ID
in: path
name: id
required: true
type: string
- description: 设置推荐状态请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.SetFeaturedCommand'
produces:
- application/json
responses:
"200":
description: 设置推荐状态成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 文章不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 设置推荐状态
tags:
- 文章管理
/api/v1/articles/{id}/publish:
post:
consumes:
- application/json
description: 将草稿文章发布
parameters:
- description: 文章ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 文章发布成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 文章不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 发布文章
tags:
- 文章管理
/api/v1/articles/search:
get:
consumes:
- application/json
description: 根据关键词搜索文章
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 搜索关键词
in: query
name: keyword
required: true
type: string
- description: 分类ID
in: query
name: category_id
type: string
- description: 作者ID
in: query
name: author_id
type: string
- description: 文章状态
in: query
name: status
type: string
- description: 排序字段
in: query
name: order_by
type: string
- description: 排序方向
in: query
name: order_dir
type: string
produces:
- application/json
responses:
"200":
description: 搜索文章成功
schema:
$ref: '#/definitions/responses.ArticleListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 搜索文章
tags:
- 文章管理
/api/v1/articles/stats:
get:
consumes:
- application/json
description: 获取文章相关统计数据
produces:
- application/json
responses:
"200":
description: 获取统计成功
schema:
$ref: '#/definitions/responses.ArticleStatsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取文章统计
tags:
- 文章管理
/api/v1/categories:
get:
consumes:
- application/json
description: 获取产品分类列表,支持筛选
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 是否启用
in: query
name: is_enabled
type: boolean
- description: 是否可见
in: query
name: is_visible
type: boolean
produces:
- application/json
responses:
"200":
description: 获取分类列表成功
schema:
$ref: '#/definitions/responses.CategoryListResponse'
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取分类列表
tags:
- 数据大厅
/api/v1/categories/{id}:
get:
consumes:
- application/json
description: 根据分类ID获取分类详细信息
parameters:
- description: 分类ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取分类详情成功
schema:
$ref: '#/definitions/tyapi-server_internal_application_product_dto_responses.CategoryInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"404":
description: 分类不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取分类详情
tags:
- 数据大厅
/api/v1/certifications:
get:
consumes:
- application/json
description: 管理员获取认证申请列表
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
- description: 认证状态
in: query
name: status
type: string
- description: 用户ID
in: query
name: user_id
type: string
- description: 公司名称
in: query
name: company_name
type: string
- description: 法人姓名
in: query
name: legal_person_name
type: string
- description: 搜索关键词
in: query
name: search_keyword
type: string
produces:
- application/json
responses:
"200":
description: 获取认证列表成功
schema:
$ref: '#/definitions/responses.CertificationListResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"403":
description: 权限不足
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取认证列表
tags:
- 认证管理
/api/v1/certifications/apply-contract:
post:
consumes:
- application/json
description: 申请企业认证合同签署
parameters:
- description: 申请合同请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.ApplyContractCommand'
produces:
- application/json
responses:
"200":
description: 合同申请成功
schema:
$ref: '#/definitions/responses.ContractSignUrlResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 认证记录不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 申请合同签署
tags:
- 认证管理
/api/v1/certifications/confirm-auth:
post:
consumes:
- application/json
description: 前端轮询确认企业认证是否完成
parameters:
- description: 确认状态请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/queries.ConfirmAuthCommand'
produces:
- application/json
responses:
"200":
description: 状态确认成功
schema:
$ref: '#/definitions/responses.ConfirmAuthResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 认证记录不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 前端确认认证状态
tags:
- 认证管理
/api/v1/certifications/confirm-sign:
post:
consumes:
- application/json
description: 前端轮询确认合同签署是否完成
parameters:
- description: 确认状态请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/queries.ConfirmSignCommand'
produces:
- application/json
responses:
"200":
description: 状态确认成功
schema:
$ref: '#/definitions/responses.ConfirmSignResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 认证记录不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 前端确认签署状态
tags:
- 认证管理
/api/v1/certifications/details:
get:
consumes:
- application/json
description: 根据认证ID获取认证详情
produces:
- application/json
responses:
"200":
description: 获取认证详情成功
schema:
$ref: '#/definitions/responses.CertificationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 认证记录不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取认证详情
tags:
- 认证管理
/api/v1/certifications/enterprise-info:
post:
consumes:
- application/json
description: 提交企业认证所需的企业信息
parameters:
- description: 提交企业信息请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.SubmitEnterpriseInfoCommand'
produces:
- application/json
responses:
"200":
description: 企业信息提交成功
schema:
$ref: '#/definitions/responses.CertificationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 认证记录不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 提交企业信息
tags:
- 认证管理
/api/v1/certifications/esign/callback:
post:
consumes:
- application/json
description: 处理e签宝的异步回调通知
produces:
- text/plain
responses:
"200":
description: success
schema:
type: string
"400":
description: fail
schema:
type: string
summary: 处理e签宝回调
tags:
- 认证管理
/api/v1/debug/event-system:
post:
consumes:
- application/json
description: 调试事件系统,用于测试事件触发和处理
produces:
- application/json
responses:
"200":
description: 调试成功
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 调试事件系统
tags:
- 系统调试
/api/v1/decrypt:
post:
consumes:
- application/json
description: 使用密钥解密加密的数据
parameters:
- description: 解密请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.DecryptCommand'
produces:
- application/json
responses:
"200":
description: 解密成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未授权
schema:
additionalProperties: true
type: object
"500":
description: 解密失败
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 解密参数
tags:
- API调试
/api/v1/encrypt:
post:
consumes:
- application/json
description: 用于前端调试时加密API调用参数
parameters:
- description: 加密请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.EncryptCommand'
produces:
- application/json
responses:
"200":
description: 加密成功
schema:
$ref: '#/definitions/dto.EncryptResponse'
"400":
description: 请求参数错误
schema:
$ref: '#/definitions/dto.EncryptResponse'
"401":
description: 未授权
schema:
$ref: '#/definitions/dto.EncryptResponse'
summary: 加密参数
tags:
- API调试
/api/v1/finance/alipay/callback:
post:
consumes:
- application/x-www-form-urlencoded
description: 处理支付宝异步支付通知
produces:
- text/plain
responses:
"200":
description: success
schema:
type: string
"400":
description: fail
schema:
type: string
summary: 支付宝支付回调
tags:
- 支付管理
/api/v1/finance/alipay/return:
get:
consumes:
- application/x-www-form-urlencoded
description: 处理支付宝同步支付通知,跳转到前端成功页面
produces:
- text/html
responses:
"200":
description: 支付成功页面
schema:
type: string
"400":
description: 支付失败页面
schema:
type: string
summary: 支付宝同步回调
tags:
- 支付管理
/api/v1/finance/wallet:
get:
consumes:
- application/json
description: 获取当前用户的钱包详细信息
produces:
- application/json
responses:
"200":
description: 获取钱包信息成功
schema:
$ref: '#/definitions/responses.WalletResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 钱包不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取钱包信息
tags:
- 钱包管理
/api/v1/finance/wallet/alipay-order-status:
get:
consumes:
- application/json
description: 获取支付宝订单的当前状态,用于轮询查询
parameters:
- description: 商户订单号
in: query
name: out_trade_no
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取订单状态成功
schema:
$ref: '#/definitions/responses.AlipayOrderStatusResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 订单不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取支付宝订单状态
tags:
- 钱包管理
/api/v1/finance/wallet/alipay-recharge:
post:
consumes:
- application/json
description: 创建支付宝充值订单并返回支付链接
parameters:
- description: 充值请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateAlipayRechargeCommand'
produces:
- application/json
responses:
"200":
description: 创建充值订单成功
schema:
$ref: '#/definitions/responses.AlipayRechargeOrderResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建支付宝充值订单
tags:
- 钱包管理
/api/v1/finance/wallet/recharge-config:
get:
consumes:
- application/json
description: 获取当前环境的充值配置信息(最低充值金额、最高充值金额等)
produces:
- application/json
responses:
"200":
description: 获取充值配置成功
schema:
$ref: '#/definitions/responses.RechargeConfigResponse'
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取充值配置
tags:
- 钱包管理
/api/v1/finance/wallet/transactions:
get:
consumes:
- application/json
description: 获取当前用户的钱包交易记录列表,支持分页和筛选
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: '开始时间 (格式: 2006-01-02 15:04:05)'
in: query
name: start_time
type: string
- description: '结束时间 (格式: 2006-01-02 15:04:05)'
in: query
name: end_time
type: string
- description: 交易ID
in: query
name: transaction_id
type: string
- description: 产品名称
in: query
name: product_name
type: string
- description: 最小金额
in: query
name: min_amount
type: string
- description: 最大金额
in: query
name: max_amount
type: string
produces:
- application/json
responses:
"200":
description: 获取成功
schema:
$ref: '#/definitions/responses.WalletTransactionListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取用户钱包交易记录
tags:
- 钱包管理
/api/v1/form-config/{api_code}:
get:
consumes:
- application/json
description: 获取指定API的表单配置用于前端动态生成表单
parameters:
- description: API代码
in: path
name: api_code
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未授权
schema:
additionalProperties: true
type: object
"404":
description: API接口不存在
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取表单配置
tags:
- API调试
/api/v1/invoices/{application_id}/download:
get:
description: 下载指定发票的文件
parameters:
- description: 申请ID
in: path
name: application_id
required: true
type: string
produces:
- application/octet-stream
responses:
"200":
description: OK
schema:
type: file
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 下载发票文件
tags:
- 发票管理
/api/v1/invoices/apply:
post:
consumes:
- application/json
description: 用户申请开票
parameters:
- description: 申请开票请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/finance.ApplyInvoiceRequest'
produces:
- application/json
responses:
"200":
description: OK
schema:
allOf:
- $ref: '#/definitions/interfaces.APIResponse'
- properties:
data:
$ref: '#/definitions/dto.InvoiceApplicationResponse'
type: object
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 申请开票
tags:
- 发票管理
/api/v1/invoices/available-amount:
get:
description: 获取用户当前可开票的金额
produces:
- application/json
responses:
"200":
description: OK
schema:
allOf:
- $ref: '#/definitions/interfaces.APIResponse'
- properties:
data:
$ref: '#/definitions/dto.AvailableAmountResponse'
type: object
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 获取可开票金额
tags:
- 发票管理
/api/v1/invoices/info:
get:
description: 获取用户的发票信息
produces:
- application/json
responses:
"200":
description: OK
schema:
allOf:
- $ref: '#/definitions/interfaces.APIResponse'
- properties:
data:
$ref: '#/definitions/dto.InvoiceInfoResponse'
type: object
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 获取用户发票信息
tags:
- 发票管理
put:
consumes:
- application/json
description: 更新用户的发票信息
parameters:
- description: 更新发票信息请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/finance.UpdateInvoiceInfoRequest'
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/interfaces.APIResponse'
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 更新用户发票信息
tags:
- 发票管理
/api/v1/invoices/records:
get:
description: 获取用户的开票记录列表
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 状态筛选
in: query
name: status
type: string
produces:
- application/json
responses:
"200":
description: OK
schema:
allOf:
- $ref: '#/definitions/interfaces.APIResponse'
- properties:
data:
$ref: '#/definitions/dto.InvoiceRecordsResponse'
type: object
"400":
description: Bad Request
schema:
$ref: '#/definitions/interfaces.APIResponse'
"500":
description: Internal Server Error
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 获取用户开票记录
tags:
- 发票管理
/api/v1/my/api-calls:
get:
consumes:
- application/json
description: 获取当前用户的API调用记录列表支持分页和筛选
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: '开始时间 (格式: 2006-01-02 15:04:05)'
in: query
name: start_time
type: string
- description: '结束时间 (格式: 2006-01-02 15:04:05)'
in: query
name: end_time
type: string
- description: 交易ID
in: query
name: transaction_id
type: string
- description: 产品名称
in: query
name: product_name
type: string
- description: 状态 (pending/success/failed)
in: query
name: status
type: string
produces:
- application/json
responses:
"200":
description: 获取成功
schema:
$ref: '#/definitions/dto.ApiCallListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取用户API调用记录
tags:
- API管理
/api/v1/my/subscriptions:
get:
consumes:
- application/json
description: 获取当前用户的订阅列表
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 搜索关键词
in: query
name: keyword
type: string
- description: 产品名称
in: query
name: product_name
type: string
- description: 订阅开始时间
format: date-time
in: query
name: start_time
type: string
- description: 订阅结束时间
format: date-time
in: query
name: end_time
type: string
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取订阅列表成功
schema:
$ref: '#/definitions/responses.SubscriptionListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取我的订阅列表
tags:
- 我的订阅
/api/v1/my/subscriptions/{id}:
get:
consumes:
- application/json
description: 获取指定订阅的详细信息
parameters:
- description: 订阅ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取订阅详情成功
schema:
$ref: '#/definitions/responses.SubscriptionInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 订阅不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取我的订阅详情
tags:
- 我的订阅
/api/v1/my/subscriptions/{id}/usage:
get:
consumes:
- application/json
description: 获取指定订阅的使用情况统计
parameters:
- description: 订阅ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取使用情况成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 订阅不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取我的订阅使用情况
tags:
- 我的订阅
/api/v1/my/subscriptions/stats:
get:
consumes:
- application/json
description: 获取当前用户的订阅统计信息
produces:
- application/json
responses:
"200":
description: 获取订阅统计成功
schema:
$ref: '#/definitions/responses.SubscriptionStatsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取我的订阅统计
tags:
- 我的订阅
/api/v1/my/whitelist/{ip}:
delete:
consumes:
- application/json
description: 从当前用户的白名单中删除指定IP地址
parameters:
- description: IP地址
in: path
name: ip
required: true
type: string
produces:
- application/json
responses:
"200":
description: 删除白名单IP成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 删除白名单IP
tags:
- API管理
/api/v1/products:
get:
consumes:
- application/json
description: 分页获取可用的产品列表,支持筛选,默认只返回可见的产品
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 搜索关键词
in: query
name: keyword
type: string
- description: 分类ID
in: query
name: category_id
type: string
- description: 是否启用
in: query
name: is_enabled
type: boolean
- description: 是否可见
in: query
name: is_visible
type: boolean
- description: 是否组合包
in: query
name: is_package
type: boolean
- description: 是否已订阅(需要认证)
in: query
name: is_subscribed
type: boolean
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取产品列表成功
schema:
$ref: '#/definitions/responses.ProductListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取产品列表
tags:
- 数据大厅
/api/v1/products/{id}:
get:
consumes:
- application/json
description: 获取产品详细信息,用户端只能查看可见的产品
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
- description: 是否包含文档信息
in: query
name: with_document
type: boolean
produces:
- application/json
responses:
"200":
description: 获取产品详情成功
schema:
$ref: '#/definitions/responses.ProductInfoWithDocumentResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在或不可见
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取产品详情
tags:
- 数据大厅
/api/v1/products/{id}/api-config:
get:
consumes:
- application/json
description: 根据产品ID获取API配置信息
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取成功
schema:
$ref: '#/definitions/responses.ProductApiConfigResponse'
"400":
description: 请求参数错误
schema:
$ref: '#/definitions/interfaces.APIResponse'
"404":
description: 配置不存在
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 获取产品API配置
tags:
- 产品API配置
/api/v1/products/{id}/documentation:
get:
consumes:
- application/json
description: 获取指定产品的文档信息
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取产品文档成功
schema:
$ref: '#/definitions/responses.DocumentationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取产品文档
tags:
- 数据大厅
/api/v1/products/{id}/subscribe:
post:
consumes:
- application/json
description: 用户订阅指定产品
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 订阅成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 订阅产品
tags:
- 数据大厅
/api/v1/products/code/{product_code}/api-config:
get:
consumes:
- application/json
description: 根据产品代码获取API配置信息
parameters:
- description: 产品代码
in: path
name: product_code
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取成功
schema:
$ref: '#/definitions/responses.ProductApiConfigResponse'
"400":
description: 请求参数错误
schema:
$ref: '#/definitions/interfaces.APIResponse'
"404":
description: 配置不存在
schema:
$ref: '#/definitions/interfaces.APIResponse'
summary: 根据产品代码获取API配置
tags:
- 产品API配置
/api/v1/products/stats:
get:
consumes:
- application/json
description: 获取产品相关的统计信息
produces:
- application/json
responses:
"200":
description: 获取统计信息成功
schema:
$ref: '#/definitions/responses.ProductStatsResponse'
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取产品统计
tags:
- 数据大厅
/api/v1/users/admin/{user_id}:
get:
consumes:
- application/json
description: 管理员获取指定用户的详细信息
parameters:
- description: 用户ID
in: path
name: user_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 用户详情
schema:
$ref: '#/definitions/responses.UserDetailResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"403":
description: 权限不足
schema:
additionalProperties: true
type: object
"404":
description: 用户不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 管理员获取用户详情
tags:
- 用户管理
/api/v1/users/admin/list:
get:
consumes:
- application/json
description: 管理员查看用户列表,支持分页和筛选
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 手机号筛选
in: query
name: phone
type: string
- description: 用户类型筛选
enum:
- user
- admin
in: query
name: user_type
type: string
- description: 是否激活筛选
in: query
name: is_active
type: boolean
- description: 是否已认证筛选
in: query
name: is_certified
type: boolean
- description: 企业名称筛选
in: query
name: company_name
type: string
- description: 开始日期
format: date
in: query
name: start_date
type: string
- description: 结束日期
format: date
in: query
name: end_date
type: string
produces:
- application/json
responses:
"200":
description: 用户列表
schema:
$ref: '#/definitions/responses.UserListResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"403":
description: 权限不足
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 管理员查看用户列表
tags:
- 用户管理
/api/v1/users/admin/stats:
get:
consumes:
- application/json
description: 管理员获取用户相关的统计信息
produces:
- application/json
responses:
"200":
description: 用户统计信息
schema:
$ref: '#/definitions/responses.UserStatsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"403":
description: 权限不足
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取用户统计信息
tags:
- 用户管理
/api/v1/users/login-password:
post:
consumes:
- application/json
description: 使用手机号和密码进行用户登录返回JWT令牌
parameters:
- description: 密码登录请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.LoginWithPasswordCommand'
produces:
- application/json
responses:
"200":
description: 登录成功
schema:
$ref: '#/definitions/responses.LoginUserResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 用户名或密码错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 用户密码登录
tags:
- 用户认证
/api/v1/users/login-sms:
post:
consumes:
- application/json
description: 使用手机号和短信验证码进行用户登录返回JWT令牌
parameters:
- description: 短信登录请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.LoginWithSMSCommand'
produces:
- application/json
responses:
"200":
description: 登录成功
schema:
$ref: '#/definitions/responses.LoginUserResponse'
"400":
description: 请求参数错误或验证码无效
schema:
additionalProperties: true
type: object
"401":
description: 认证失败
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 用户短信验证码登录
tags:
- 用户认证
/api/v1/users/me:
get:
consumes:
- application/json
description: 根据JWT令牌获取当前登录用户的详细信息
produces:
- application/json
responses:
"200":
description: 用户信息
schema:
$ref: '#/definitions/responses.UserProfileResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 用户不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取当前用户信息
tags:
- 用户管理
/api/v1/users/me/password:
put:
consumes:
- application/json
description: 使用旧密码、新密码确认和验证码修改当前用户的密码
parameters:
- description: 修改密码请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.ChangePasswordCommand'
produces:
- application/json
responses:
"200":
description: 密码修改成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误或验证码无效
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 修改密码
tags:
- 用户管理
/api/v1/users/register:
post:
consumes:
- application/json
description: 使用手机号、密码和验证码进行用户注册,需要确认密码
parameters:
- description: 用户注册请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.RegisterUserCommand'
produces:
- application/json
responses:
"201":
description: 注册成功
schema:
$ref: '#/definitions/responses.RegisterUserResponse'
"400":
description: 请求参数错误或验证码无效
schema:
additionalProperties: true
type: object
"409":
description: 手机号已存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 用户注册
tags:
- 用户认证
/api/v1/users/reset-password:
post:
consumes:
- application/json
description: 使用手机号、验证码和新密码重置用户密码(忘记密码时使用)
parameters:
- description: 重置密码请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.ResetPasswordCommand'
produces:
- application/json
responses:
"200":
description: 密码重置成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误或验证码无效
schema:
additionalProperties: true
type: object
"404":
description: 用户不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 重置密码
tags:
- 用户认证
/api/v1/users/send-code:
post:
consumes:
- application/json
description: 向指定手机号发送验证码,支持注册、登录、修改密码等场景
parameters:
- description: 发送验证码请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.SendCodeCommand'
produces:
- application/json
responses:
"200":
description: 验证码发送成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"429":
description: 请求频率限制
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 发送短信验证码
tags:
- 用户认证
securityDefinitions:
Bearer:
description: Type "Bearer" followed by a space and JWT token.
in: header
name: Authorization
type: apiKey
swagger: "2.0"