Documentation
¶
Overview ¶
Package scene 设备场景
Index ¶
- func CheckControlPermission(c *gin.Context, sceneID int, userID int) (controlPermission bool, err error)
- func CheckSceneTasks(c *gin.Context, task entity.SceneTask) (err error)
- func CreateScene(c *gin.Context)
- func DeleteScene(c *gin.Context)
- func ExecuteScene(c *gin.Context)
- func InfoScene(c *gin.Context)
- func InitSceneRouter(r gin.IRouter)
- func ListScene(c *gin.Context)
- func ListSceneTaskLog(c *gin.Context)
- func UpdateScene(c *gin.Context)
- func WrapCondition(ctx *gin.Context, sceneID, userID int) (sceneCondition sceneCondition, canControlDevice bool, err error)
- func WrapDeviceItem(item *Item, req *http.Request) (err error)
- func WrapResponse(c *gin.Context, scene entity.Scene, resp *InfoSceneResp) (err error)
- func WrapScenes(c *gin.Context, scenes []entity.Scene, userID int, listType listType) (manualScenes []manualSceneInfo, autoRunScenes []autoRunSceneInfo, err error)
- type ConditionInfo
- type ControlSceneInfo
- type CreateSceneReq
- type DateLogInfo
- type DeviceInfo
- type ExecuteSceneReq
- type InfoSceneResp
- type Item
- type ListSceneTaskLogResp
- type ListSceneTaskReq
- type Scene
- type SceneInfo
- type SceneTaskInfo
- type SceneTaskLogInfo
- type TaskLogItem
- type UpdateSceneReq
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckControlPermission ¶
func CheckSceneTasks ¶
CheckSceneTasks 执行任务校验
func WrapCondition ¶
func WrapResponse ¶
Types ¶
type ConditionInfo ¶
type ConditionInfo struct {
entity.ConditionInfo
DeviceInfo `json:"device_info"`
}
ConditionInfo 场景触发条件信息
func WrapConditionInfo ¶
func WrapConditionInfo(c *gin.Context, condition entity.SceneCondition) (conditionInfo ConditionInfo, err error)
type ControlSceneInfo ¶
type ControlSceneInfo struct {
Name string `json:"name"`
Status sceneStatus `json:"status"`
}
ControlSceneInfo 执行任务类型为场景时,任务场景信息
type DateLogInfo ¶
type DateLogInfo struct {
Date string `json:"date"`
SceneTaskLogInfos []SceneTaskLogInfo `json:"items"`
}
DateLogInfo 某月的场景日志
func LogInfosGroupByDate ¶
func LogInfosGroupByDate(taskLogs []entity.TaskLog) (logInfos []DateLogInfo, err error)
type DeviceInfo ¶
type DeviceInfo struct {
Name string `json:"name"`
LocationName string `json:"location_name,omitempty"`
DepartmentName string `json:"department_name,omitempty"`
LogoURL string `json:"logo_url"`
Status deviceStatus `json:"status"`
}
DeviceInfo 执行任务类型为设备时,任务设备信息
func WrapDeviceInfo ¶
type ExecuteSceneReq ¶
type ExecuteSceneReq struct {
IsExecute bool `json:"is_execute"`
}
ExecuteSceneReq 场景执行接口请求参数
type InfoSceneResp ¶
type InfoSceneResp struct {
entity.Scene
CreateTime int64 `json:"create_time"`
EffectStartTime int64 `json:"effect_start_time"`
EffectEndTime int64 `json:"effect_end_time"`
SceneConditions []ConditionInfo `json:"scene_conditions"`
SceneTasks []SceneTaskInfo `json:"scene_tasks"`
AreaIDStr string `json:"area_id"`
}
InfoSceneResp 场景详情接口返回数据
type Item ¶
type Item struct {
ID int `json:"-"`
Type entity.TaskType `json:"type"`
LogoURL string `json:"logo_url"`
Status int `json:"status"`
// contains filtered or unexported fields
}
Item 场景执行任务信息
type ListSceneTaskReq ¶
ListSceneTaskReq 场景日志接口请求参数
type Scene ¶
type Scene struct {
ID int `json:"id"`
Name string `json:"name"`
ControlPermission bool `json:"control_permission"`
}
Scene 场景基础信息
type SceneInfo ¶
type SceneInfo struct {
entity.Scene
SceneConditions []entity.ConditionInfo `json:"scene_conditions"`
CreateTime int64 `json:"create_time"`
EffectStartTime int64 `json:"effect_start_time"`
EffectEndTime int64 `json:"effect_end_time"`
}
SceneInfo 新场景的配置信息
type SceneTaskInfo ¶
type SceneTaskInfo struct {
entity.SceneTask
ControlSceneInfo ControlSceneInfo `json:"control_scene_info"`
DeviceInfo `json:"device_info"`
}
SceneTaskInfo 场景执行任务信息
func WrapTaskInfo ¶
type SceneTaskLogInfo ¶
type SceneTaskLogInfo struct {
Name string `json:"name"`
Type entity.TaskType `json:"type"`
Result entity.TaskResultType `json:"result"`
FinishedAt int64 `json:"finished_at"`
Items []TaskLogItem `json:"items"`
}
SceneTaskLogInfo 场景日志信息
type TaskLogItem ¶
type TaskLogItem struct {
Name string `json:"name"`
Type entity.TaskType `json:"type"`
LocationName string `json:"location_name,omitempty"`
DepartmentName string `json:"department_name,omitempty"`
Result entity.TaskResultType `json:"result"`
}
TaskLogItem 场景执行任务信息
func WrapLogItems ¶
func WrapLogItems(taskLog entity.TaskLog) (taskItems []TaskLogItem)
type UpdateSceneReq ¶
type UpdateSceneReq struct {
DelConditionIds []int `json:"del_condition_ids"`
DelTaskIds []int `json:"del_task_ids"`
CreateSceneReq
}
UpdateSceneReq 修改场景接口请求参数
Click to show internal directories.
Click to hide internal directories.