123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464 |
- openapi: 3.0.0
- info:
- title: 飞鸟农业API文档
- version: 1.0.0
- description: 飞鸟农业平台后端API接口文档
- servers:
- - url: http://localhost:3000
- description: 开发环境
- paths:
- /admin/articles:
- get:
- tags:
- - Articles
- summary: GetArticles
- description: 获取文章列表,支持分页和多条件筛选
- parameters:
- - name: currentPage=1
- in: query
- required: false
- schema:
- type: number
- description: 当前页码,默认为1
- - name: pageSize=10
- in: query
- required: false
- schema:
- type: number
- description: 每页显示数量,默认为10
- - name: title
- in: query
- required: false
- schema:
- type: string
- description: 标题搜索关键词(模糊匹配)
- - name: cropIds
- in: query
- required: false
- schema:
- type: string|array
- description: 作物筛选ID,支持逗号分隔的多个ID或数组形式
- - name: categoryId
- in: query
- required: false
- schema:
- type: number
- description: 用户分类ID,根据用户传递的category参数值进行精确匹配
- - name: isRecommended
- in: query
- required: false
- schema:
- type: number
- description: 推荐筛选,0-非推荐文章,1-推荐文章
- responses:
- '200':
- description: 成功响应
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '400':
- description: 请求参数错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '404':
- description: 资源未找到
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '500':
- description: 服务器内部错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- post:
- tags:
- - Articles
- summary: CreateArticle
- description: 创建新的文章,支持富文本内容和图片
- parameters:
- - name: title
- in: query
- required: true
- schema:
- type: string
- description: 文章标题(必填,1-500字符)
- - name: content
- in: query
- required: true
- schema:
- type: string
- description: 文章内容(必填,富文本格式,最大5MB)
- - name: type
- in: query
- required: false
- schema:
- type: number
- description: 文章类型
- - name: img
- in: query
- required: false
- schema:
- type: string
- description: 文章图片URL
- - name: date
- in: query
- required: false
- schema:
- type: date
- description: 文章发布日期
- - name: author
- in: query
- required: false
- schema:
- type: string
- description: 作者
- - name: category
- in: query
- required: false
- schema:
- type: number
- description: 用户分类ID(用户传递的参数)
- - name: crop
- in: query
- required: false
- schema:
- type: number
- description: 作物分类ID
- - name: isRecommended=0
- in: query
- required: false
- schema:
- type: number
- description: 是否推荐,0-不推荐,1-推荐
- - name: subtitle
- in: query
- required: false
- schema:
- type: string
- description: 副标题(最大200字符)
- - name: seoKeyword
- in: query
- required: false
- schema:
- type: string
- description: SEO关键词
- - name: seoDescription
- in: query
- required: false
- schema:
- type: string
- description: SEO描述
- responses:
- '200':
- description: 成功响应
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '400':
- description: 请求参数错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '404':
- description: 资源未找到
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '500':
- description: 服务器内部错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- requestBody:
- required: true
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Article'
- /admin/articles/:id:
- get:
- tags:
- - Articles
- summary: GetArticleById
- description: 根据文章ID获取文章详细信息
- parameters:
- - name: id
- in: query
- required: true
- schema:
- type: number
- description: 文章ID(路径参数)
- responses:
- '200':
- description: 成功响应
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '400':
- description: 请求参数错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '404':
- description: 资源未找到
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '500':
- description: 服务器内部错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- delete:
- tags:
- - Articles
- summary: DeleteArticle
- description: 根据文章ID删除文章
- parameters:
- - name: id
- in: query
- required: true
- schema:
- type: number
- description: 文章ID(路径参数)
- responses:
- '200':
- description: 成功响应
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '400':
- description: 请求参数错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '404':
- description: 资源未找到
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '500':
- description: 服务器内部错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- put:
- tags:
- - Articles
- summary: UpdateArticle
- description: 根据文章ID更新文章信息
- parameters:
- - name: id
- in: query
- required: true
- schema:
- type: number
- description: 文章ID(路径参数)
- - name: title
- in: query
- required: false
- schema:
- type: string
- description: 文章标题(1-500字符)
- - name: content
- in: query
- required: false
- schema:
- type: string
- description: 文章内容(富文本格式,最大5MB)
- - name: type
- in: query
- required: false
- schema:
- type: number
- description: 文章类型
- - name: img
- in: query
- required: false
- schema:
- type: string
- description: 文章图片URL
- - name: date
- in: query
- required: false
- schema:
- type: date
- description: 文章发布日期
- - name: author
- in: query
- required: false
- schema:
- type: string
- description: 作者
- - name: category
- in: query
- required: false
- schema:
- type: number
- description: 用户分类ID
- - name: crop
- in: query
- required: false
- schema:
- type: number
- description: 作物分类ID
- - name: isRecommended
- in: query
- required: false
- schema:
- type: number
- description: 是否推荐,0-不推荐,1-推荐
- - name: subtitle
- in: query
- required: false
- schema:
- type: string
- description: 副标题(最大200字符)
- - name: seoKeyword
- in: query
- required: false
- schema:
- type: string
- description: SEO关键词
- - name: seoDescription
- in: query
- required: false
- schema:
- type: string
- description: SEO描述
- responses:
- '200':
- description: 成功响应
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '400':
- description: 请求参数错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '404':
- description: 资源未找到
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- '500':
- description: 服务器内部错误
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ApiResponse'
- requestBody:
- required: true
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Article'
- components:
- schemas:
- Article:
- type: object
- properties:
- id:
- type: integer
- description: 文章ID
- title:
- type: string
- description: 文章标题
- subtitle:
- type: string
- description: 文章副标题
- content:
- type: string
- description: 文章内容
- type:
- type: integer
- description: 文章类型
- img:
- type: string
- description: 文章图片URL
- date:
- type: string
- format: date-time
- description: 文章日期
- author:
- type: string
- description: 作者
- category:
- type: integer
- description: 用户分类ID
- crop:
- type: integer
- description: 作物分类ID
- isRecommended:
- type: integer
- enum:
- - 0
- - 1
- description: 是否推荐
- seoKeyword:
- type: string
- description: SEO关键词
- seoDescription:
- type: string
- description: SEO描述
- createdAt:
- type: string
- format: date-time
- description: 创建时间
- updatedAt:
- type: string
- format: date-time
- description: 更新时间
- cropInfo:
- type: object
- properties:
- id:
- type: integer
- description: 作物ID
- name:
- type: string
- description: 作物名称
- level:
- type: integer
- description: 作物层级
- parentId:
- type: integer
- description: 父级作物ID
- ApiResponse:
- type: object
- properties:
- status:
- type: boolean
- description: 请求状态
- message:
- type: string
- description: 响应消息
- data:
- type: object
- description: 响应数据
- errors:
- type: array
- items:
- type: string
- description: 错误信息
|