國標GB28181/RTSP/HIKSDK/Ehome視訊智慧分析平臺EasyCVR如何效仿EasyGBS新增使用者功能介面?
阿新 • • 發佈:2020-12-10
TSINGSEE青犀視訊雲邊端的諸多視訊智慧分析平臺在研發之初,其功能都是不完善的,經過一步步的探索,我們也在不斷完善平臺的操作和功能,比如國標GB28181協議平臺EasyGBS的語音對講和告警上報,都是我們在與眾多專案對接之後,開發出來的滿足多數使用者需求的功能。
對於協議相容性比較強,支援GB28181及RTSP等協議的EasyCVR視訊智慧分析平臺,在更廣泛的專案當中得到了運用。這些專案當中,很多場景也需要像EasyGBS、EasyNVR一樣的使用者管理功能,需要新增使用者繫結角色,然後給角色分配通道,讓使用者登入顯示對應的通道。
增加使用者及角色管理可以通過呼叫以下介面獲取:
func (h *APIHandler) AddUser_V2(c *gin.Context) { var err error defer func() { if p := recover(); p != nil { err = fmt.Errorf("%v", p) } if err != nil { c.AbortWithStatusJSON(400, err.Error()) return } }() name := c.PostForm("name") username := c.PostForm("username") password := c.PostForm("password") //phone := c.PostForm("phone") //email := c.PostForm("email") roleid := c.PostForm("roleid") roleId, err := strconv.Atoi(roleid) if err != nil { c.IndentedJSON(400, "請輸入有效的角色") return } dbclient := cvrdao.GetDB() tx := dbclient.Begin() roleMode := cvrdo.Role{} err = dbclient.Where("id = ?", roleId).First(&roleMode).Error if err != nil { c.IndentedJSON(400, err.Error()) return } userMode := cvrdo.User{} userCount := 0 dbclient.Where("name = ?", name).First(&userMode).Count(&userCount) if userCount != 0 { c.IndentedJSON(400, "使用者已經存在") return } else { if name != "" { userMode.Name = name } if username != "" { userMode.Username = username } //if email != "" { // userMode.Email = email //} if password != "" { userMode.Password = password } //if phone != "" { // userMode.Phone = phone //} userMode.CreateAt = etime.ToDateTime(time.Now()) dbclient.Save(&userMode) } userRoleMode := cvrdo.UserRole{} userrolemodecount := 0 dbclient.Where("uid = ?", userMode.ID).First(&userRoleMode).Count(&userrolemodecount) if userrolemodecount == 0 { dbclient.Create(&cvrdo.UserRole{ Uid: userMode.ID, Rid: roleMode.ID, }) } else { userRoleMode.Rid = roleMode.ID dbclient.Save(&userRoleMode) } tx.Commit() c.IndentedJSON(200, gin.H{ "state": "success", }) }
呼叫後檢查,可知呼叫成功:
EasyCVR是一個功能強大,分散式架構,集全終端,多使用者,語音對講,分級電子地圖,報警中心,相容其它擴充套件產品,單機直連裝置監控系統等功能為一體化平臺。平臺可擴充套件AI、GIS等功能,介面友好,操作簡單,可方便的進行許可權設定。如有需求,歡迎瞭解!