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.