liuxiaolong
2020-06-05 7c811247ecf143e08c576986a884bedadc57dd66
controllers/area.go
@@ -5,36 +5,26 @@
   "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"`
   Id string `json:"id"`
   ParentId string `json:"parentId"`
   Name string `json:"name"`
   Alias string `json:"alias"`
}
// @Summary 显示树形结构
// @Description 显示左侧所有区域和摄像机
// @Security ApiKeyAuth
// @Produce json
// @Tags menu
// @Param parentid query int true "区域的id"
// @Param parentid query string true "区域的id"
// @Param searchType query int true "查询类型(0:全部,1:分析摄像机,2:监控摄像机)"
// @Param cameraName query string false "摄像机名称"
// @Success 200 {string} json "{"code":200, msg:"目录结构数据"}"
// @Failure 500 {string} json "{"code":500,  msg:"返回错误信息"}"
// @Router /data/api-v/area/localmenu [get]
@@ -48,12 +38,73 @@
   util.ResponseFormat(c, code.Success, arr)
}
// @Summary 添加menu的区域
// @Description 添加目录上区域
// @Summary 显示Gb28181树形结构
// @Description 显示Gb28181树形结构
// @Security ApiKeyAuth
// @Produce json
// @Tags menu
// @Param name query string true "区域名字"
// @Param parentId query int true "上一级父id"
// @Param parentid query string true "区域的id"
// @Param searchType query int true "查询类型(0:全部,1:分析摄像机,2:监控摄像机)"
// @Param cameraName query string false "摄像机名称"
// @Success 200 {string} json "{"code":200, msg:"目录结构数据"}"
// @Failure 500 {string} json "{"code":500,  msg:"返回错误信息"}"
// @Router /data/api-v/area/gb28181Tree [get]
func (ac AreaController) CameraGb28181Tree(c *gin.Context) {
   parentIdStr := c.Query("parentid")
   searchTypeStr := c.Query("searchType")
   cameraName := c.Query("cameraName")
   var api dbapi.AreaApi
   arr := api.GetGb28181CameraTree(parentIdStr, searchTypeStr, cameraName)
   util.ResponseFormat(c, code.Success, arr)
}
// @Security ApiKeyAuth
// @Accept x-www-form-urlencoded
// @Summary 刷新Gb28181平台树
// @Description 刷新Gb28181平台树
// @Produce json
// @Tags menu
// @Param id formData string false "国标平台id"
// @Success 200 {string} json "{"code":200, data:"",msg:"请求成功", success:true}"
// @Failure 200 {string} json "{"code":500, data:"",msg:"请求失败", success:false}"
// @Router /data/api-v/area/gb28181TreeRefresh [post]
func (ac AreaController) Gb28181TreeRefresh(c *gin.Context) {
   id := c.PostForm("id")
   var api dbapi.AreaApi
   if api.Gb28181TreeRefresh(id) {
      util.ResponseFormat(c,code.UpdateSuccess,"更新成功")
   } else {
      util.ResponseFormat(c,code.UpdateFail, "更新失败")
   }
}
// @Security ApiKeyAuth
// @Summary 删除Gb28181平台
// @Description 删除Gb28181平台
// @Produce json
// @Tags menu
// @Success 200 {string} json "{"code":200, data:"",msg:"请求成功", success:true}"
// @Failure 200 {string} json "{"code":500, data:"",msg:"请求失败", success:false}"
// @Router /data/api-v/area/gb28181TreeDelete [post]
func (ac AreaController) Gb28181TreeDelete(c *gin.Context) {
   var api dbapi.AreaApi
   if api.Gb28181TreeDelete() {
      util.ResponseFormat(c,code.DelSuccess,"删除成功")
   } else {
      util.ResponseFormat(c,code.ComError, "删除失败")
   }
}
// @Security ApiKeyAuth
// @Summary 添加menu的区域
// @Description 添加目录上区域
// @Accept x-www-form-urlencoded
// @Produce json
// @Tags menu
// @Param name formData string true "区域名字"
// @Param parentId formData string 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]
@@ -61,69 +112,82 @@
   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
   }
   parentId := c.PostForm("parentId")
   var model = AreaVo{
      Name:name,
      ParentId:parentId,
   }
   paramBody := util.Struct2Map(model)
   if api.AreaAdd(paramBody) {
      util.ResponseFormat(c,code.Success,"保存成功")
      util.ResponseFormat(c,code.AddSuccess,"添加成功")
   } else {
      util.ResponseFormat(c,code.ComError,"保存失败")
      util.ResponseFormat(c,code.ComError,"添加失败")
   }
}
// @Security ApiKeyAuth
// @Summary 修改名字
// @Description 修改区域名字
// @Accept  json
// @Accept x-www-form-urlencoded
// @Produce json
// @Tags menu
// @Param id path int true "区域id"
// @Param area body controllers.AreaVo true "区域结构"
// @Param id formData string true "区域id"
// @Param name formData string true "区域名字"
// @Param parentId formData string true "上一级父id"
// @Param alias formData string false "备注名称"
// @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 [post]
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, "参数有误")
   id := c.PostForm("id")
   if id == ""{
      util.ResponseFormat(c, code.RequestParamError, "参数错误")
      return
   }
   name := c.PostForm("name")
   parentId := c.PostForm("parentId")
   if parentId == "" {
      util.ResponseFormat(c, code.RequestParamError, "parentId参数错误")
      return
   }
   alias := c.PostForm("alias")
   var model = AreaVo{
      Id:id,
      ParentId:parentId,
      Name:name,
      Alias: alias,
   }
   paramBody := util.Struct2Map(model)
   var api dbapi.AreaApi
   if api.AreaUpdate(paramBody) {
      util.ResponseFormat(c,code.Success,"更新成功")
      util.ResponseFormat(c,code.UpdateSuccess,"更新成功")
   }else {
      util.ResponseFormat(c,code.ComError,"更新失败")
   }
}
// @Security ApiKeyAuth
// @Summary 删除一个区域
// @Description 点击删除按钮时删除一个区域
// @Accept x-www-form-urlencoded
// @Produce json
// @Tags menu
// @Param id query int true "当前id"
// @Param id formData string 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 [post]
func (ac AreaController) AreaDelete(c *gin.Context) {
   var api dbapi.AreaApi
   id := c.PostForm("id")
   areaId, err := strconv.Atoi(id)
   if err != nil {
   if id == "" {
      util.ResponseFormat(c, code.ComError, "参数有误")
      return
   }
   if api.AreaDelete(areaId) {
      util.ResponseFormat(c, code.Success, "删除成功")
   if api.AreaDelete(id) {
      util.ResponseFormat(c, code.DelSuccess, "删除成功")
   } else {
      util.ResponseFormat(c, code.ComError,"删除失败")
   }