public List <AlarmStatusDto> GettestState(PagedAndSortedResultRequestDto input, string condity)
        {
            ConditionAlarmStatusDto conditionAlarmStatus = new ConditionAlarmStatusDto();


            conditionAlarmStatus.TreatmentState = 1;
            PagedSortedRequestDto resultRequestDto = new PagedSortedRequestDto()
            {
                MaxResultCount = 200000, SkipCount = 0, Sorting = "Id"
            };
            var data = _alarmStatusAppService.GetListAsync(input).Result.Items;

            var bookstr = Newtonsoft.Json.JsonConvert.SerializeObject(data);

            var bt      = Encoding.UTF8.GetBytes(bookstr);
            var options = new DistributedCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromDays(20));

            _cache.Set("bookstr", bt, options);

            var DD    = _cache.Get(condity);
            var FF    = Encoding.UTF8.GetString(DD);
            var DDF2G = Newtonsoft.Json.JsonConvert.DeserializeObject <List <AlarmStatusDto> >(FF);

            return(DDF2G);
        }
        public Dictionary <string, int> GetConditionCount(string Factory, string RoomType, string MonitorRoom)
        {
            ConditionAlarmStatusDto conditionAlarmStatus = new ConditionAlarmStatusDto();

            conditionAlarmStatus.Factory      = Factory;
            conditionAlarmStatus.RoomType     = RoomType;
            conditionAlarmStatus.RoomLocation = MonitorRoom;
            PagedSortedRequestDto resultRequestDto = new PagedSortedRequestDto()
            {
                MaxResultCount = 200000, SkipCount = 0, Sorting = "Id"
            };
            var data = _alarmStatusAppService.GetRequstList(conditionAlarmStatus, resultRequestDto);
            Dictionary <string, int> dic = new Dictionary <string, int>();

            var alarmint     = data.Items.Where(u => u.IsDefence == 1).Where(i => i.IsAlarm == 1).Where(k => k.IsAnomaly == 2).Count();//报警数量
            var defenceint   = data.Items.Where(u => u.IsDefence == 1).Count();
            var notdefineint = data.Items.Where(u => u.IsDefence == 2).Count();
            var openDoorint  = data.Items.Where(u => u.IsOpenDoor == true).Count();
            var closeDoorint = data.Items.Where(u => u.IsOpenDoor == false).Count();
            var treatmentint = data.Items.Where(u => u.TreatmentState == 1).Count();
            var onlineint    = data.Items.Where(u => u.IsAnomaly == 2).Count();

            dic.Add("门磁数量", (int)data.TotalCount);
            dic.Add("报警数据", alarmint);
            dic.Add("布防数据", defenceint);
            dic.Add("撤防数据", notdefineint);
            dic.Add("在线数据", onlineint);
            dic.Add("离线数据", data.Items.Where(u => u.IsAnomaly == 1 || u.IsAnomaly == 0).Count());
            dic.Add("开岗数据", openDoorint);
            dic.Add("封岗数据", closeDoorint);
            dic.Add("未处理数据", treatmentint);

            return(dic);
        }
Example #3
0
        /// <summary>
        /// 获取镜头维修表数据
        /// </summary>
        private void dVRCameraRepairlist()
        {
            var dVRCameraRepairDtos = from a in _camerarepository
                                      join q in _cameraRepairrepository on a.Camera_ID equals q.Camera_ID into q_join
                                      from b in q_join.DefaultIfEmpty()
                                      join c in _dvrrepository on a.DVR_ID equals c.DVR_ID into c_join
                                      from v in c_join.DefaultIfEmpty()
                                      select new DVRCameraRepairDto
            {
                Factory        = v.Factory,
                DVR_Room       = v.Monitoring_room,
                DVR_ID         = a.DVR_ID,
                channel_ID     = a.channel_ID,
                Camera_ID      = a.Camera_ID,
                Build          = a.Build,
                floor          = a.floor,
                Direction      = a.Direction,
                Location       = a.Location,
                department     = a.department,
                Camera_Tpye    = a.Camera_Tpye,
                install_time   = a.install_time,
                manufacturer   = a.manufacturer,
                AnomalyTime    = b.AnomalyTime,
                CollectTime    = b.CollectTime,
                AnomalyType    = b.AnomalyType,
                AnomalyGrade   = b.AnomalyGrade,
                Registrar      = b.Registrar,
                RepairState    = b.RepairState,
                RepairedTime   = b.RepairedTime,
                Accendant      = b.Accendant,
                RepairDetails  = b.RepairDetails,
                RepairFirm     = b.RepairFirm,
                Supervisor     = b.Supervisor,
                ReplacePart    = b.ReplacePart,
                ProjectAnomaly = b.ProjectAnomaly,
                Id             = a.Id
            };

            listDVRCameraRepair = dVRCameraRepairDtos.ToList();

            dVRCheckInfos = _dvrCheckInfoAppService.GetDVRInfoCheckFalseByDVRroom(null);
            PagedSortedRequestDto input = new PagedSortedRequestDto()
            {
                SkipCount = 0, MaxResultCount = 999
            };

            dVRCheckOnlines = _dvrCheckInfoAppService.GetDVRInfoByCondition(null, null, true, null, null, null, input).Result.Items.ToList();
        }
Example #4
0
        public async Task <Dictionary <string, int> > GetCameraRepairByBuildAsync()
        {
            PagedSortedRequestDto resultRequestDto = new PagedSortedRequestDto()
            {
                MaxResultCount = 200000, SkipCount = 0, Sorting = null
            };

            Dictionary <string, int> keyValues = new Dictionary <string, int>();
            var data      = _cameraRepairAppService.GetRepairsList(resultRequestDto).Items.ToList();
            var databuild = data.Select(i => new { Build = i.Build }).Distinct();

            foreach (var item in databuild)
            {
                var data2 = data.Where(u => u.Build == item.Build);

                keyValues.Add(item.Build, data2.Count());
            }
            return(keyValues);//Newtonsoft.Json.JsonConvert.SerializeObject(keyValues);
        }
Example #5
0
        public async Task <Dictionary <string, int> > GetVintageAnalysisAsync()
        {
            int time = DateTime.Now.Year;
            PagedSortedRequestDto resultRequestDto = new PagedSortedRequestDto()
            {
                MaxResultCount = 200000, SkipCount = 0, Sorting = "Id"
            };
            var data = _cameraRepairAppService.GetRepairsList(resultRequestDto);
            Dictionary <string, int> keyValues = new Dictionary <string, int>();

            for (int i = 0; i < 10; i++)
            {
                string year  = (time - i).ToString();
                var    data1 = data.Items.Where(u => u.install_time.Contains(year));

                keyValues.Add(year, data1.Count());
            }
            return(keyValues);
        }
        public PagedResultDto <RequstAlarmStatusDto> GetTreatmentState(string Factory, string RoomType, string RoomLocation)
        {
            ConditionAlarmStatusDto conditionAlarmStatus = new ConditionAlarmStatusDto();

            conditionAlarmStatus.Factory      = Factory;
            conditionAlarmStatus.RoomType     = RoomType;
            conditionAlarmStatus.RoomLocation = RoomLocation;

            conditionAlarmStatus.TreatmentState = 1;
            PagedSortedRequestDto resultRequestDto = new PagedSortedRequestDto()
            {
                MaxResultCount = 200000, SkipCount = 0, Sorting = "Id"
            };
            var data = _alarmStatusAppService.GetRequstList(conditionAlarmStatus, resultRequestDto);

            data.Items = data.Items.OrderByDescending(u => u.LastModificationTime).ToList();

            return(data);
        }
        public IActionResult GetOutExcel(CameraCondition condition)
        {
            PagedSortedRequestDto resultRequestDto = new PagedSortedRequestDto()
            {
                MaxResultCount = 200000, SkipCount = 0
            };
            var data = _cameraAppService.GetListByCondition(condition, resultRequestDto);
            var list = data.Result.Items.ToList();

            DataTable dataTable  = ListToDataTable.toDataTable <CameraDto>(list);
            var       pathname   = $"{System.AppDomain.CurrentDomain.BaseDirectory}Basics\\OutExcel.xlsx";
            var       requst     = ExcelHelper.DataTableToExcel(dataTable, pathname, "Sheet1", true);
            var       stream     = System.IO.File.OpenRead(pathname);
            string    fileExt    = Path.GetExtension(pathname);
            var       provider   = new FileExtensionContentTypeProvider();
            var       meni       = provider.Mappings[fileExt];
            var       returnFile = File(stream, meni, Path.GetFileName(pathname));

            return(returnFile);
        }
Example #8
0
        public async Task <PagedResultDto <CameraDto> > PostExcelToCameraInfoAsync(IFormFile files)
        {
            if (files.Length == 0)
            {
                return(null);
            }
            IImporter Importer = new ExcelImporter();

            var import9 = Importer.Import <UpdateCameraDto>(files.OpenReadStream());

            var data = import9.Result.Data.ToList();
            // var data = ExcelHelper.ExcelToDataTable(files.OpenReadStream(), Path.GetExtension(files.FileName), "Sheet", true);
            PagedSortedRequestDto resultRequestDto = new PagedSortedRequestDto()
            {
                MaxResultCount = 200000, SkipCount = 0, Sorting = "Id"
            };
            var cameraData = _cameraAppService.GetListBylike(null, resultRequestDto);
            var requst     = await _cameraAppService.PostInsertList(data);


            return(requst);
        }
        /// <summary>
        /// 分页查询数据
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public PagedResultDto <RequstCameraRepairDto> GetRepairsList(PagedSortedRequestDto input)
        {
            //  var cameras = await _camerarepository.GetListAsync();
            //  var cameraRepair = await _cameraRepairrepository.GetListAsync();
            //加载CameraDto
            var data = from a in _camerarepository
                       join b in _cameraRepairrepository on a.Camera_ID equals b.Camera_ID
                       select new RequstCameraRepairDto
            {
                DVR_Room             = a.Monitoring_room,
                DVR_ID               = a.DVR_ID,
                channel_ID           = a.channel_ID,
                Camera_ID            = a.Camera_ID,
                Build                = a.Build,
                floor                = a.floor,
                Direction            = a.Direction,
                Location             = a.Location,
                department           = a.department,
                Camera_Tpye          = a.Camera_Tpye,
                install_time         = a.install_time,
                manufacturer         = a.manufacturer,
                AnomalyTime          = b.AnomalyTime,
                CollectTime          = b.CollectTime,
                AnomalyType          = b.AnomalyType,
                AnomalyGrade         = b.AnomalyGrade,
                Registrar            = b.Registrar,
                RepairState          = b.RepairState,
                RepairedTime         = b.RepairedTime,
                Accendant            = b.Accendant,
                RepairDetails        = b.RepairDetails,
                RepairFirm           = b.RepairFirm,
                Supervisor           = b.Supervisor,
                ReplacePart          = b.ReplacePart,
                ProjectAnomaly       = b.ProjectAnomaly,
                NoSignal             = b.NoSignal,
                Remark               = b.Remark,
                Id                   = b.Id,
                CreatorId            = b.CreatorId,
                CreationTime         = b.CreationTime,
                LastModificationTime = b.LastModificationTime,
                LastModifierId       = b.LastModifierId,
            };
            //分页排序查询加载
            List <RequstCameraRepairDto> cameraRepairDtos;

            if (!input.Sorting.IsNullOrWhiteSpace())
            {
                cameraRepairDtos = data.OrderBy(input.Sorting).PageBy(input.SkipCount, input.MaxResultCount).ToList();
            }
            else
            {
                cameraRepairDtos = data.OrderBy(d => d.Id).PageBy(input.SkipCount, input.MaxResultCount).ToList();
            }



            return(new PagedResultDto <RequstCameraRepairDto>()

            {
                TotalCount = data.Count(),
                Items = cameraRepairDtos
            });
        }
        // 模糊查询 按 楼栋-楼层位置搜索
        /// <summary>
        /// 模糊查询
        /// </summary>
        /// <param name="dvrRoom">监控室</param>
        /// <param name="condition">查询条件</param>
        /// <param name="RepairSatate">维修状态</param>
        /// <param name="department">部门</param>
        /// <param name="AnomalyTimeStart">异常查询开始时间</param>
        /// <param name="AnomalyTimeEnd">异常查询结束时间</param>
        /// <param name="RepairedTimeStart">维修开始时间</param>
        /// <param name="RepairedTimeEnd">维修结束时间</param>
        /// <param name="AnomalyType">维修类别</param>
        /// <param name="input">分页</param>
        /// <returns></returns>
        public PagedResultDto <RequstCameraRepairDto> GetRepairsListBylike(string dvrRoom, string condition, bool?RepairSatate, string department, string AnomalyTimeStart, string AnomalyTimeEnd, string RepairedTimeStart, string RepairedTimeEnd, string AnomalyType, PagedSortedRequestDto input)
        {
            //加载CameraDto
            var dataall = from a in _camerarepository
                          join b in _cameraRepairrepository on a.Camera_ID equals b.Camera_ID
                          select new RequstCameraRepairDto
            {
                DVR_Room             = a.Monitoring_room,
                DVR_ID               = a.DVR_ID,
                channel_ID           = a.channel_ID,
                Camera_ID            = a.Camera_ID,
                Build                = a.Build,
                floor                = a.floor,
                Direction            = a.Direction,
                Location             = a.Location,
                department           = a.department,
                Camera_Tpye          = a.Camera_Tpye,
                install_time         = a.install_time,
                manufacturer         = a.manufacturer,
                AnomalyTime          = b.AnomalyTime,
                CollectTime          = b.CollectTime,
                AnomalyType          = b.AnomalyType,
                AnomalyGrade         = b.AnomalyGrade,
                Registrar            = b.Registrar,
                RepairState          = b.RepairState,
                RepairedTime         = b.RepairedTime,
                Accendant            = b.Accendant,
                RepairDetails        = b.RepairDetails,
                RepairFirm           = b.RepairFirm,
                Supervisor           = b.Supervisor,
                ReplacePart          = b.ReplacePart,
                ProjectAnomaly       = b.ProjectAnomaly,
                NoSignal             = b.NoSignal,
                Remark               = b.Remark,
                Id                   = b.Id,
                CreatorId            = b.CreatorId,
                CreationTime         = b.CreationTime,
                LastModificationTime = b.LastModificationTime,
                LastModifierId       = b.LastModifierId,
            };
            IQueryable <RequstCameraRepairDto> data1;
            IQueryable <RequstCameraRepairDto> data;

            data = dataall;

            //监控室筛选
            if (!string.IsNullOrEmpty(dvrRoom))
            {
                data = data.Where(u => u.DVR_Room == dvrRoom);
            }

            //状态筛选
            if (RepairSatate != null)
            {
                data = data.Where(u => u.RepairState == RepairSatate);
            }
            //部门筛选
            if (!string.IsNullOrEmpty(department))
            {
                department = ChineseConverter.Convert(department, ChineseConversionDirection.SimplifiedToTraditional);//简体转繁体
                data       = data.Where(u => u.department == department);
            }
            //异常时间筛选
            if (!string.IsNullOrEmpty(AnomalyTimeStart) && !string.IsNullOrEmpty(AnomalyTimeEnd))
            {
                data = data.Where(u => string.Compare(u.AnomalyTime, AnomalyTimeStart) >= 0 && string.Compare(u.AnomalyTime, AnomalyTimeEnd) <= 0);
            }
            //维修时间筛选
            if (!string.IsNullOrEmpty(RepairedTimeStart) && !string.IsNullOrEmpty(RepairedTimeEnd))
            {
                data = data.Where(u => string.Compare(u.RepairedTime, RepairedTimeStart) >= 0 && string.Compare(u.RepairedTime, RepairedTimeEnd) <= 0);;
            }
            //异常类别筛选
            if (!string.IsNullOrEmpty(AnomalyType))
            {
                data = data.Where(u => u.AnomalyType.Contains(AnomalyType));
            }
            //条件为空返回
            if (condition.IsNullOrEmpty())
            {
                if (!input.Sorting.IsNullOrWhiteSpace())
                {
                    data1 = data.OrderBy(input.Sorting).PageBy(input.SkipCount, input.MaxResultCount);
                }
                else
                {
                    data1 = data.OrderBy(d => d.Id).PageBy(input.SkipCount, input.MaxResultCount);
                }


                return(new PagedResultDto <RequstCameraRepairDto>()
                {
                    Items = data1.ToList(), TotalCount = data.Count()
                });
            }
            //模糊查询
            else
            {
                //按 楼栋-楼层位置搜索
                condition = ChineseConverter.Convert(condition, ChineseConversionDirection.SimplifiedToTraditional);//简体转繁体
                if (condition.Length > 4)
                {
                    if (data.Where(u => u.Build.Contains(condition.Substring(0, 3))).ToList().Count != 0)
                    {
                        data = data.Where(u => u.Build.Contains(condition.Substring(0, 3)));

                        string str1 = condition.Split('F')[0];

                        if (data.Where(u => u.floor.Contains(str1.Substring(4))).Count() != 0)
                        {
                            data = data.Where(u => u.floor.Contains(str1.Substring(4)));
                            string str2 = condition.Split('F')[1];
                            if (!str2.IsNullOrEmpty())
                            {
                                if (data.Where(u => u.Location.Contains(str2)).Count() != 0)
                                {
                                    data = data.Where(u => u.Location.Contains(str2));
                                }
                                else
                                {
                                    return(null);
                                }
                            }
                        }
                    }
                }

                //条件筛选
                if (data.Where(u => u.DVR_ID.Contains(condition)).Count() != 0)
                {
                    data = data.Where(u => u.DVR_ID.Contains(condition));
                }
                if (data.Where(u => u.Camera_ID.Contains(condition)).Count() != 0)
                {
                    data = data.Where(u => u.Camera_ID.Contains(condition));
                }
                if (data.Where(u => u.Location.Contains(condition)).Count() != 0)
                {
                    data = data.Where(u => u.Location.Contains(condition));
                }

                if (!input.Sorting.IsNullOrWhiteSpace())
                {
                    data1 = data.OrderBy(input.Sorting).PageBy(input.SkipCount, input.MaxResultCount);
                }
                else
                {
                    data1 = data.OrderBy(d => d.Id).PageBy(input.SkipCount, input.MaxResultCount);
                }
                return(new PagedResultDto <RequstCameraRepairDto>()
                {
                    Items = data1.ToList(), TotalCount = data.Count()
                });
            }
        }
        /// <summary>
        /// 按条件筛选
        /// </summary>
        /// <param name="condition">条件</param>
        /// <param name="input">分页</param>
        /// <returns></returns>
        public PagedResultDto <RequstCameraRepairDto> GetRepairsListByCondition(QueryCondition condition, PagedSortedRequestDto input)
        {
            //  var cameras = await _camerarepository.GetListAsync();
            //  var cameraRepair = await _cameraRepairrepository.GetListAsync();
            //加载CameraDto
            var data = from a in _camerarepository
                       join b in _cameraRepairrepository on a.Camera_ID equals b.Camera_ID
                       select new RequstCameraRepairDto
            {
                DVR_Room             = a.Monitoring_room,
                DVR_ID               = a.DVR_ID,
                channel_ID           = a.channel_ID,
                Camera_ID            = a.Camera_ID,
                Build                = a.Build,
                floor                = a.floor,
                Direction            = a.Direction,
                Location             = a.Location,
                department           = a.department,
                Camera_Tpye          = a.Camera_Tpye,
                install_time         = a.install_time,
                manufacturer         = a.manufacturer,
                AnomalyTime          = b.AnomalyTime,
                CollectTime          = b.CollectTime,
                AnomalyType          = b.AnomalyType,
                AnomalyGrade         = b.AnomalyGrade,
                Registrar            = b.Registrar,
                RepairState          = b.RepairState,
                RepairedTime         = b.RepairedTime,
                Accendant            = b.Accendant,
                RepairDetails        = b.RepairDetails,
                RepairFirm           = b.RepairFirm,
                Supervisor           = b.Supervisor,
                ReplacePart          = b.ReplacePart,
                ProjectAnomaly       = b.ProjectAnomaly,
                NoSignal             = b.NoSignal,
                Remark               = b.Remark,
                Id                   = b.Id,
                CreatorId            = b.CreatorId,
                CreationTime         = b.CreationTime,
                LastModificationTime = b.LastModificationTime,
                LastModifierId       = b.LastModifierId,
            };

            #region 维修状态筛选
            if (!string.IsNullOrEmpty(condition.AnomalyTime))
            {
                data = data.Where(u => u.AnomalyTime.Contains(condition.AnomalyTime));
            }
            if (!string.IsNullOrEmpty(condition.CollectTime))
            {
                data = data.Where(u => u.AnomalyTime.Contains(condition.CollectTime));
            }
            if (!string.IsNullOrEmpty(condition.AnomalyType))
            {
                data = data.Where(u => u.AnomalyType == condition.AnomalyType);
            }
            if (!string.IsNullOrEmpty(condition.AnomalyGrade))
            {
                data = data.Where(u => u.AnomalyGrade == condition.AnomalyGrade);
            }
            if (!string.IsNullOrEmpty(condition.Registrar))
            {
                data = data.Where(u => u.Registrar == condition.Registrar);
            }
            if (!string.IsNullOrEmpty(condition.Accendant))
            {
                data = data.Where(u => u.Accendant == condition.Accendant);
            }
            if (!string.IsNullOrEmpty(condition.RepairedTime))
            {
                data = data.Where(u => u.RepairedTime.Contains(condition.RepairedTime));
            }
            if (!string.IsNullOrEmpty(condition.RepairFirm))
            {
                data = data.Where(u => u.RepairFirm == condition.RepairFirm);
            }
            if (!string.IsNullOrEmpty(condition.Supervisor))
            {
                data = data.Where(u => u.Supervisor == condition.Supervisor);
            }
            if (condition.RepairState != null)
            {
                data = data.Where(u => u.RepairState == condition.RepairState);
            }
            if (condition.NoSignal != null)
            {
                data = data.Where(u => u.NoSignal == condition.NoSignal);
            }
            #endregion

            #region 镜头信息筛选

            if (!string.IsNullOrEmpty(condition.DVR_Room))
            {
                data = data.Where(u => u.DVR_Room == condition.DVR_Room);
            }
            if (!string.IsNullOrEmpty(condition.Build))
            {
                data = data.Where(u => u.Build == condition.Build);
            }
            if (!string.IsNullOrEmpty(condition.floor))
            {
                data = data.Where(u => u.floor == condition.floor);
            }
            if (!string.IsNullOrEmpty(condition.DVR_ID))
            {
                data = data.Where(u => u.DVR_ID == condition.DVR_ID);
            }
            if (!string.IsNullOrEmpty(condition.Camera_ID))
            {
                data = data.Where(u => u.Camera_ID == condition.Camera_ID);
            }
            if (!string.IsNullOrEmpty(condition.Location))
            {
                data = data.Where(u => u.Location.Contains(condition.Location));
            }
            if (!string.IsNullOrEmpty(condition.department))
            {
                data = data.Where(u => u.department == condition.department);
            }

            #endregion


            //分页
            List <RequstCameraRepairDto> cameraRepairDtos;
            if (!input.Sorting.IsNullOrWhiteSpace())
            {
                cameraRepairDtos = data.OrderBy(input.Sorting).PageBy(input.SkipCount, input.MaxResultCount).ToList();
            }
            else
            {
                cameraRepairDtos = data.OrderBy(d => d.Id).PageBy(input.SkipCount, input.MaxResultCount).ToList();
            }
            //返回
            return(new PagedResultDto <RequstCameraRepairDto>()

            {
                TotalCount = data.Count(),
                Items = cameraRepairDtos
            });
        }
        /// <summary>
        /// 条件筛选查询
        /// </summary>
        /// <param name="condition"></param>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultDto <RequstAlarmManageStateDto> > GetRequstListAsync(ConditionAlarmManageStateDto condition, PagedSortedRequestDto input)
        {
            //加载RequstAlarmManageStateDto
            var data = from a in _alrmHostrepository
                       join b in _alarmrepository on a.AlarmHost_ID equals b.AlarmHost_ID
                       join d in _repository on b.Alarm_ID equals d.Alarm_ID
                       select new RequstAlarmManageStateDto
            {
                AlarmHost_ID    = a.AlarmHost_ID,
                Monitoring_room = a.Monitoring_room,


                department     = b.department,
                Camera_ID      = b.Camera_ID,
                Alarm_ID       = b.Alarm_ID,
                Build          = b.Build,
                floor          = b.floor,
                Location       = b.Location,
                Cost_code      = b.Cost_code,
                IsAlertor      = b.IsAlertor,
                IsOpenOrClosed = b.IsOpenOrClosed,
                Channel_ID     = b.Channel_ID,
                GeteType       = b.GeteType,
                SensorType     = b.SensorType,

                Remark             = d.Remark,
                TreatmentReply     = d.TreatmentReply,
                TreatmentTime      = d.TreatmentTime,
                TreatmentTimeState = d.TreatmentTimeState,
                WithdrawMan        = d.WithdrawMan,
                WithdrawRemark     = d.WithdrawRemark,
                WithdrawTime       = d.WithdrawTime,
                AlarmTime          = d.AlarmTime,
                DefenceTime        = d.DefenceTime,
                AnomalyType        = d.AnomalyType,
                TreatmentMan       = d.TreatmentMan,
                Id                   = d.Id,
                CreationTime         = d.CreationTime,
                CreatorId            = d.CreatorId,
                LastModificationTime = d.LastModificationTime,
                LastModifierId       = d.LastModifierId
            };

            var dd  = data.ToList();
            var DDF = _repository.ToList();
            var DFD = _alarmrepository.ToList();



            //条件筛选
            //监控室筛选
            if (!string.IsNullOrEmpty(condition.Monitoring_room))
            {
                data = data.Where(u => u.Monitoring_room.Contains(condition.Monitoring_room));
            }
            //楼栋楼层筛选
            if (!string.IsNullOrEmpty(condition.Build) && !string.IsNullOrEmpty(condition.floor))
            {
                data = data.Where(u => u.Build.Contains(condition.Build)).Where(i => i.floor.Contains(condition.floor));
            }
            //位置筛选
            if (!string.IsNullOrEmpty(condition.Location))
            {
                data = data.Where(u => u.Location.Contains(condition.Location));
            }
            //报警主机号筛选
            if (!string.IsNullOrEmpty(condition.AlarmHost_ID))
            {
                data = data.Where(u => u.AlarmHost_ID.Contains(condition.AlarmHost_ID));
            }

            //ID筛选
            if (!string.IsNullOrEmpty(condition.Alarm_ID))
            {
                data = data.Where(u => u.Alarm_ID.Contains(condition.Alarm_ID));
            }
            //报警时间筛选
            if (!string.IsNullOrEmpty(condition.AlarmTimeStart) && !string.IsNullOrEmpty(condition.AlarmTimeEnd))
            {
                data = data.Where(u => string.Compare(u.AlarmTime, condition.AlarmTimeStart) >= 0 && string.Compare(u.AlarmTime, condition.AlarmTimeEnd) <= 0);
            }
            //开岗状态筛选
            if (condition.IsOpenOrClosed != null)
            {
                data = data.Where(u => u.IsOpenOrClosed == condition.IsOpenOrClosed);
            }

            var requstdata = data.OrderByDescending(u => u.LastModificationTime).PageBy(input.SkipCount, input.MaxResultCount);



            return(new PagedResultDto <RequstAlarmManageStateDto>()
            {
                Items = requstdata.ToList(), TotalCount = data.Count()
            });
        }
Example #13
0
        /// <summary>
        /// 条件筛选查询,获取工程列表信息
        /// </summary>
        /// <param name="input">查询条件</param>
        /// <param name="input2">分页信息</param>
        /// <returns></returns>

        public async Task <ResponseResultDto> GetProjectListByCondition(ProjectManagesConditionDto input, PagedSortedRequestDto input2)
        {
            var data = await _projeckManagesrepository.GetListAsync();

            if (!string.IsNullOrEmpty(input.Camera_ID))//筛选镜头信息
            {
                data = data.Where(u => u.Camera_ID.Contains(input.Camera_ID)).ToList();
            }
            if (!string.IsNullOrEmpty(input.Build) && !string.IsNullOrEmpty(input.Floor))//筛选楼层信息
            {
                data = data.Where(u => u.Build.Contains(input.Build)).Where(i => i.Floor.Contains(input.Floor)).ToList();
            }

            if (!string.IsNullOrEmpty(input.ManufacturerName))//筛选厂商
            {
                data = data.Where(u => u.ManufacturerName.Contains(input.ManufacturerName)).ToList();
            }
            if (!string.IsNullOrEmpty(input.ProjectName))//筛选工程名称
            {
                data = data.Where(u => u.ProjectName.Contains(input.ProjectName)).ToList();
            }
            if (!string.IsNullOrEmpty(input.ProjectOrder))//筛选工程单号
            {
                data = data.Where(u => u.ProjectOrder.Contains(input.ProjectOrder)).ToList();
            }
            if (!string.IsNullOrEmpty(input.AcceptanceDataStart) && !string.IsNullOrEmpty(input.AcceptanceDataStart))//筛选验收时间
            {
                data = data.Where(u => string.Compare(u.AcceptanceData, input.AcceptanceDataStart) >= 0 && string.Compare(u.AcceptanceData, input.AcceptanceDataEnd) <= 0).ToList();
            }
            var data2 = ObjectMapper.Map <List <ProjectManages>, List <ProjectManagesDto> >(data);


            var data1 = data2.AsQueryable().PageBy(input2.SkipCount, input2.MaxResultCount);
            var TTT   = new PagedResultDto <ProjectManagesDto>()
            {
                Items = data1.ToList(), TotalCount = data.Count
            };

            var result = new ResponseResultDto();

            result.IsSuccess(TTT);

            return(result);
        }
Example #14
0
        /// <summary>
        /// 条件筛选查询
        /// </summary>
        /// <param name="condition"></param>
        /// <param name="input"></param>
        /// <returns></returns>
        public PagedResultDto <RequstAlarmStatusDto> GetRequstList(ConditionAlarmStatusDto condition, PagedSortedRequestDto input)
        {
            //加载RequstAlarmStatusDto
            var data = from a in _monitorRoomsRepository
                       join b in _alrmHostrepository on a.RoomLocation equals b.Monitoring_room
                       join c in _alarmrepository on b.AlarmHost_ID equals c.AlarmHost_ID
                       join d in _repository on new { b.AlarmHostIP, c.Channel_ID } equals new { d.AlarmHostIP, d.Channel_ID }
            select new RequstAlarmStatusDto
            {
                Factory      = a.Factory,
                RoomType     = a.RoomType,
                RoomLocation = a.RoomLocation,

                AlarmHostID = b.AlarmHost_ID,
                AlarmHostIP = b.AlarmHostIP,

                department = c.department,
                Alarm_ID   = c.Alarm_ID,
                Build      = c.Build,
                floor      = c.floor,
                Channel_ID = c.Channel_ID,
                GeteType   = c.GeteType,
                IsOpenDoor = c.IsOpenOrClosed,
                SensorType = c.SensorType,
                Location   = c.Location,


                BypassState    = d.BypassState,
                IsDefence      = d.IsDefence,
                IsAlarm        = d.IsAlarm,
                IsAnomaly      = d.IsAnomaly,
                TreatmentState = d.TreatmentState,

                Remark = d.Remark,
                Id     = d.Id,
                LastModificationTime = d.LastModificationTime,
            };


            #region 条件筛选

            if (!string.IsNullOrEmpty(condition.Factory))//厂区筛选
            {
                data = data.Where(u => u.Factory.Contains(condition.Factory));
            }
            if (!string.IsNullOrEmpty(condition.RoomType))//监控室类别筛选
            {
                data = data.Where(u => u.RoomType.Contains(condition.RoomType));
            }
            if (!string.IsNullOrEmpty(condition.RoomLocation))//监控室筛选
            {
                data = data.Where(u => u.RoomLocation.Contains(condition.RoomLocation));
            }

            if (!string.IsNullOrEmpty(condition.Build))//楼栋筛选
            {
                data = data.Where(u => u.Build.Contains(condition.Build));
            }
            if (!string.IsNullOrEmpty(condition.floor))//楼层筛选
            {
                data = data.Where(u => u.floor.Contains(condition.floor));
            }
            if (!string.IsNullOrEmpty(condition.Location))//位置筛选
            {
                data = data.Where(u => u.Location.Contains(condition.Location));
            }
            if (!string.IsNullOrEmpty(condition.Alarm_ID))//编号筛选
            {
                data = data.Where(u => u.Alarm_ID.Contains(condition.Alarm_ID));
            }
            if (!string.IsNullOrEmpty(condition.department))//编号筛选
            {
                data = data.Where(u => u.department.Contains(condition.department));
            }
            if (!string.IsNullOrEmpty(condition.SensorType))//传感器筛选
            {
                data = data.Where(u => u.SensorType.Contains(condition.SensorType));
            }

            if (condition.BypassState != null)//旁路筛选
            {
                data = data.Where(u => u.BypassState == condition.BypassState);
            }
            if (condition.IsDefence != null)//布防筛选
            {
                data = data.Where(u => u.IsDefence == condition.IsDefence);
            }
            if (condition.IsAnomaly != null)//在线筛选
            {
                data = data.Where(u => u.IsAnomaly == condition.IsAnomaly);
            }
            if (condition.IsOpenDoor != null)//开岗筛选
            {
                data = data.Where(u => u.IsOpenDoor == condition.IsOpenDoor);
            }
            if (condition.IsAlarm != null)//报警筛选
            {
                data = data.Where(u => u.IsAlarm == condition.IsAlarm);
            }
            if (condition.TreatmentState != null)//报警筛选
            {
                data = data.Where(u => u.TreatmentState == condition.TreatmentState);
            }

            #endregion

            var requstdata = data.OrderBy(u => input.Sorting).PageBy(input.SkipCount, input.MaxResultCount);


            return(new PagedResultDto <RequstAlarmStatusDto>()
            {
                Items = requstdata.ToList(), TotalCount = data.Count()
            });
        }
Example #15
0
        ///// <summary>
        ///// 重写方法,josn格式导入数据库
        ///// </summary>
        ///// <param name="input"></param>
        ///// <returns></returns>
        //public  async Task<DVRCheckInfoDto> CreateinfoAsync(string input1)
        //{
        //    var input = Newtonsoft.Json.JsonConvert.DeserializeObject<UpdateDVRCheckInfoDto>(input1);
        //    var DD = ObjectMapper.Map<UpdateDVRCheckInfoDto, DVRCheckInfo>(input);
        //    DD.DVRDISK = Newtonsoft.Json.JsonConvert.SerializeObject(input.DVRDISK);
        //    DD.DVRChannelInfo = Newtonsoft.Json.JsonConvert.SerializeObject(input.DVRChannelInfo);
        //    DD.LibraryChannelInfo = Newtonsoft.Json.JsonConvert.SerializeObject(input.LibraryChannelInfo);

        //    var list = await _repository.InsertAsync(DD);

        //    #region 配置映射关系
        //    //配置新映射
        //    DVRCheckInfoDto dvrcheckInfoDto = new DVRCheckInfoDto();
        //    dvrcheckInfoDto.DVR_ID = list.DVR_ID;
        //    dvrcheckInfoDto.DVR_SN = list.DVR_SN;
        //    dvrcheckInfoDto.DVR_type = list.DVR_type;
        //    dvrcheckInfoDto.DVR_Online = list.DVR_Online;
        //    dvrcheckInfoDto.DVR_Channel = list.DVR_Channel;
        //    dvrcheckInfoDto.ChannelChenk = list.ChannelChenk;
        //    dvrcheckInfoDto.CreationTime = list.CreationTime;
        //    dvrcheckInfoDto.CreatorId = list.CreatorId;
        //    dvrcheckInfoDto.DiskTotal = list.DiskTotal;
        //    dvrcheckInfoDto.Id = list.Id;
        //    dvrcheckInfoDto.InfoChenk = list.InfoChenk;
        //    dvrcheckInfoDto.LastModificationTime = list.LastModificationTime;
        //    dvrcheckInfoDto.LastModifierId = list.LastModifierId;
        //    dvrcheckInfoDto.Remark = list.Remark;

        //    dvrcheckInfoDto.DVRDISK = list.DVRDISK;
        //    dvrcheckInfoDto.DVRChannelInfo = list.DVRChannelInfo;
        //    dvrcheckInfoDto.LibraryChannelInfo = list.LibraryChannelInfo;
        //    return dvrcheckInfoDto;
        //    #endregion
        //}

        ///// <summary>
        ///// 重写方法,获取DVR全部信息并构建
        ///// </summary>
        ///// <param name="input"></param>
        ///// <returns></returns>
        //public async override Task<PagedResultDto<DVRCheckInfoDto>> GetListAsync(PagedAndSortedResultRequestDto input)
        //{

        //    var data = await _repository.GetListAsync();
        //    List<DVRCheckInfoDto> listCheckInfoDto = new List<DVRCheckInfoDto>();

        //    foreach (var item in data)
        //    {
        //        #region 配置映射关系
        //        //配置新映射
        //        DVRCheckInfoDto dvrcheckInfoDto = new DVRCheckInfoDto();
        //        dvrcheckInfoDto.DVR_ID = item.DVR_ID;
        //        dvrcheckInfoDto.DVR_SN = item.DVR_SN;
        //        dvrcheckInfoDto.DVR_type = item.DVR_type;
        //        dvrcheckInfoDto.DVR_Online = item.DVR_Online;
        //        dvrcheckInfoDto.DVR_Channel = item.DVR_Channel;
        //        dvrcheckInfoDto.ChannelChenk = item.ChannelChenk;
        //        dvrcheckInfoDto.CreationTime = item.CreationTime;
        //        dvrcheckInfoDto.CreatorId = item.CreatorId;
        //        dvrcheckInfoDto.DiskTotal = item.DiskTotal;
        //        dvrcheckInfoDto.Id = item.Id;
        //        dvrcheckInfoDto.InfoChenk = item.InfoChenk;
        //        dvrcheckInfoDto.LastModificationTime = item.LastModificationTime;
        //        dvrcheckInfoDto.LastModifierId = item.LastModifierId;
        //        dvrcheckInfoDto.Remark = item.Remark;

        //        dvrcheckInfoDto.DVRDISK = item.DVRDISK;
        //        dvrcheckInfoDto.DVRChannelInfo = item.DVRChannelInfo;
        //        dvrcheckInfoDto.LibraryChannelInfo = item.LibraryChannelInfo;
        //        #endregion
        //        listCheckInfoDto.Add(dvrcheckInfoDto);
        //    }

        //  //  listCheckInfoDto = listCheckInfoDto.AsQueryable().Page(input.SkipCount, input.MaxResultCount).OrderBy(d =>d.Id).ToList();


        //    return new PagedResultDto<DVRCheckInfoDto>()

        //    {
        //        TotalCount = listCheckInfoDto.Count(),
        //        Items = listCheckInfoDto
        //    };
        //}
        #endregion

        /// <summary>
        /// 条件筛选异常主机信息,bool类型默认值为null
        /// </summary>
        /// <param name="DVR_room">监控室</param>
        /// <param name="DiskChenk">硬盘检查</param>
        /// <param name="DVR_Online">在线检查</param>
        /// <param name="SNChenk">sn检查</param>
        /// <param name="TimeInfoChenk">时间检查</param>
        /// <param name="VideoCheck90Day">90天存储检查</param>
        /// <param name="input">分页参数</param>
        /// <returns></returns>
        public async Task <PagedResultDto <DVRCheckInfoDto> > GetDVRInfoByCondition(string DVR_room, bool?DiskChenk, bool?DVR_Online, bool?SNChenk, bool?TimeInfoChenk, bool?VideoCheck90Day, string StartTime, string EndTime, PagedSortedRequestDto input)
        {
            var data1 = await _dvrchenkrepository.GetListAsync();

            if (!string.IsNullOrEmpty(StartTime) || !string.IsNullOrEmpty(EndTime))
            {
                DateTime startdateTime = Convert.ToDateTime(StartTime);
                DateTime enddateTime   = Convert.ToDateTime(EndTime);
                data1 = data1.Where(u => u.LastModificationTime >= startdateTime).Where(i => i.LastModificationTime < enddateTime).ToList();
            }
            else
            {
                data1 = data1.Where(u => DateTime.Compare(DateTime.Now.AddDays(-1), (DateTime)u.LastModificationTime) < 0).ToList();
            }

            var dvrdata = _dvrrepository.Where(u => u.Monitoring_room == DVR_room);

            List <DVRCheckInfo> data2 = new List <DVRCheckInfo>();
            List <DVRCheckInfo> data3 = new List <DVRCheckInfo>();

            if (DVR_room.IsNullOrEmpty())
            {
                data2 = data1;
            }
            foreach (var item in dvrdata)
            {
                data2.Add(data1.Where(u => u.DVR_ID == item.DVR_ID).FirstOrDefault());
            }
            if (DiskChenk == null && DVR_Online == null && TimeInfoChenk == null && SNChenk == null)  //默认返回异常数据          {
            {
                foreach (var item in data2)
                {
                    if (item.DiskChenk == false || item.DVR_Online == false || item.SNChenk == false || item.TimeInfoChenk == false || item.VideoCheck90Day == false)
                    {
                        data3.Add(item);
                    }
                }
            }

            else
            {
                data3 = data2;
                if (DVR_Online != null)
                {
                    data3 = data3.Where(u => u.DVR_Online == DVR_Online).ToList();
                }
                if (DiskChenk != null)
                {
                    data3 = data3.Where(u => u.DiskChenk == DiskChenk).ToList();
                }
                if (SNChenk != null)
                {
                    data3 = data3.Where(u => u.SNChenk == SNChenk).ToList();
                }
                if (TimeInfoChenk != null)
                {
                    data3 = data3.Where(u => u.TimeInfoChenk == TimeInfoChenk).ToList();
                }
                if (VideoCheck90Day != null)
                {
                    data3 = data3.Where(u => u.VideoCheck90Day == VideoCheck90Day).ToList();
                }
            }


            var data9 = data3.Distinct();

            var data = ObjectMapper.Map <List <DVRCheckInfo>, List <DVRCheckInfoDto> >(data3);

            var data4 = data.Skip(input.SkipCount).Take(input.MaxResultCount);


            return(new PagedResultDto <DVRCheckInfoDto> {
                TotalCount = data.Count(), Items = data4.ToList()
            });
        }
Example #16
0
        public PagedResultDto <RequstCameraRepairDto> GetRepetitionRepairsListByTimes(string[] dvrRooms, bool?RepairState, string AnomalyTimeStart, string AnomalyTimeEnd, PagedSortedRequestDto input)
        {
            if (string.IsNullOrEmpty(AnomalyTimeStart) || string.IsNullOrEmpty(AnomalyTimeEnd))
            {
                AnomalyTimeStart = DateTime.Now.AddYears(-1).ToString();
                AnomalyTimeStart = DateTime.Now.ToString();
            }

            var data = _cameraRepairAppService.GetRepairsListBylike(dvrRooms, null, RepairState, null, AnomalyTimeStart, AnomalyTimeEnd, null, null, null, null, input);



            return(data);
        }
        /// <summary>
        /// 查询镜头检查结果
        /// </summary>
        /// <param name="ChannelCheck"></param>
        /// <param name="ImageCheck"></param>
        /// <param name="DvrRoom"></param>
        /// <param name="input"></param>
        /// <returns></returns>
        public PagedResultDto <RequstDVRChannelInfoDto> GetDVRChannels(bool?ChannelCheck, bool?ImageCheck, string DvrRoom, PagedSortedRequestDto input)
        {
            var data = from a in _repository
                       join q in _camerarepository on a.Camera_ID equals q.Camera_ID into q_join
                       from b in q_join.DefaultIfEmpty()
                       join c in _dVRrepository on a.DVR_ID equals c.DVR_ID into c_join
                       from v in c_join.DefaultIfEmpty()
                       select new RequstDVRChannelInfoDto
            {
                DataChannelName    = a.DataChannelName,
                DVRChannelEncoding = a.DVRChannelEncoding,
                CameraType         = a.CameraType,
                Camera_ID          = a.Camera_ID,
                DVRChannelName     = a.DVRChannelName,
                ChannelNameCheck   = a.ChannelNameCheck,
                channel_ID         = a.channel_ID,
                DVR_Room           = v.Monitoring_room,
                Factory            = v.Factory,
                ImageCheck         = a.ImageCheck,
                DVR_ID             = a.DVR_ID,
                Id             = a.Id,
                LastUpdateTime = a.LastUpdateTime,
                Remark         = a.Remark
            };

            //  IQueryable<RequstDVRChannelInfoDto> data;

            if (ChannelCheck != null)
            {
                data = data.Where(u => u.ChannelNameCheck == ChannelCheck).Where(i => i.DataChannelName != "无");
            }
            if (ImageCheck != null)
            {
                data = data.Where(u => u.ImageCheck == ImageCheck);
            }
            if (!string.IsNullOrEmpty(DvrRoom))
            {
                data = data.Where(u => u.DVR_Room.Contains(DvrRoom));
            }

            var data1 = data.PageBy(input.SkipCount, input.MaxResultCount).ToList();



            return(new PagedResultDto <RequstDVRChannelInfoDto>()
            {
                Items = data1, TotalCount = data.Count()
            });
        }
        /// <summary>
        /// 监控镜头多条件查询
        /// </summary>
        /// <param name="condition"></param>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultDto <CameraDto> > GetListByCondition(CameraCondition condition, PagedSortedRequestDto input)
        {
            var data = from a in _repository
                       select new CameraDto
            {
                Id                    = a.Id,
                DVR_ID                = a.DVR_ID,
                channel_ID            = a.channel_ID,
                Camera_ID             = a.Camera_ID,
                Camera_Tpye           = a.Camera_Tpye,
                Build                 = a.Build,
                floor                 = a.floor,
                Direction             = a.Direction,
                Location              = a.Location,
                department            = a.department,
                Alarm_ID              = a.Alarm_ID,
                category              = a.category,
                Cost_code             = a.Cost_code,
                CreationTime          = a.CreationTime,
                CreatorId             = a.CreatorId,
                install_time          = a.install_time,
                LastModificationTime  = a.LastModificationTime,
                LastModifierId        = a.LastModifierId,
                manufacturer          = a.manufacturer,
                MonitorClassification = a.MonitorClassification,
                Monitoring_room       = a.Monitoring_room,
                Remark                = a.Remark
            };

            if (!String.IsNullOrEmpty(condition.Build))
            {
                data = data.Where(u => u.Build == condition.Build);
            }
            if (!String.IsNullOrEmpty(condition.floor))
            {
                data = data.Where(u => u.floor == condition.floor);
            }

            if (!String.IsNullOrEmpty(condition.DVR_ID))
            {
                data = data.Where(u => u.DVR_ID == condition.DVR_ID);
            }

            if (!String.IsNullOrEmpty(condition.Camera_ID))
            {
                data = data.Where(u => u.Camera_ID == condition.Camera_ID);
            }
            if (!String.IsNullOrEmpty(condition.Location))
            {
                data = data.Where(u => u.Location.Contains(condition.Location));
            }
            if (!String.IsNullOrEmpty(condition.install_time))
            {
                data = data.Where(u => u.install_time.Contains(condition.install_time));
            }

            if (!input.Sorting.IsNullOrWhiteSpace())
            {
                var data1 = data.OrderBy(input.Sorting).PageBy(input.SkipCount, input.MaxResultCount);
                return(new PagedResultDto <CameraDto> {
                    TotalCount = data.ToList().Count, Items = data1.ToList()
                });
            }
            else
            {
                var data2 = data.OrderBy(d => d.Id).PageBy(input.SkipCount, input.MaxResultCount);
                return(new PagedResultDto <CameraDto> {
                    TotalCount = data.ToList().Count, Items = data2.ToList()
                });
            }
            //   return new PagedResultDto<CameraDto> { TotalCount = data.ToList().Count, Items = data.ToList() };
        }
        public PagedResultDto <CameraDto> GetListBylike(string condition, PagedSortedRequestDto input)
        {
            //加载CameraDto
            var data = from a in _repository
                       select new CameraDto
            {
                Id                    = a.Id,
                DVR_ID                = a.DVR_ID,
                channel_ID            = a.channel_ID,
                Camera_ID             = a.Camera_ID,
                Camera_Tpye           = a.Camera_Tpye,
                Build                 = a.Build,
                floor                 = a.floor,
                Direction             = a.Direction,
                Location              = a.Location,
                department            = a.department,
                Alarm_ID              = a.Alarm_ID,
                category              = a.category,
                Cost_code             = a.Cost_code,
                CreationTime          = a.CreationTime,
                CreatorId             = a.CreatorId,
                install_time          = a.install_time,
                LastModificationTime  = a.LastModificationTime,
                LastModifierId        = a.LastModifierId,
                manufacturer          = a.manufacturer,
                MonitorClassification = a.MonitorClassification,
                Monitoring_room       = a.Monitoring_room,
                Remark                = a.Remark
            };
            IQueryable <CameraDto> data1;


            //条件为空返回
            if (condition.IsNullOrEmpty())
            {
                if (!input.Sorting.IsNullOrWhiteSpace())
                {
                    data1 = data.OrderBy(input.Sorting).PageBy(input.SkipCount, input.MaxResultCount);
                }
                else
                {
                    data1 = data.OrderBy(d => d.Id).PageBy(input.SkipCount, input.MaxResultCount);
                }
                return(new PagedResultDto <CameraDto>()
                {
                    Items = data1.ToList(), TotalCount = data.Count()
                });
            }
            else
            {
                condition = ChineseConverter.Convert(condition, ChineseConversionDirection.SimplifiedToTraditional);
                //按 楼栋-楼层位置搜索

                if (condition.Length > 4)
                {
                    if (data.Where(u => u.Build.Contains(condition.Substring(0, 3))).ToList().Count != 0)
                    {
                        data = data.Where(u => u.Build.Contains(condition.Substring(0, 3)));

                        string str1 = condition.Split('F')[0];

                        if (data.Where(u => u.floor.Contains(str1.Substring(4))).Count() != 0)
                        {
                            data = data.Where(u => u.floor.Contains(str1.Substring(4)));
                            string str2 = condition.Split('F')[1];
                            if (!str2.IsNullOrEmpty())
                            {
                                if (data.Where(u => u.Location.Contains(str2)).Count() != 0)
                                {
                                    data = data.Where(u => u.Location.Contains(str2));
                                }
                                else
                                {
                                    return(null);
                                }
                            }
                        }
                    }
                }

                //条件筛选
                if (data.Where(u => u.DVR_ID.Contains(condition)).Count() != 0)
                {
                    data = data.Where(u => u.DVR_ID.Contains(condition));
                }
                if (data.Where(u => u.Camera_ID.Contains(condition)).Count() != 0)
                {
                    data = data.Where(u => u.Camera_ID.Contains(condition));
                }
                if (data.Where(u => u.Location.Contains(condition)).Count() != 0)
                {
                    data = data.Where(u => u.Location.Contains(condition));
                }
                if (data.Where(u => u.department.Contains(condition)).Count() != 0)
                {
                    data = data.Where(u => u.Direction.Contains(condition));
                }

                if (!input.Sorting.IsNullOrWhiteSpace())
                {
                    data1 = data.OrderBy(input.Sorting).PageBy(input.SkipCount, input.MaxResultCount);
                }
                else
                {
                    data1 = data.OrderBy(d => d.Id).PageBy(input.SkipCount, input.MaxResultCount);
                }
                return(new PagedResultDto <CameraDto>()
                {
                    Items = data1.ToList(), TotalCount = data.Count()
                });
            }
        }