| | |
| | | }) |
| | | |
| | | controller.Auth.PlainTextSecrets = true |
| | | |
| | | for k, v := range svr.CollectDeviceType() { |
| | | controller.DevCache.Store(k, v) |
| | | } |
| | | controller.DevCache = new(sync.Map) |
| | | controller.InitDeviceCache() |
| | | |
| | | return controller |
| | | } |
| | |
| | | } |
| | | } else { |
| | | // 未缓存的id, 可能是新添加的上下级, 更新缓存 |
| | | _, ok := s.DevCache.Load(req.RegisterObject.DeviceID) |
| | | if ok { |
| | | s.ApeRepo.CollectDeviceType() |
| | | if _, ok := s.DevCache.Load(req.RegisterObject.DeviceID); !ok { |
| | | s.InitDeviceCache() |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | c.JSON(http.StatusOK, gin.H{"msg": "ok"}) |
| | | } |
| | | |
| | | func (s SystemController) InitDeviceCache() { |
| | | // 清空 |
| | | s.DevCache.Range(func(key, value interface{}) bool { |
| | | s.DevCache.Delete(key) |
| | | return true |
| | | }) |
| | | |
| | | for k, v := range s.ApeRepo.CollectDeviceType() { |
| | | s.DevCache.Store(k, v) |
| | | } |
| | | |
| | | } |