其他分享
首页 > 其他分享> > EasyCVR设备管理界面实际通道数与显示通道数不符是什么原因

EasyCVR设备管理界面实际通道数与显示通道数不符是什么原因

作者:互联网

近期我们在对EasyCVR测试时,出现实际通道数有四个,显示在前端的数据也是四个,但是点进去只显示三个的情况。前端的通道数显示如下所示:

进入后只显示三路通道:

通过排查代码发现,在查询设备下面包含的通道时,这边做了一个唯一判断,如果查询的设备在主表DBchannel中有数据,那么就回到对应类型的子表t_channel中去查询对应的子表通道,如果在子表中有一个以上的话就会出错,导致无法返回。

于是修改代码如下,查询子表下面通道的时候,添加数量限制,查询最新匹配的一条通道数据

for _, value := range *channels {

if value.ChannelType == cvrdo.TypeGB() {

gbschannels := make([]*models.Channel, 0)

q := db.SQLite.Model(models.Channel{}).Where("[index] = ?", value.ChannelID).Limit(1).Offset(0)

q.Find(&gbschannels)

if len(gbschannels) != 1 {

continue

}

再次查询显示正确,该问题解决。

EasyCVR从最初的开发完成到现在的稳定可靠,主要是得益于TSINGSEE青犀视频团队在流媒体平台开发行业的经验已经非常丰富,很多问题都可以快速响应和解决。此外,与其他视频平台不同的是,EasyCVR能够支持视频分析数据与多源数据融合,通过智能分析算法挖掘价值数据,这也是EasyCVR一个重要特点。

如果大家对EasyCVR平台感兴趣,欢迎下载部署,实际测试,测试期间可自由调用二次开发接口,欢迎了解。

标签:不符,EasyCVR,查询,value,子表,gbschannels,通道
来源: https://www.cnblogs.com/easycvr/p/15090400.html