Files
tyapi-server/docs/swagger/swagger.yaml
2025-09-01 20:46:56 +08:00

6668 lines
165 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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.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.CreateTagCommand:
properties:
color:
type: string
name:
maxLength: 30
minLength: 1
type: string
required:
- color
- 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.SchedulePublishCommand:
properties:
scheduled_time:
type: string
required:
- scheduled_time
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.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
commands.UpdateTagCommand:
properties:
color:
type: string
name:
maxLength: 30
minLength: 1
type: string
required:
- color
- name
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.ArticleListItemResponse:
properties:
category:
$ref: '#/definitions/tyapi-server_internal_application_article_dto_responses.CategoryInfoResponse'
category_id:
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.ArticleListItemResponse'
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.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.TagListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.TagInfoResponse'
type: array
total:
type: integer
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_commands.CreateCategoryCommand:
properties:
description:
maxLength: 200
type: string
name:
maxLength: 50
minLength: 1
type: string
required:
- name
type: object
tyapi-server_internal_application_article_dto_commands.UpdateCategoryCommand:
properties:
description:
maxLength: 200
type: string
name:
maxLength: 50
minLength: 1
type: string
required:
- name
type: object
tyapi-server_internal_application_article_dto_responses.CategoryInfoResponse:
properties:
created_at:
type: string
description:
type: string
id:
type: string
name:
type: string
sort_order:
type: integer
type: object
tyapi-server_internal_application_article_dto_responses.CategoryListResponse:
properties:
items:
items:
$ref: '#/definitions/tyapi-server_internal_application_article_dto_responses.CategoryInfoResponse'
type: array
total:
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_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
tyapi-server_internal_application_product_dto_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
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.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
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/article-categories:
post:
consumes:
- application/json
description: 创建新的文章分类
parameters:
- description: 创建分类请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/tyapi-server_internal_application_article_dto_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/article-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:
- 文章分类-管理端
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/tyapi-server_internal_application_article_dto_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/article-tags:
post:
consumes:
- application/json
description: 创建新的文章标签
parameters:
- description: 创建标签请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateTagCommand'
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/article-tags/{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:
- 文章标签-管理端
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.UpdateTagCommand'
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/articles:
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/admin/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:
- 文章管理-管理端
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/admin/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/admin/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/admin/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/admin/articles/{id}/schedule-publish:
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.SchedulePublishCommand'
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/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/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/tyapi-server_internal_application_product_dto_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/tyapi-server_internal_application_product_dto_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/tyapi-server_internal_application_product_dto_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/article-categories:
get:
consumes:
- application/json
description: 获取所有文章分类
produces:
- application/json
responses:
"200":
description: 获取分类列表成功
schema:
$ref: '#/definitions/tyapi-server_internal_application_article_dto_responses.CategoryListResponse'
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取分类列表
tags:
- 文章分类-用户端
/api/v1/article-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_article_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/article-tags:
get:
consumes:
- application/json
description: 获取所有文章标签
produces:
- application/json
responses:
"200":
description: 获取标签列表成功
schema:
$ref: '#/definitions/responses.TagListResponse'
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取标签列表
tags:
- 文章标签-用户端
/api/v1/article-tags/{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/responses.TagInfoResponse'
"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/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: tag_id
type: string
- description: 标题关键词
in: query
name: title
type: string
- description: 摘要关键词
in: query
name: summary
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
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取文章列表
tags:
- 文章管理-用户端
/api/v1/articles/{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/responses.ArticleInfoResponse'
"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/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/tyapi-server_internal_application_product_dto_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"