80 lines
4.1 KiB
Go
80 lines
4.1 KiB
Go
|
package schema
|
|||
|
|
|||
|
import (
|
|||
|
"time"
|
|||
|
|
|||
|
"ifms/pkg/util"
|
|||
|
)
|
|||
|
|
|||
|
// 设备操作日志表
|
|||
|
type DeviceControlLog struct {
|
|||
|
ID int64 `json:"id" gorm:"primaryKey;autoIncrement;comment:Unique ID;"` // Unique ID
|
|||
|
DeviceID string `json:"device_id" gorm:"size:32;index;comment:设备ID;"` // 设备ID
|
|||
|
DeviceModel string `json:"device_model" gorm:"size:64;comment:设备型号;"` // 设备型号
|
|||
|
DeviceName string `json:"device_name" gorm:"size:64;comment:设备名称;"` // 设备名称
|
|||
|
RelatedPondIds string `json:"related_pond_ids" gorm:"type:text;comment:关联鱼池/车间ID;"` // 关联鱼池/车间ID
|
|||
|
RelatedPond string `json:"related_pond" gorm:"type:text;comment:关联鱼池/车间;"` // 关联鱼池/车间
|
|||
|
OperatorUserID int `json:"operator_user_id" gorm:"index;comment:操作人ID;"` // 操作人ID
|
|||
|
Operator string `json:"operator" gorm:"size:32;comment:操作人;"` // 操作人
|
|||
|
Command string `json:"command" gorm:"type:text;comment:下达指令;"` // 下达指令
|
|||
|
CommandStatus bool `json:"command_status" gorm:"comment:指令状态(true=成功,false=失败);"` // 指令状态(true=成功,false=失败)
|
|||
|
Type int `json:"type" gorm:"comment:设备类型(1增氧机、2投喂机、3水循环);"` // 设备类型(1增氧机、2投喂机、3水循环)
|
|||
|
CreatedAt time.Time `json:"created_at" gorm:"index;comment:Create time;"` // Create time
|
|||
|
UpdatedAt time.Time `json:"updated_at" gorm:"index;comment:Update time;"` // Update time
|
|||
|
}
|
|||
|
|
|||
|
// Defining the query parameters for the `DeviceControlLog` struct.
|
|||
|
type DeviceControlLogQueryParam struct {
|
|||
|
util.PaginationParam
|
|||
|
Type *int `form:"type"` // 设备类型(1增氧机、2投喂机、3水循环)
|
|||
|
DeviceName string `form:"device_name"` // 设备名称(模糊查询)
|
|||
|
}
|
|||
|
|
|||
|
// Defining the query options for the `DeviceControlLog` struct.
|
|||
|
type DeviceControlLogQueryOptions struct {
|
|||
|
util.QueryOptions
|
|||
|
}
|
|||
|
|
|||
|
// Defining the query result for the `DeviceControlLog` struct.
|
|||
|
type DeviceControlLogQueryResult struct {
|
|||
|
Data DeviceControlLogs
|
|||
|
PageResult *util.PaginationResult
|
|||
|
}
|
|||
|
|
|||
|
// Defining the slice of `DeviceControlLog` struct.
|
|||
|
type DeviceControlLogs []*DeviceControlLog
|
|||
|
|
|||
|
// Defining the data structure for creating a `DeviceControlLog` struct.
|
|||
|
type DeviceControlLogForm struct {
|
|||
|
DeviceID string `json:"device_id" binding:"required,max=32"` // 设备ID
|
|||
|
DeviceModel string `json:"device_model" binding:"required,max=64"` // 设备型号
|
|||
|
DeviceName string `json:"device_name" binding:"required,max=64"` // 设备名称
|
|||
|
RelatedPondIds string `json:"related_pond_ids" binding:"required"` // 关联鱼池/车间ID
|
|||
|
RelatedPond string `json:"related_pond" binding:"required"` // 关联鱼池/车间
|
|||
|
OperatorUserID int `json:"operator_user_id" binding:"required"` // 操作人ID
|
|||
|
Operator string `json:"operator" binding:"required,max=32"` // 操作人
|
|||
|
Command string `json:"command" binding:"required"` // 下达指令
|
|||
|
CommandStatus bool `json:"command_status" binding:"required"` // 指令状态(true=成功,false=失败)
|
|||
|
Type int `json:"type" binding:"required"` // 设备类型(1增氧机、2投喂机、3水循环)
|
|||
|
}
|
|||
|
|
|||
|
// A validation function for the `DeviceControlLogForm` struct.
|
|||
|
func (a *DeviceControlLogForm) Validate() error {
|
|||
|
return nil
|
|||
|
}
|
|||
|
|
|||
|
// Convert `DeviceControlLogForm` to `DeviceControlLog` object.
|
|||
|
func (a *DeviceControlLogForm) FillTo(deviceControlLog *DeviceControlLog) error {
|
|||
|
deviceControlLog.DeviceID = a.DeviceID
|
|||
|
deviceControlLog.DeviceModel = a.DeviceModel
|
|||
|
deviceControlLog.DeviceName = a.DeviceName
|
|||
|
deviceControlLog.RelatedPondIds = a.RelatedPondIds
|
|||
|
deviceControlLog.RelatedPond = a.RelatedPond
|
|||
|
deviceControlLog.OperatorUserID = a.OperatorUserID
|
|||
|
deviceControlLog.Operator = a.Operator
|
|||
|
deviceControlLog.Command = a.Command
|
|||
|
deviceControlLog.CommandStatus = a.CommandStatus
|
|||
|
deviceControlLog.Type = a.Type
|
|||
|
return nil
|
|||
|
}
|