Ejemplo n.º 1
0
        private Expression <Func <ResidentInfo, bool> > SearchIdentityResidentWhere1(AddIdentitySearchResidentViewModel addIdentitySearchResidentViewModel)
        {
            var predicate = WhereExtension.True <ResidentInfo>();//初始化where表达式

            if (addIdentitySearchResidentViewModel.IdentityName != "")
            {
                predicate = predicate.And(p => p.ResidentRelationShips.ResidentIdentity.IdentityName == (addIdentitySearchResidentViewModel.IdentityName));
            }

            //predicate = predicate.And(p=>p.Id in from(select id from residentRelationShip where ResidentIdentityId != 'da6df0ea-ec42-47db-9eb3-5713f9f2c50b'));
            predicate = predicate.And(p => p.Status == "1");

            return(predicate);
        }
Ejemplo n.º 2
0
        public int getAddIdentitySearchResidentCount(AddIdentitySearchResidentViewModel addIdentitySearchResidentViewModel)
        {
            var predicate  = SearchIdentityResidentWhere(addIdentitySearchResidentViewModel);
            var predicate1 = SearchIdentityResidentWhere1(addIdentitySearchResidentViewModel);
            var result1    = DbSet.Include(a => a.InfoRelationShips).ThenInclude(b => b.HouseInfo)
                             .Include(a => a.ResidentRelationShips).ThenInclude(b => b.ResidentIdentity)
                             .Where(predicate1)
                             .Select(
                p => new AddIdentitySearchResidentMiddle()
            {
                Id = p.Id
            }
                )
                             .ToList()
                             .GroupBy(a => a.Id).Select(a => a.First()).ToList();

            var result = DbSet.Include(a => a.InfoRelationShips).ThenInclude(b => b.HouseInfo)
                         .Include(a => a.ResidentRelationShips).ThenInclude(b => b.ResidentIdentity)
                         .Where(predicate)
                         .Select(
                p => new AddIdentitySearchResidentMiddle()
            {
                Id       = p.Id,
                Name     = p.Name,
                Phone    = p.Phone,
                IdNumber = p.IdNumber
            }
                ).ToList()
                         .Except(result1, new ScoreFormIDComparer())

                         .ToList()
                         .GroupBy(a => a.Id).Select(a => a.First())  //根据居民id去重
                         .Count();

            return(result);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 查询添加身份时 查询不是该身份的居民信息
        /// </summary>
        /// <param name="addIdentitySearchResidentViewModel"></param>
        /// <returns></returns>
        #region
        public List <AddIdentitySearchResidentMiddle> getAddIdentitySearchResident(AddIdentitySearchResidentViewModel addIdentitySearchResidentViewModel)    //Include(a => a.ResidentRelationShips).Select(b=>b.ResidentIdentity) //.Include(a => a.InfoRelationShips.Select(b => b.HouseInfo))
        {
            int SkipNum    = addIdentitySearchResidentViewModel.pageViewModel.CurrentPageNum * addIdentitySearchResidentViewModel.pageViewModel.PageSize;
            var predicate  = SearchIdentityResidentWhere(addIdentitySearchResidentViewModel);
            var predicate1 = SearchIdentityResidentWhere1(addIdentitySearchResidentViewModel);
            var result1    = DbSet.Include(a => a.InfoRelationShips).ThenInclude(b => b.HouseInfo)
                             .Include(a => a.ResidentRelationShips).ThenInclude(b => b.ResidentIdentity)
                             .Where(predicate1)
                             .Select(
                p => new AddIdentitySearchResidentMiddle()
            {
                Id = p.Id
            }
                )
                             .ToList()
                             .GroupBy(a => a.Id).Select(a => a.First()).ToList();

            var result = DbSet.Include(a => a.InfoRelationShips).ThenInclude(b => b.HouseInfo)
                         .Include(a => a.ResidentRelationShips).ThenInclude(b => b.ResidentIdentity)
                         .Where(predicate)
                         .OrderBy(a => a.AddTime)

                         //.FromSql("", addIdentitySearchResidentViewModel.IdentityName)
                         .Select(
                p => new AddIdentitySearchResidentMiddle()
            {
                Id       = p.Id,
                Name     = p.Name,
                Phone    = p.Phone,
                IdNumber = p.IdNumber

                           //Area = p.InfoRelationShips.HouseInfo.Area,
                           //BuildingNo=p.InfoRelationShips.HouseInfo.BuildingNo,
                           //UnitNo= p.InfoRelationShips.HouseInfo.UnitNo,
                           //HouseNo = p.InfoRelationShips.HouseInfo.HouseNo,
            }
                ).ToList()
                         .Except(result1, new ScoreFormIDComparer())

                                                                     //var jk = (from a in result select a.Id).Except(from a in result1 select a.Id);
                         .ToList()
                         .GroupBy(a => a.Id).Select(a => a.First()); //根据居民id去重
            //将结果放入内存中
            var aaaa = result.AsEnumerable()
                       .Skip(SkipNum)
                       .Take(addIdentitySearchResidentViewModel.pageViewModel.PageSize).ToList();

            //.Select(p => new ResidentMiddle()
            // {
            //    Id =p.Id,
            //    Address = p.Address,
            //    Company = p.Company,
            //    Education = p.Education,
            //    HouseInfo = p.InfoRelationShips.HouseInfo,
            //    ResidentIdentity = p.ResidentRelationShips.ResidentIdentity
            // }

            //).ToList();
            return(aaaa);

            //    DbSet.Include(a => a.ResidentRelationShips).ThenInclude(a=>a.Select(b=>b.ResidentIdentity))
            //.Include(a => a.InfoRelationShips).ThenInclude(a => a.Select(b => b.HouseInfo));
        }
 public int getAddIdentitySearchResidentCount(AddIdentitySearchResidentViewModel addIdentitySearchResidentViewModel)
 {
     return _baseInfoInhabitantsRepository.getAddIdentitySearchResidentCount(addIdentitySearchResidentViewModel);
 }
 /// <summary>
 /// 查询添加身份时 查询不是该身份的居民信息
 /// </summary>
 /// <param name="addIdentitySearchResidentViewModel"></param>
 /// <returns></returns>
 public List<AddIdentitySearchResidentMiddle> getAddIdentitySearchResident(AddIdentitySearchResidentViewModel addIdentitySearchResidentViewModel)
 {
     var SearchResult = _baseInfoInhabitantsRepository.getAddIdentitySearchResident(addIdentitySearchResidentViewModel);
     
     return SearchResult;
 }
        public ActionResult <AddIdentitySearchResidentResViewModel> AddIdentity_OpinionInfo_Search(AddIdentitySearchResidentViewModel addIdentitySearchResidentViewModel)
        {
            var SearchResult = _baseInfoInhabitantsService.getAddIdentitySearchResident(addIdentitySearchResidentViewModel);
            int Total        = _baseInfoInhabitantsService.getAddIdentitySearchResidentCount(addIdentitySearchResidentViewModel);
            var Actionresult = _inhabitantFactory.GetAddIdentitySearchResidentResViewModel();

            Actionresult.baseViewModel.IsSuccess = true;
            Actionresult.Data                       = SearchResult;
            Actionresult.TotalCount                 = Total;
            Actionresult.baseViewModel.Message      = "查询信息成功";
            Actionresult.baseViewModel.ResponseCode = 200;
            _ILogger.Information("查询信息成功");

            return(Ok(Actionresult));
        }