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); }
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); }
/// <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)); }