Пример #1
0
        public RequestPageResult <VideoDevEquipmentInfoOutput> FindDatas(PageSearchCondition <VideoDevEquipmentInfoSearchConditionInput> searchCondition)
        {
            RequestPageResult <VideoDevEquipmentInfoOutput> rst = new RequestPageResult <VideoDevEquipmentInfoOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = _repository.GetAllIncluding(dev => dev.EquipmentInfo, video => video.VideoDev);
                datas = GetRepositoryData(datas, searchCondition);

                //获取条件下所有数量
                rst.TotalCount = datas.Count();
                //排序
                datas = datas.OrderBy <VideoDevEquipmentInfo>(searchCondition.Sorting).ThenBy(dev => dev.Id);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                var rstDatas = ObjectMapper.Map <List <VideoDevEquipmentInfoOutput> >(datas);
                rst.ResultDatas = rstDatas;
                rst.Flag        = true;
            }
            catch { }
            return(rst);
        }
Пример #2
0
        public RequestPageResult <EquipmentTypeOutput> FindDatas(PageSearchCondition <EquipmentTypeSearchConditionInput> searchCondition)
        {
            var rst = new RequestPageResult <EquipmentTypeOutput>()
            {
                Flag = false
            };

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = GetRepositoryData(searchCondition);
                var count = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting).ThenBy(item => item.Name) : datas.OrderBy(type => type.Name);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                rst.ResultDatas = ObjectMapper.Map <List <EquipmentTypeOutput> >(datas);
                rst.TotalCount  = count;
                rst.Flag        = true;
            }
            catch { }
            return(rst);
        }
Пример #3
0
        public RequestPageResult <SelectModelOutput> FindEquipmentTypeForSelect(PageSearchCondition <EquipmentTypeSearchConditionInput> searchCondition)
        {
            var rst = new RequestPageResult <SelectModelOutput>()
            {
                Flag = false
            };

            if (searchCondition == null)
            {
                return(rst);
            }

            try
            {
                searchCondition.SearchCondition.IsOnlyActive = true;
                var datas = GetRepositoryData(searchCondition);
                rst.ResultDatas = datas.Select(item => new SelectModelOutput()
                {
                    Value = item.Id.ToString().ToLower(),
                    Key   = item.Id,
                    Text  = item.Name
                }).ToList();
                rst.Flag = true;
            }
            catch { }
            return(rst);
        }
Пример #4
0
        public RequestPageResult <ManufacturerInfoOutput> FindDatas(PageSearchCondition <ManufacturerInfoSearchConditionInput> searchCondition)
        {
            RequestPageResult <ManufacturerInfoOutput> rst = new RequestPageResult <ManufacturerInfoOutput>()
            {
                Flag = false
            };

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = GetRepositoryData(searchCondition);
                //获取条件下所有数量
                var totalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(item => searchCondition.Sorting) : datas.OrderBy(item => item.ManufacturerName);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);

                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }

                rst.TotalCount  = totalCount;
                rst.ResultDatas = ObjectMapper.Map <List <ManufacturerInfoOutput> >(datas);
                rst.Flag        = true;
            }
            catch { }
            return(rst);
        }
Пример #5
0
        public RequestPageResult <PowerSupplyLineOutput> FindDatas(PageSearchCondition <PowerSupplyLineSearchConditionInput> searchCondition)
        {
            RequestPageResult <PowerSupplyLineOutput> rst = new RequestPageResult <PowerSupplyLineOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = searchCondition.SearchCondition.IsNeedChildren ? _powerSupplyLineRepository.GetAllIncluding(line => line.TransformerSubstations) : _powerSupplyLineRepository.GetAll();
                if (searchCondition.SearchCondition.IsOnlyActive)
                {
                    datas = datas.Where(line => line.IsActive);
                }
                datas = datas.WhereIf(!searchCondition.SearchCondition.LineName.IsNullOrEmpty(), line => line.LineName.Contains(searchCondition.SearchCondition.LineName));
                //获取条件下所有数量
                rst.TotalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting) : datas.OrderBy(line => line.LineName);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                rst.ResultDatas = ObjectMapper.Map <List <PowerSupplyLineOutput> >(datas);
                rst.Flag        = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
        public RequestPageResult <SelectModelOutput> FindVideoDevForSelect(PageSearchCondition <VideoDevSearchConditionInput> searchCondition)
        {
            RequestPageResult <SelectModelOutput> rst = new RequestPageResult <SelectModelOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                searchCondition.SearchCondition.IsOnlyActive = true;
                var preDatas = searchCondition.SearchCondition.IsNeedPresetPoint ? _repository.GetAllIncluding(dev => dev.PresetPoints) : _repository.GetAllIncluding();
                var datas    = GetReponsityData(searchCondition, preDatas);
                datas           = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting).ThenBy(dev => dev.SeqNo) : datas.OrderBy(dev => dev.SeqNo).ThenBy(dev => dev.DevName);
                rst.ResultDatas = datas.Select(dev => new SelectModelOutput
                {
                    Key      = dev.Id,
                    ParentId = dev.VideoDevId,
                    Text     = dev.DevName,
                    Value    = dev.Id.ToString().ToLower()
                }).ToList();
                rst.Flag = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
Пример #7
0
        public RequestPageResult <SelectModelOutput> FindManufacturerInfoForSelect(PageSearchCondition <ManufacturerInfoSearchConditionInput> searchCondition)
        {
            var rst = new RequestPageResult <SelectModelOutput>()
            {
                Flag = false
            };

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var trupleData = GetRepositoryData(searchCondition);
                rst.ResultDatas = trupleData.Where(ter => ter.IsActive).Select(item => new SelectModelOutput()
                {
                    Value = item.Id.ToString().ToLower(),
                    Key   = item.Id,
                    Text  = item.ManufacturerName
                }).ToList();
                rst.TotalCount = trupleData.Count();
                rst.Flag       = true;
            }
            catch { }
            return(rst);
        }
Пример #8
0
        public RequestPageResult <FunctionOutput> FindDatas(PageSearchCondition <FunctionSearchConditionInput> searchCondition)
        {
            RequestPageResult <FunctionOutput> rst = new RequestPageResult <FunctionOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                IQueryable <SysFunction> datas;
                datas = _repository.GetAllIncluding();
                datas = GetfilteredData(datas, searchCondition);
                //获取条件下所有数量
                rst.TotalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy <SysFunction>(searchCondition.Sorting).ThenBy(dev => dev.SeqNo) : datas.OrderBy(dev => dev.Id);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                var rstDatas = ObjectMapper.Map <List <FunctionOutput> >(datas);
                rst.ResultDatas = rstDatas;
                rst.Flag        = true;
            }
            catch { }
            return(rst);
        }
        public RequestPageResult <InspectionItemResultOutput> FindDatas(PageSearchCondition <InspectionItemResultSearchConditionInput> searchCondition)
        {
            RequestPageResult <InspectionItemResultOutput> rst = new RequestPageResult <InspectionItemResultOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = _inspectionItemResultRepository.GetAll();
                datas = datas
                        .WhereIf(!searchCondition.SearchCondition.ItemName.IsNullOrEmpty(), e => e.ItemName.Contains(searchCondition.SearchCondition.ItemName, StringComparison.Ordinal))
                        .WhereIf(searchCondition.SearchCondition.InspectionResultId.HasValue, e => e.InspectionResultId == searchCondition.SearchCondition.InspectionResultId)
                        .WhereIf(searchCondition.SearchCondition.MaxAnalysisTime.HasValue, e => e.AnalysisTime < searchCondition.SearchCondition.MaxAnalysisTime)
                        .WhereIf(searchCondition.SearchCondition.MinAnalysisTime.HasValue, e => e.AnalysisTime >= searchCondition.SearchCondition.MinAnalysisTime);
                //获取条件下所有数量
                rst.TotalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting) : datas.OrderByDescending(e => e.AnalysisTime);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                rst.ResultDatas = ObjectMapper.Map <List <InspectionItemResultOutput> >(datas);
                rst.Flag        = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
Пример #10
0
        public RequestPageResult <SelectModelOutput> FindVideoTerminalForSelect(PageSearchCondition <VideoDevEquipmentInfoSearchConditionInput> searchCondition)
        {
            RequestPageResult <SelectModelOutput> rst = new RequestPageResult <SelectModelOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                searchCondition.SearchCondition.IsOnlyActive = true;
                var datas = _repository.GetAllIncluding(video => video.VideoDev);
                var videoTerminalDatas = GetRepositoryData(datas, searchCondition).Select(item => item.VideoDev);
                videoTerminalDatas = videoTerminalDatas.OrderBy(v => v.SeqNo).ThenBy(v => v.DevName);
                rst.ResultDatas    = videoTerminalDatas.Select(dev => new SelectModelOutput
                {
                    Key   = dev.Id,
                    Text  = dev.DevName,
                    Value = dev.Id.ToString().ToLower()
                }).ToList();
                rst.Flag = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
Пример #11
0
        public RequestPageResult <TreeModelOutput> FindFunctionTypeForTree()
        {
            RequestPageResult <TreeModelOutput> rst = new RequestPageResult <TreeModelOutput>();

            try
            {
                var resData  = GetListTreeModelOutput();
                var rstDatas = ObjectMapper.Map <List <TreeModelOutput> >(resData);
                rst.ResultDatas = rstDatas;
                rst.Flag        = true;
            }
            catch (Exception ex) { throw new Exception(ex.ToString()); }
            return(rst);
        }
Пример #12
0
        public RequestPageResult <SelectModelOutput> FindTypesForSelect()
        {
            RequestPageResult <SelectModelOutput> rst = new RequestPageResult <SelectModelOutput>();

            try
            {
                var datas    = _functionTypes;
                var rstDatas = ObjectMapper.Map <List <SelectModelOutput> >(datas);
                rst.ResultDatas = rstDatas;
                rst.Flag        = true;
            }
            catch { }
            return(rst);
        }
        public RequestPageResult <SelectModelOutput> FindDevTypeForSelect()
        {
            RequestPageResult <SelectModelOutput> rst = new RequestPageResult <SelectModelOutput>()
            {
                Flag = false
            };

            try
            {
                rst.ResultDatas = base.GetEnumTypes <VideoDevTypeEnum>();
                rst.Flag        = true;
            }
            catch { }
            return(rst);
        }
Пример #14
0
        public RequestPageResult <SelectModelOutput> FindProcessActionsForSelect()
        {
            RequestPageResult <SelectModelOutput> rst = new RequestPageResult <SelectModelOutput>();

            try
            {
                rst.ResultDatas = base.GetEnumTypes <ProcessActionEnum>();
                rst.Flag        = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
Пример #15
0
        public RequestPageResult <SelectModelOutput> FindPresetPointsForSelect(PageSearchCondition <PresetPointSearchCondition> searchCondition)
        {
            RequestPageResult <SelectModelOutput> rst = new RequestPageResult <SelectModelOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = _presetPointRepository.GetAll();
                if (searchCondition.SearchCondition.IsOnlyActive)
                {
                    datas = datas.Where(ter => ter.IsActive);
                }
                datas = datas
                        .WhereIf(!searchCondition.SearchCondition.Name.IsNullOrEmpty(), p => p.Name.Contains(searchCondition.SearchCondition.Name, StringComparison.Ordinal))
                        .WhereIf(searchCondition.SearchCondition.VideoDevId.HasValue, p => p.VideoDevId == searchCondition.SearchCondition.VideoDevId)
                        .WhereIf(searchCondition.SearchCondition.Number != 0, p => p.Number == searchCondition.SearchCondition.Number);
                //获取条件下所有数量
                //rst.TotalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting) : datas.OrderBy(ter => ter.Name);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != 0)
                {
                    datas.PageBy(skipCount, searchCondition.PageSize);
                }
                rst.ResultDatas = datas.Select(p => new SelectModelOutput
                {
                    Key   = p.Id,
                    Text  = p.Name,
                    Value = p.Id.ToString().ToLower()
                }).ToList();
                rst.Flag    = true;
                rst.Message = "操作成功";
            }
            catch (Exception ex)
            {
                rst.Flag    = false;
                rst.Message = ex.ToString();
            }
            return(rst);
        }
        public async Task <RequestPageResult <VideoDevOutput> > FindVideoDevById(Guid id)
        {
            RequestPageResult <VideoDevOutput> rst = new RequestPageResult <VideoDevOutput>();

            if (id == null || id == default)
            {
                return(rst);
            }
            try
            {
                var data = await _repository.FirstOrDefaultAsync(u => u.Id == id).ConfigureAwait(false);

                rst.ResultDatas = new List <VideoDevOutput>(1)
                {
                    ObjectMapper.Map <VideoDevOutput>(data)
                };
                rst.Flag = true;
            }
            catch { }
            return(rst);
        }
        public RequestPageResult <TestEntity> TestMongoDBSearch()
        {
            RequestPageResult <TestEntity> rst = new RequestPageResult <TestEntity>
            {
                Flag = true
            };

            try
            {
                List <TestEntity> entities = new List <TestEntity>();
                var guid = Guid.Parse("d5865fed-eea5-f742-9159-cf449f5a7354");
                //entities.Add(_testEntityRepository.GetOne(guid));
                rst.ResultDatas = _testEntityRepository.GetAll(e => e.Name == "测试MongoDB2233").ToList();
            }
            catch (Exception ex)
            {
                _        = ex ?? throw new Exception(ex.ToString());
                rst.Flag = false;
            }
            return(rst);
        }
Пример #18
0
        public virtual RequestPageResult <UserOutput> FindDatas([FromBody] PageSearchCondition <UserSearchConditionInput> searchCondition)
        {
            RequestPageResult <UserOutput> rst = new RequestPageResult <UserOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                var datas     = _sysUserRepository.GetAllIncluding()
                                .WhereIf(!searchCondition.SearchCondition.UserName.IsNullOrEmpty(), u => u.UserName.Contains(searchCondition.SearchCondition.UserName, StringComparison.Ordinal));
                if (searchCondition.SearchCondition.IsOnlyActive)
                {
                    datas = datas.Where(u => u.IsActive);
                }
                rst.TotalCount = datas.Count();
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                if (!string.IsNullOrWhiteSpace(searchCondition.Sorting))
                {
                    datas = datas.OrderBy(searchCondition.Sorting);
                }
                else
                {
                    datas = datas.OrderBy(u => u.UserName);
                }
                rst.ResultDatas = ObjectMapper.Map <List <UserOutput> >(datas);
                rst.Flag        = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
Пример #19
0
        public RequestPageResult <TransformerSubstationOutput> FindDatas(PageSearchCondition <TransformerSubstationSearchConditionInput> searchCondition)
        {
            RequestPageResult <TransformerSubstationOutput> rst = new RequestPageResult <TransformerSubstationOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = searchCondition.SearchCondition.IsNeedChildren ? _transformerSubstationRepository.GetAllIncluding(Station => Station.VideoDevs) : _transformerSubstationRepository.GetAll();
                if (searchCondition.SearchCondition.IsOnlyActive)
                {
                    datas = datas.Where(sub => sub.IsActive);
                }
                datas = datas.WhereIf(searchCondition.SearchCondition.SubstationName != null, sub => sub.SubstationName.Contains(searchCondition.SearchCondition.SubstationName, StringComparison.OrdinalIgnoreCase));

                datas = datas.WhereIf(searchCondition.SearchCondition.PowerSupplyLineId != null, sub => (sub.PowerSupplyLineId ?? new Guid()).Equals(searchCondition.SearchCondition.PowerSupplyLineId));
                //获取条件下所有数量
                rst.TotalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting) : datas.OrderBy(sub => sub.SubstationName);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                rst.ResultDatas = ObjectMapper.Map <List <TransformerSubstationOutput> >(datas);
                rst.Flag        = true;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                rst.Flag = false;
            }
            return(rst);
        }
Пример #20
0
        public RequestPageResult <InspectionItemOutput> FindDatas(PageSearchCondition <InspectionItemSearchConditionInput> searchCondition)
        {
            RequestPageResult <InspectionItemOutput> rst = new RequestPageResult <InspectionItemOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = _inspectionItemRepository.GetAllIncluding(item => item.InspectionCard, item => item.PresetPoint, item => item.VideoDev);
                if (searchCondition.SearchCondition.IsOnlyActive)
                {
                    datas = datas.Where(ter => ter.IsActive);
                }
                datas = datas
                        .WhereIf(!searchCondition.SearchCondition.ItemName.IsNullOrEmpty(), item => item.ItemName.Contains(searchCondition.SearchCondition.ItemName, StringComparison.Ordinal))
                        .WhereIf(searchCondition.SearchCondition.InspectionCardId.HasValue, item => item.InspectionCardId == searchCondition.SearchCondition.InspectionCardId);
                //获取条件下所有数量
                rst.TotalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting).ThenBy(item => item.SeqNo) : datas.OrderBy(item => item.SeqNo);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                rst.ResultDatas = ObjectMapper.Map <List <InspectionItemOutput> >(datas);
                rst.Flag        = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
Пример #21
0
        public RequestPageResult <InspectionCardOutput> FindDatas(PageSearchCondition <InspectionCardSearchConditionInput> searchCondition)
        {
            RequestPageResult <InspectionCardOutput> rst = new RequestPageResult <InspectionCardOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = searchCondition.SearchCondition.IsNeedChildren ? _inspectionCardRepository.GetAllIncluding(card => card.TransformerSubstation, card => card.InspectionItems, card => card.InspectionPlanTasks) : _inspectionCardRepository.GetAllIncluding(card => card.TransformerSubstation);
                if (searchCondition.SearchCondition.IsOnlyActive)
                {
                    datas = datas.Where(ter => ter.IsActive);
                }
                datas = datas
                        .WhereIf(!searchCondition.SearchCondition.CardName.IsNullOrEmpty(), card => card.CardName.Contains(searchCondition.SearchCondition.CardName, StringComparison.Ordinal))
                        .WhereIf(searchCondition.SearchCondition.TransformerSubstationId.HasValue, card => card.TransformerSubstationId == searchCondition.SearchCondition.TransformerSubstationId);
                //获取条件下所有数量
                rst.TotalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting) : datas.OrderBy(card => card.CardName);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }
                rst.ResultDatas = ObjectMapper.Map <List <InspectionCardOutput> >(datas);
                rst.Flag        = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
        public RequestPageResult <VideoDevOutput> FindDatas(PageSearchCondition <VideoDevSearchConditionInput> searchCondition)
        {
            RequestPageResult <VideoDevOutput> rst = new RequestPageResult <VideoDevOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var preDatas = searchCondition.SearchCondition.IsNeedPresetPoint ? _repository.GetAllIncluding(dev => dev.PresetPoints, dev => dev.ManufacturerInfo) : _repository.GetAllIncluding(dev => dev.ManufacturerInfo);

                var datas = GetReponsityData(searchCondition, preDatas);
                //获取条件下所有数量
                rst.TotalCount = datas.Count();
                //排序
                datas = !string.IsNullOrWhiteSpace(searchCondition.Sorting) ? datas.OrderBy(searchCondition.Sorting).ThenBy(dev => dev.SeqNo) : datas.OrderBy(dev => dev.SeqNo);
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas = datas.PageBy(skipCount, searchCondition.PageSize);
                }

                List <VideoDevOutput> rstDatas = null;
                if (!searchCondition.SearchCondition.IsVideoTerminal && searchCondition.SearchCondition.IsNeedChildren)
                {
                    var temp = _repository.GetAllIncluding(dev => dev.ManufacturerInfo).Where(dev => dev.DevType != VideoDevTypeEnum.硬盘录像机);
                    temp = temp.WhereIf(searchCondition.SearchCondition.IsOnlyActive, dev => dev.IsActive);

                    rstDatas = datas.GroupJoin(temp, pDev => pDev.Id, cDev => cDev.VideoDevId, (pDev, cDev) => new VideoDevOutput
                    {
                        Id                      = pDev.Id,
                        SeqNo                   = pDev.SeqNo,
                        DevName                 = pDev.DevName,
                        DevType                 = pDev.DevType,
                        ManufacturerInfoId      = pDev.ManufacturerInfoId,
                        IP                      = pDev.IP,
                        Port                    = pDev.Port,
                        DevUserName             = pDev.DevUserName,
                        DevPassword             = pDev.DevPassword,
                        ChannelNo               = pDev.ChannelNo,
                        IsPTZ                   = pDev.IsPTZ,
                        IsActive                = pDev.IsActive,
                        TransformerSubstationId = pDev.TransformerSubstationId,
                        VideoDevId              = pDev.VideoDevId,
                        Children                = ObjectMapper.Map <List <VideoDevOutput> >(cDev.OrderBy(dev => dev.SeqNo))
                    }).ToList();
                }
                else
                {
                    rstDatas = ObjectMapper.Map <List <VideoDevOutput> >(datas);
                }

                rst.ResultDatas = rstDatas;
                rst.Flag        = true;
            }
            catch //(Exception ex)
            {
                //throw new Exception(ex.ToString());
                rst.Flag = false;
            }
            return(rst);
        }
        public RequestPageResult <InspectionPlanTaskInfoOutput> GetInspectionPlanTaskInfosBySubId(Guid?subId)
        {
            RequestPageResult <InspectionPlanTaskInfoOutput> rst = new RequestPageResult <InspectionPlanTaskInfoOutput>();

            try
            {
                var nvrs = _videoDevRepository.GetAll().Where(n => n.IsActive && n.DevType == VideoDevTypeEnum.硬盘录像机)
                           .WhereIf(subId.HasValue, c => c.TransformerSubstationId == subId);
                var terminals = _videoDevRepository.GetAll().Where(ter => ter.IsActive && ter.DevType != VideoDevTypeEnum.硬盘录像机)
                                .Join(nvrs, ter => ter.VideoDevId, nvr => nvr.Id, (ter, nvr) => new VideoTerminalProperty
                {
                    Id                 = ter.Id,
                    SeqNo              = ter.SeqNo,
                    DevName            = ter.DevName,
                    DevType            = ter.DevType,
                    ManufacturerInfoId = ter.ManufacturerInfoId,
                    Remark             = ter.Remark,
                    ChannelNo          = ter.ChannelNo,
                    DevNo              = ter.DevNo,
                    IsPTZ              = ter.IsPTZ,
                    IsActive           = ter.IsActive,
                    VideoNVR           = new VideoNVRProperty
                    {
                        Id                      = nvr.Id,
                        SeqNo                   = nvr.SeqNo,
                        DevName                 = nvr.DevName,
                        DevType                 = nvr.DevType,
                        ManufacturerInfoId      = nvr.ManufacturerInfoId,
                        Remark                  = nvr.Remark,
                        IP                      = nvr.IP,
                        Port                    = nvr.Port,
                        DevUserName             = nvr.DevUserName,
                        DevPassword             = nvr.DevPassword,
                        IsActive                = nvr.IsActive,
                        TransformerSubstationId = nvr.TransformerSubstationId
                    }
                });
                var points = _presetPointRepository.GetAll().Where(c => c.IsActive)
                             .Select(p => new PresetPointProperty
                {
                    Id         = p.Id,
                    Number     = p.Number,
                    Name       = p.Name,
                    IsActive   = p.IsActive,
                    VideoDevId = p.VideoDevId,
                });
                var inspectionItems = _inspectionItemRepository.GetAll().Where(c => c.IsActive)
                                      .Join(terminals, item => item.VideoDevId, ter => ter.Id, (item, ter) => new
                {
                    item.Id,
                    item.SeqNo,
                    item.ItemName,
                    item.ProcessAction,
                    item.ProcessDuration,
                    item.IsActive,
                    item.Remark,
                    item.PresetPointId,
                    item.InspectionCardId,
                    VideoTerminal = ter
                }).GroupJoin(points, item => item.PresetPointId, p => p.Id, (item, p) => new InspectionItemProperty
                {
                    Id               = item.Id,
                    SeqNo            = item.SeqNo,
                    ItemName         = item.ItemName,
                    ProcessAction    = item.ProcessAction,
                    ProcessDuration  = item.ProcessDuration,
                    IsActive         = item.IsActive,
                    Remark           = item.Remark,
                    InspectionCardId = item.InspectionCardId,
                    VideoTerminal    = item.VideoTerminal,
                    PresetPoint      = p.FirstOrDefault(),
                });

                var cards = _inspectionCardRepository.GetAll().Where(c => c.IsActive)
                            .WhereIf(subId.HasValue, c => c.TransformerSubstationId == subId)
                            .GroupJoin(inspectionItems, c => c.Id, item => item.InspectionCardId, (c, items) => new
                {
                    c.Id,
                    c.CardName,
                    c.Remark,
                    c.IsActive,
                    c.TransformerSubstationId,
                    InspectionItems = items
                });

                var pTasks = _inspectionPlanTaskRepository.GetAll().Where(c => c.IsActive)
                             .Join(cards, pt => pt.InspectionCardId, c => c.Id, (pt, c) => new InspectionPlanTaskInfoOutput
                {
                    Id             = pt.Id,
                    SeqNo          = pt.SeqNo,
                    ExecutionWeek  = pt.ExecutionWeek,
                    ExecutionTime  = pt.ExecutionTime,
                    IsActive       = pt.IsActive,
                    Remark         = pt.Remark,
                    InspectionCard = new InspectionCardProperty
                    {
                        Id       = c.Id,
                        CardName = c.CardName,
                        Remark   = c.Remark,
                        IsActive = c.IsActive,
                        TransformerSubstationId = c.TransformerSubstationId
                    },
                    InspectionItems = c.InspectionItems.OrderBy(item => item.SeqNo)
                });
#if DEBUG
                //Console.WriteLine(pTasks.ToString());
#endif
                rst.ResultDatas = pTasks.ToList();
                rst.Flag        = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }
Пример #24
0
        public RequestPageResult <PowerSupplyLineOutput> GetPowerSupplyLinesAndChildrenAsync(PageSearchCondition <PowerSupplyLineSearchConditionInput> searchCondition)
        {
            RequestPageResult <PowerSupplyLineOutput> rst = new RequestPageResult <PowerSupplyLineOutput>();

            if (searchCondition == null)
            {
                return(rst);
            }
            try
            {
                var datas = _powerSupplyLineRepository.GetAllIncluding(line => line.TransformerSubstations)
                            .WhereIf(!searchCondition.SearchCondition.LineName.IsNullOrEmpty(), line => line.LineName.Contains(searchCondition.SearchCondition.LineName, StringComparison.Ordinal))
                            .Where(line => line.IsActive);
                rst.TotalCount = datas.Count();
                //分页
                int skipCount = searchCondition.PageIndex <= 0 ? -1 : ((searchCondition.PageIndex - 1) * searchCondition.PageSize);
                if (skipCount != -1)
                {
                    datas.PageBy(skipCount, searchCondition.PageSize);
                }

                var devs     = _videoDevRepository.GetAll().Where(dev => dev.IsActive);
                var tempDevs = _videoDevRepository.GetAll().Where(dev => dev.IsActive);
                IQueryable <VideoDevOutput> devOuputs = devs.GroupJoin(tempDevs, pDev => pDev.Id, cDev => cDev.VideoDevId, (pDev, cDev) => new VideoDevOutput
                {
                    Id                      = pDev.Id,
                    SeqNo                   = pDev.SeqNo,
                    DevName                 = pDev.DevName,
                    DevType                 = pDev.DevType,
                    ManufacturerInfoId      = pDev.ManufacturerInfoId,
                    IP                      = pDev.IP,
                    Port                    = pDev.Port,
                    DevUserName             = pDev.DevUserName,
                    DevPassword             = pDev.DevPassword,
                    ChannelNo               = pDev.ChannelNo,
                    DevNo                   = pDev.DevNo,
                    IsPTZ                   = pDev.IsPTZ,
                    IsActive                = pDev.IsActive,
                    TransformerSubstationId = pDev.TransformerSubstationId,
                    VideoDevId              = pDev.VideoDevId,
                    Children                = ObjectMapper.Map <List <VideoDevOutput> >(cDev.OrderBy(devOuput => devOuput.SeqNo))
                }).OrderBy(devOuput => devOuput.SeqNo).AsQueryable();

                var subs = _transformerSubstationRepository.GetAll().Where(dev => dev.IsActive);
                IQueryable <TransformerSubstationOutput> subOuputs = subs.GroupJoin(devOuputs, sub => sub.Id, dev => dev.TransformerSubstationId, (sub, dev) => new TransformerSubstationOutput
                {
                    Id                = sub.Id,
                    SubstationName    = sub.SubstationName,
                    CommMgrIP         = sub.CommMgrIP,
                    Remark            = sub.Remark,
                    IsActive          = sub.IsActive,
                    PowerSupplyLineId = sub.PowerSupplyLineId,
                    VideoDevs         = dev
                }).AsQueryable();

                List <PowerSupplyLineOutput> rstDatas = datas.GroupJoin(subOuputs, line => line.Id, sub => sub.PowerSupplyLineId, (line, sub) => new PowerSupplyLineOutput
                {
                    Id       = line.Id,
                    LineName = line.LineName,
                    Remark   = line.Remark,
                    IsActive = line.IsActive,
                    TransformerSubstations = sub
                }).ToList();
#if DEBUG
                //Console.WriteLine("【GetPowerSupplyLinesAndChildrenAsync】SQL:"+ datas.ToString());
#endif
                rst.ResultDatas = rstDatas;
                rst.Flag        = true;
            }
            catch
            {
                rst.Flag = false;
            }
            return(rst);
        }