2025-09-12 16:58:39 +08:00
|
|
|
|
definitions:
|
2025-09-12 17:43:42 +08:00
|
|
|
|
controller.Properties:
|
|
|
|
|
|
type: object
|
2025-09-12 16:58:39 +08:00
|
|
|
|
controller.Response:
|
|
|
|
|
|
properties:
|
|
|
|
|
|
code:
|
|
|
|
|
|
description: 业务状态码
|
|
|
|
|
|
type: integer
|
|
|
|
|
|
data:
|
|
|
|
|
|
description: 业务数据
|
|
|
|
|
|
message:
|
|
|
|
|
|
description: 提示信息
|
|
|
|
|
|
type: string
|
|
|
|
|
|
type: object
|
2025-09-12 17:43:42 +08:00
|
|
|
|
device.CreateDeviceRequest:
|
|
|
|
|
|
type: object
|
|
|
|
|
|
device.DeviceResponse:
|
|
|
|
|
|
properties:
|
|
|
|
|
|
created_at:
|
|
|
|
|
|
type: string
|
|
|
|
|
|
id:
|
|
|
|
|
|
type: integer
|
|
|
|
|
|
location:
|
|
|
|
|
|
type: string
|
|
|
|
|
|
name:
|
|
|
|
|
|
type: string
|
|
|
|
|
|
parent_id:
|
|
|
|
|
|
type: integer
|
|
|
|
|
|
properties:
|
|
|
|
|
|
$ref: '#/definitions/controller.Properties'
|
|
|
|
|
|
sub_type:
|
|
|
|
|
|
$ref: '#/definitions/models.DeviceSubType'
|
|
|
|
|
|
type:
|
|
|
|
|
|
$ref: '#/definitions/models.DeviceType'
|
|
|
|
|
|
updated_at:
|
|
|
|
|
|
type: string
|
|
|
|
|
|
type: object
|
|
|
|
|
|
device.UpdateDeviceRequest:
|
|
|
|
|
|
properties:
|
|
|
|
|
|
location:
|
|
|
|
|
|
type: string
|
|
|
|
|
|
name:
|
|
|
|
|
|
type: string
|
|
|
|
|
|
parent_id:
|
|
|
|
|
|
type: integer
|
|
|
|
|
|
properties:
|
|
|
|
|
|
$ref: '#/definitions/controller.Properties'
|
|
|
|
|
|
sub_type:
|
|
|
|
|
|
$ref: '#/definitions/models.DeviceSubType'
|
|
|
|
|
|
type:
|
|
|
|
|
|
$ref: '#/definitions/models.DeviceType'
|
|
|
|
|
|
required:
|
|
|
|
|
|
- name
|
|
|
|
|
|
- type
|
|
|
|
|
|
type: object
|
|
|
|
|
|
models.DeviceSubType:
|
|
|
|
|
|
enum:
|
|
|
|
|
|
- ""
|
|
|
|
|
|
- temperature
|
|
|
|
|
|
- humidity
|
|
|
|
|
|
- ammonia
|
|
|
|
|
|
- feed_valve
|
|
|
|
|
|
- fan
|
|
|
|
|
|
- water_curtain
|
|
|
|
|
|
type: string
|
|
|
|
|
|
x-enum-varnames:
|
|
|
|
|
|
- SubTypeNone
|
|
|
|
|
|
- SubTypeSensorTemp
|
|
|
|
|
|
- SubTypeSensorHumidity
|
|
|
|
|
|
- SubTypeSensorAmmonia
|
|
|
|
|
|
- SubTypeValveFeed
|
|
|
|
|
|
- SubTypeFan
|
|
|
|
|
|
- SubTypeWaterCurtain
|
|
|
|
|
|
models.DeviceType:
|
|
|
|
|
|
enum:
|
|
|
|
|
|
- area_controller
|
|
|
|
|
|
- device
|
|
|
|
|
|
type: string
|
|
|
|
|
|
x-enum-varnames:
|
|
|
|
|
|
- DeviceTypeAreaController
|
|
|
|
|
|
- DeviceTypeDevice
|
2025-09-12 16:58:39 +08:00
|
|
|
|
user.CreateUserRequest:
|
|
|
|
|
|
properties:
|
|
|
|
|
|
password:
|
|
|
|
|
|
example: password123
|
|
|
|
|
|
minLength: 6
|
|
|
|
|
|
type: string
|
|
|
|
|
|
username:
|
|
|
|
|
|
example: newuser
|
|
|
|
|
|
type: string
|
|
|
|
|
|
required:
|
|
|
|
|
|
- password
|
|
|
|
|
|
- username
|
|
|
|
|
|
type: object
|
|
|
|
|
|
user.CreateUserResponse:
|
|
|
|
|
|
properties:
|
|
|
|
|
|
id:
|
|
|
|
|
|
example: 1
|
|
|
|
|
|
type: integer
|
|
|
|
|
|
username:
|
|
|
|
|
|
example: newuser
|
|
|
|
|
|
type: string
|
|
|
|
|
|
type: object
|
|
|
|
|
|
user.LoginRequest:
|
|
|
|
|
|
properties:
|
|
|
|
|
|
password:
|
|
|
|
|
|
example: password123
|
|
|
|
|
|
type: string
|
|
|
|
|
|
username:
|
|
|
|
|
|
example: testuser
|
|
|
|
|
|
type: string
|
|
|
|
|
|
required:
|
|
|
|
|
|
- password
|
|
|
|
|
|
- username
|
|
|
|
|
|
type: object
|
|
|
|
|
|
user.LoginResponse:
|
|
|
|
|
|
properties:
|
|
|
|
|
|
id:
|
|
|
|
|
|
example: 1
|
|
|
|
|
|
type: integer
|
|
|
|
|
|
token:
|
|
|
|
|
|
example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
|
|
|
|
|
|
type: string
|
|
|
|
|
|
username:
|
|
|
|
|
|
example: testuser
|
|
|
|
|
|
type: string
|
|
|
|
|
|
type: object
|
|
|
|
|
|
info:
|
2025-09-12 20:32:29 +08:00
|
|
|
|
contact: {}
|
2025-09-12 16:58:39 +08:00
|
|
|
|
paths:
|
2025-09-12 17:43:42 +08:00
|
|
|
|
/devices:
|
|
|
|
|
|
get:
|
|
|
|
|
|
description: 获取系统中所有设备的列表
|
|
|
|
|
|
produces:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
responses:
|
|
|
|
|
|
"200":
|
|
|
|
|
|
description: 业务失败,具体错误码和信息见响应体
|
|
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/controller.Response'
|
|
|
|
|
|
summary: 获取设备列表
|
|
|
|
|
|
tags:
|
|
|
|
|
|
- 设备管理
|
2025-09-12 16:58:39 +08:00
|
|
|
|
post:
|
|
|
|
|
|
consumes:
|
|
|
|
|
|
- application/json
|
2025-09-12 17:43:42 +08:00
|
|
|
|
description: 根据提供的信息创建一个新设备
|
2025-09-12 16:58:39 +08:00
|
|
|
|
parameters:
|
2025-09-12 17:43:42 +08:00
|
|
|
|
- description: 设备信息
|
2025-09-12 16:58:39 +08:00
|
|
|
|
in: body
|
2025-09-12 17:43:42 +08:00
|
|
|
|
name: device
|
2025-09-12 16:58:39 +08:00
|
|
|
|
required: true
|
|
|
|
|
|
schema:
|
2025-09-12 17:43:42 +08:00
|
|
|
|
$ref: '#/definitions/device.CreateDeviceRequest'
|
2025-09-12 16:58:39 +08:00
|
|
|
|
produces:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
responses:
|
|
|
|
|
|
"200":
|
2025-09-12 17:43:42 +08:00
|
|
|
|
description: 业务失败,具体错误码和信息见响应体
|
2025-09-12 16:58:39 +08:00
|
|
|
|
schema:
|
2025-09-12 17:43:42 +08:00
|
|
|
|
$ref: '#/definitions/controller.Response'
|
|
|
|
|
|
summary: 创建新设备
|
|
|
|
|
|
tags:
|
|
|
|
|
|
- 设备管理
|
|
|
|
|
|
/devices/{id}:
|
|
|
|
|
|
delete:
|
|
|
|
|
|
description: 根据设备ID删除一个设备(软删除)
|
|
|
|
|
|
parameters:
|
|
|
|
|
|
- description: 设备ID
|
|
|
|
|
|
in: path
|
|
|
|
|
|
name: id
|
|
|
|
|
|
required: true
|
|
|
|
|
|
type: string
|
|
|
|
|
|
produces:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
responses:
|
|
|
|
|
|
"200":
|
|
|
|
|
|
description: 业务失败,具体错误码和信息见响应体
|
2025-09-12 16:58:39 +08:00
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/controller.Response'
|
2025-09-12 17:43:42 +08:00
|
|
|
|
summary: 删除设备
|
|
|
|
|
|
tags:
|
|
|
|
|
|
- 设备管理
|
|
|
|
|
|
get:
|
|
|
|
|
|
description: 根据设备ID获取单个设备的详细信息
|
|
|
|
|
|
parameters:
|
|
|
|
|
|
- description: 设备ID
|
|
|
|
|
|
in: path
|
|
|
|
|
|
name: id
|
|
|
|
|
|
required: true
|
|
|
|
|
|
type: string
|
|
|
|
|
|
produces:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
responses:
|
|
|
|
|
|
"200":
|
|
|
|
|
|
description: 业务失败,具体错误码和信息见响应体
|
2025-09-12 16:58:39 +08:00
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/controller.Response'
|
2025-09-12 17:43:42 +08:00
|
|
|
|
summary: 获取设备信息
|
|
|
|
|
|
tags:
|
|
|
|
|
|
- 设备管理
|
|
|
|
|
|
put:
|
|
|
|
|
|
consumes:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
description: 根据设备ID更新一个已存在的设备信息
|
|
|
|
|
|
parameters:
|
|
|
|
|
|
- description: 设备ID
|
|
|
|
|
|
in: path
|
|
|
|
|
|
name: id
|
|
|
|
|
|
required: true
|
|
|
|
|
|
type: string
|
|
|
|
|
|
- description: 要更新的设备信息
|
|
|
|
|
|
in: body
|
|
|
|
|
|
name: device
|
|
|
|
|
|
required: true
|
|
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/device.UpdateDeviceRequest'
|
|
|
|
|
|
produces:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
responses:
|
|
|
|
|
|
"200":
|
|
|
|
|
|
description: 业务失败,具体错误码和信息见响应体
|
|
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/controller.Response'
|
|
|
|
|
|
summary: 更新设备信息
|
|
|
|
|
|
tags:
|
|
|
|
|
|
- 设备管理
|
|
|
|
|
|
/users:
|
|
|
|
|
|
post:
|
|
|
|
|
|
consumes:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
description: 根据用户名和密码创建一个新的系统用户。
|
|
|
|
|
|
parameters:
|
|
|
|
|
|
- description: 用户信息
|
|
|
|
|
|
in: body
|
|
|
|
|
|
name: user
|
|
|
|
|
|
required: true
|
|
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/user.CreateUserRequest'
|
|
|
|
|
|
produces:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
responses:
|
|
|
|
|
|
"200":
|
|
|
|
|
|
description: 业务失败,具体错误码和信息见响应体(例如400, 409, 500)
|
2025-09-12 16:58:39 +08:00
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/controller.Response'
|
|
|
|
|
|
summary: 创建新用户
|
|
|
|
|
|
tags:
|
|
|
|
|
|
- 用户管理
|
|
|
|
|
|
/users/login:
|
|
|
|
|
|
post:
|
|
|
|
|
|
consumes:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
description: 用户使用用户名和密码登录,成功后返回 JWT 令牌。
|
|
|
|
|
|
parameters:
|
|
|
|
|
|
- description: 登录凭证
|
|
|
|
|
|
in: body
|
|
|
|
|
|
name: credentials
|
|
|
|
|
|
required: true
|
|
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/user.LoginRequest'
|
|
|
|
|
|
produces:
|
|
|
|
|
|
- application/json
|
|
|
|
|
|
responses:
|
|
|
|
|
|
"200":
|
2025-09-12 17:43:42 +08:00
|
|
|
|
description: 业务失败,具体错误码和信息见响应体(例如400, 401, 500)
|
2025-09-12 16:58:39 +08:00
|
|
|
|
schema:
|
|
|
|
|
|
$ref: '#/definitions/controller.Response'
|
|
|
|
|
|
summary: 用户登录
|
|
|
|
|
|
tags:
|
|
|
|
|
|
- 用户管理
|
|
|
|
|
|
swagger: "2.0"
|