权限组,继续完成中

This commit is contained in:
wyh 2023-11-22 18:11:50 +08:00
parent 1a01dfedad
commit 72a13a3a49
2 changed files with 143 additions and 0 deletions

View File

@ -0,0 +1,30 @@
package model
type PermissionGroupCreateRes struct {
Hikvision
Data PermissionGroup `json:"data"`
}
type PermissionGroup struct {
GroupId string `json:"groupId"`
GroupName string `json:"groupName"`
CreateTime string `json:"createTime,omitempty"` //2020-05-18T11:21:13+08:00
UpdateTime string `json:"updateTime,omitempty"`
}
type PermissionGroupDeleteRes struct {
Hikvision
Data struct {
StatisticsID string `json:"statisticsId"`
} `json:"data"`
}
type PermissionGroupList struct {
Hikvision
Data struct {
PageNo int `json:"pageNo"`
PageSize int `json:"pageSize"`
Total int `json:"total"`
Rows []PermissionGroup `json:"rows"`
} `json:"data"`
}

113
iot/permission-iot.go Normal file
View File

@ -0,0 +1,113 @@
package iot
import (
"encoding/json"
"fmt"
"myschools.me/suguo/hikvision/iot/model"
)
const (
permission_group = "/api/v1/open/accessControl/permissionGroups"
permission_group_create = permission_group + "/create"
permission_group_update = permission_group + "/update"
permission_group_delete = permission_group + "/delete"
permission_group_list = permission_group + "/actions/page"
permission_group_addperson = permission_group + "/actions/addPersons"
permission_group_removePersons = permission_group + "/actions/removePersons"
permission_group_getEmployeeNos = permission_group + "/actions/getEmployeeNos"
permission_group_addDevices = permission_group + "/actions/addDevices"
permission_group_removeDevices = permission_group + "/actions/removeDevices"
permission_group_getDeviceSerials = permission_group + "/actions/getDeviceSerials"
permission_group_personPermission = "/api/v1/open/accessControl/personPermission/get"
)
// 权限组新增
func PermissionGroupCreate(groupname string) (*model.PermissionGroupCreateRes, error) {
req := &struct {
GroupName string `json:"groupName"`
}{
GroupName: groupname,
}
resp, err := hikvisionRequest("POST", permission_group_create, req)
if err != nil {
return nil, err
}
var result = &model.PermissionGroupCreateRes{}
if err := json.Unmarshal(resp, &result); err != nil {
return nil, err
}
return result, nil
}
// 权限组更新
func PermissionGroupUpdate(groupid, groupname string) (*model.Hikvision, error) {
req := &struct {
GroupID string `json:"groupId"`
GroupName string `json:"groupName"`
}{
GroupID: groupid,
GroupName: groupname,
}
resp, err := hikvisionRequest("POST", permission_group_update, req)
if err != nil {
return nil, err
}
var result = &model.Hikvision{}
if err := json.Unmarshal(resp, &result); err != nil {
return nil, err
}
return result, nil
}
// 权限组删除
func PermissionGroupDelete(groupid string) (*model.PermissionGroupDeleteRes, error) {
resp, err := hikvisionRequest("POST", fmt.Sprintf("%s?groupId=%s", permission_group_delete, groupid), nil)
if err != nil {
return nil, err
}
var result = &model.PermissionGroupDeleteRes{}
if err := json.Unmarshal(resp, &result); err != nil {
return nil, err
}
return result, nil
}
// 获取权限组列表
func PermissionGroupList(pageno, pagesize int) (*model.PermissionGroupList, error) {
req := &struct {
PageNo int `json:"pageNo"`
PageSize int `json:"pageSize"`
}{
PageNo: pageno,
PageSize: pagesize,
}
resp, err := hikvisionRequest("POST", permission_group_list, req)
if err != nil {
return nil, err
}
var result = &model.PermissionGroupList{}
if err := json.Unmarshal(resp, &result); err != nil {
return nil, err
}
return result, nil
}
// 权限组绑定人员
// 权限组解绑人员
// 权限组获取人员编号列表
// 权限组绑定设备
// 权限组解绑设备
// 权限组获取设备序列号列表
// 人员权限信息查询