EasyCVR裝置列表中輸入國標編號無法搜尋如何調整?
阿新 • • 發佈:2021-12-09
EasyCVR作為一款功能完善的視訊結構化智慧分析平臺,支援多種協議的視訊流輸出,除了可以接入RTSP、GB28181外,還通過HIKSDK、Ehome等私有協議完成與裝置的對接和視訊流的傳輸。
近期我們在維護一個EasyCVR專案中發現,當進入裝置列表,並在搜尋框輸入國標編號時發現無法搜尋。
經過對後端程式碼排查,發現後端並沒有國標編號,原來是前端傳遞的搜尋引數,後端接收到後並沒有將搜尋欄位加上國標編號,才導致搜尋失敗。
於是我們新增如下程式碼,當接收到前端傳遞的搜尋欄位後,後端在現有的搜尋欄位上,加上國標id的欄位搜尋,然後寫對應的where條件語句:
func (impl *DeviceServiceImpl) GetDevices(deviceID, where string, start, limit uint) *[]cvrdo.Device {
dbDevInfos := make([]cvrdo.Device, 0)
if deviceID != "" {
devid, _ := strconv.Atoi(deviceID)
dev, err := impl.deviceDao.Get(uint(devid))
if err != nil {
log.Println(err)
return &dbDevInfos
}
dbDevInfos = append(dbDevInfos, *dev)
再次輸入國標id搜尋,能夠正常搜尋到: