package controllers
|
|
import (
|
"basic.com/dbapi.git"
|
"webserver/extend/code"
|
"webserver/extend/util"
|
"github.com/gin-gonic/gin"
|
"strconv"
|
)
|
|
type AreaController struct {
|
}
|
|
//type TreeMenu struct {
|
// Id string `json:"id" `
|
// Type string `json:"type"` // 如果不是MENU,区分本地摄像机(分析和监控)以及国标摄像机
|
// Name string `json:"name"`
|
// Areanodes []TreeMenu `json:"children"`
|
//}
|
//
|
//type TreeNode struct {
|
// Id int
|
// Name string
|
// Parentid int
|
//}
|
|
type AreaVo struct {
|
Id int `json:"id"`
|
ParentId int `json:"parentId"`
|
Name string `json:"name"`
|
}
|
|
// @Summary 显示树形结构
|
// @Description 显示左侧所有区域和摄像机
|
// @Produce json
|
// @Tags menu
|
// @Param parentid query int true "区域的id"
|
// @Success 200 {string} json "{"code":200, msg:"目录结构数据"}"
|
// @Failure 500 {string} json "{"code":500, msg:"返回错误信息"}"
|
// @Router /data/api-v/area/localmenu [get]
|
func (ac AreaController) CameraTree(c *gin.Context) {
|
parentIdStr := c.Query("parentid")
|
searchTypeStr := c.Query("searchType")
|
cameraName := c.Query("cameraName")
|
|
var api dbapi.AreaApi
|
arr := api.GetLocalCameraTree(parentIdStr, searchTypeStr, cameraName)
|
util.ResponseFormat(c, code.Success, arr)
|
}
|
|
// @Summary 添加menu的区域
|
// @Description 添加目录上区域
|
// @Produce json
|
// @Tags menu
|
// @Param name query string true "区域名字"
|
// @Param parentId query int true "上一级父id"
|
// @Success 200 {string} json "{"code":200, data:"添加的区域信息",msg:"请求成功", success:true}"
|
// @Failure 200 {string} json "{"code":"错误码", data:"出错信息",msg:"请求失败", success:false}"
|
// @Router /data/api-v/area/add [post]
|
func (ac AreaController) AreaAdd(c *gin.Context) {
|
var api dbapi.AreaApi
|
|
name := c.PostForm("name")
|
parentId, err := strconv.Atoi(c.PostForm("parentId"))
|
if err !=nil {
|
util.ResponseFormat(c, code.RequestParamError, "parentId参数错误")
|
return
|
}
|
var model = AreaVo{
|
Name:name,
|
ParentId:parentId,
|
}
|
paramBody := util.Struct2Map(model)
|
if api.AreaAdd(paramBody) {
|
util.ResponseFormat(c,code.Success,"保存成功")
|
} else {
|
util.ResponseFormat(c,code.ComError,"保存失败")
|
}
|
}
|
|
// @Summary 修改名字
|
// @Description 修改区域名字
|
// @Accept json
|
// @Produce json
|
// @Tags menu
|
// @Param id path int true "区域id"
|
// @Param area body controllers.AreaVo true "区域结构"
|
// @Success 200 {string} json "{"code":200, data:"",msg:"请求成功", success:true}"
|
// @Failure 200 {string} json "{"code":"错误码", data:"出错信息",msg:"请求失败", success:false}"
|
// @Router /data/api-v/area/update/{id} [put]
|
func (ac AreaController) AreaUpdate(c *gin.Context) {
|
var api dbapi.AreaApi
|
var model AreaVo
|
|
if err := c.BindJSON(&model);err !=nil {
|
util.ResponseFormat(c, code.ComError, "参数有误")
|
return
|
}
|
|
paramBody := util.Struct2Map(model)
|
if api.AreaUpdate(paramBody) {
|
util.ResponseFormat(c,code.Success,"更新成功")
|
}else {
|
util.ResponseFormat(c,code.ComError,"更新失败")
|
}
|
}
|
|
// @Summary 删除一个区域
|
// @Description 点击删除按钮时删除一个区域
|
// @Produce json
|
// @Tags menu
|
// @Param id query int true "当前id"
|
// @Success 200 {string} json "{"code":200, data:"删除的区域信息",msg:"请求成功", success:true}"
|
// @Failure 200 {string} json "{"code":"错误码", data:"出错信息",msg:"请求失败", success:false}"
|
// @Router /data/api-v/area/del [get]
|
func (ac AreaController) AreaDelete(c *gin.Context) {
|
var api dbapi.AreaApi
|
id := c.Query("id")
|
areaId, err := strconv.Atoi(id)
|
if err != nil {
|
util.ResponseFormat(c, code.ComError, "传入非整形无法解析")
|
return
|
}
|
|
if api.AreaDelete(areaId) {
|
util.ResponseFormat(c, code.Success, "删除成功")
|
} else {
|
util.ResponseFormat(c, code.ComError,"删除失败")
|
}
|
|
}
|