解析device和task的配置全部用内置方法处理

This commit is contained in:
2025-09-27 00:58:22 +08:00
parent 29fa23ba36
commit aed665b6b0
8 changed files with 46 additions and 15 deletions

View File

@@ -1,6 +1,8 @@
package models
import (
"encoding/json"
"errors"
"fmt"
"sort"
"time"
@@ -172,3 +174,16 @@ type Task struct {
func (Task) TableName() string {
return "tasks"
}
// ParseParameters 解析 JSON 属性到一个具体的结构体中。
// 调用方需要传入一个指向目标结构体实例的指针。
// 示例:
//
// var param LoraParameters
// if err := task.ParseParameters(&param); err != nil { ... }
func (t Task) ParseParameters(v interface{}) error {
if t.Parameters == nil {
return errors.New("设备属性为空,无法解析")
}
return json.Unmarshal(t.Parameters, v)
}