/// <summary>
        /// 处理采集数据块
        /// </summary>
        /// <param name="collectDataBlock"></param>
        public static XResponseMessage ProcessCollectData(CollectDataBlock collectDataBlock)
        {
            if (collectDataBlock == null)
            {
                throw new ArgumentNullException("collectDataBlock");
            }

            if (collectDataBlock.SensorDatas != null && collectDataBlock.SensorDatas.Any())
            {
                var result = CollectDataProcessor.ProcessSensorData(collectDataBlock.SensorDatas);
                if (result != null && result.Success != ErrorType.NoError)
                {
                    return(result);
                }
            }
            if (collectDataBlock.MediaDatas != null && collectDataBlock.MediaDatas.Any())
            {
                var result = CollectDataProcessor.ProcessMediaData(collectDataBlock.MediaDatas);
                if (result != null && result.Success != ErrorType.NoError)
                {
                    return(result);
                }
            }
            if (collectDataBlock.PictureDatas != null && collectDataBlock.PictureDatas.Any())
            {
                var result = CollectDataProcessor.ProcessPictureData(collectDataBlock.PictureDatas);
                if (result != null && result.Success != ErrorType.NoError)
                {
                    return(result);
                }
            }
            //return null;
            return(ResultHelper.CreateMessage("", ErrorType.NoError));
        }
Beispiel #2
0
        /// <summary>
        ///     添加摄像机
        /// </summary>
        /// <param name="item"></param>
        /// <param name="facilityDb"></param>
        public static async Task AddCamera(FacilityAddData item, FacilityDto facilityDb)
        {
            var cameras = item.Cameras;
            List <FacilityCameraDto> cameraList = null;

            if (_redis.Exists("facilityCamera") == 1)
            {
                cameraList = _redis.Smember <FacilityCameraDto>("facilityCamera", DataType.Protobuf);
            }
            var camerasDb = cameraList != null ? cameraList : await _facilityCameraService.GetFacilityCamerasByFacilityIdAsny(facilityDb.Serialnum);

            if (cameras != null && cameras.Any())
            {
                cameras.ForEach(async c =>
                {
                    await CollectDataProcessor.AddCamera(c);
                });
            }
        }