获取设备信息

master
李静 2023-07-06 18:07:25 +08:00
parent 4300caaaaa
commit 37cd938279
2 changed files with 82 additions and 1 deletions

View File

@ -0,0 +1,71 @@
package equipment
func NewSprayEquipment(id string) *SprayEquipment {
return &SprayEquipment{
id: id,
speed1: 0,
speed2: 0,
yv1: 0,
yv2: 0,
isRunning: false,
status: 0,
}
}
type SprayEquipment struct {
id string // 设备ID
speed1 uint8 // 电磁阀1对应的喷雾量(百分比): 0-100
speed2 uint8 // 电磁阀2对应的喷雾量(百分比): 0-100
yv1 uint8 // 电磁阀1的状态: 0 停止, 1 启动
yv2 uint8 // 电磁阀2的状态: 0 停止, 1 启动
isRunning bool // 是否运行中
status uint8 // 连接状态: 0 未知, 1 在线, 2 离线
}
func (s *SprayEquipment) GetId() string {
return s.id
}
func (s *SprayEquipment) SetSpeed1(speed uint8) {
s.speed1 = speed
}
func (s *SprayEquipment) GetSpeed1() uint8 {
return s.speed1
}
func (s *SprayEquipment) SetSpeed2(speed uint8) {
s.speed2 = speed
}
func (s *SprayEquipment) GetSpeed2() uint8 {
return s.speed2
}
func (s *SprayEquipment) SetYv1(yv1 uint8) {
s.yv1 = yv1
}
func (s *SprayEquipment) GetYv1() uint8 {
return s.yv1
}
func (s *SprayEquipment) SetYv2(yv2 uint8) {
s.yv2 = yv2
}
func (s *SprayEquipment) GetYv2() uint8 {
return s.yv2
}
func (s *SprayEquipment) SetIsRunning(isRunning bool) {
s.isRunning = isRunning
}
func (s *SprayEquipment) GetIsRunning() bool {
return s.isRunning
}
func (s *SprayEquipment) GetStatus() uint8 {
return s.status
}

12
main.go
View File

@ -5,6 +5,7 @@ import (
"encoding/json"
"flag"
"fmt"
"iot-spray-equipment/equipment"
"iot-spray-equipment/mqttx"
"net/http"
"os"
@ -18,6 +19,7 @@ import (
var (
configFilePath string
sprayEquipment = equipment.NewSprayEquipment("DC73AEE4CD274074BD9D01BCEE379A98")
)
func init() {
@ -113,7 +115,15 @@ func main() {
}
func StatusHandler(c *gin.Context) {
//
c.JSON(http.StatusOK, gin.H{
"id": sprayEquipment.GetId(),
"speed1": sprayEquipment.GetSpeed1(),
"speed2": sprayEquipment.GetSpeed2(),
"yv1": sprayEquipment.GetYv1(),
"yv2": sprayEquipment.GetYv2(),
"is_running": sprayEquipment.GetIsRunning(),
"status": sprayEquipment.GetStatus(),
})
}
func MqttHandler(c *gin.Context) {