/// <summary> /// 通知页面 根据房屋信息,身份,人员信息 查询 /// </summary> /// <param name="baseInfoInhabitantViewModel"></param> /// <returns></returns> public List<BaseInfoInhabitantMiddle> getResidentByAllInfo(BaseInfoInhabitantViewModel baseInfoInhabitantViewModel) { var SearchResult = _baseInfoInhabitantsRepository.getResidentByAllInfo(baseInfoInhabitantViewModel); //var SearchResultMiddle = _IMapper.Map<List<ResidentInfo>, List<ResidentMiddle>>(SearchResult); //var SearchResultModel = _IMapper.Map<List<ResidentMiddle>, List<BaseInfoInhabitantMiddle>>(SearchResultMiddle); return SearchResult; //return _baseInfoInhabitantsRepository.getResidentByAllInfo(); }
/// <summary> /// 发送通知时 根据房子 身份 居民 查询所有信息 /// </summary> /// <param name="baseInfoInhabitantViewModel"></param> /// <returns></returns> #region public List <BaseInfoInhabitantMiddle> getResidentByAllInfo(BaseInfoInhabitantViewModel baseInfoInhabitantViewModel) //Include(a => a.ResidentRelationShips).Select(b=>b.ResidentIdentity) //.Include(a => a.InfoRelationShips.Select(b => b.HouseInfo)) { int SkipNum = baseInfoInhabitantViewModel.pageViewModel.CurrentPageNum * baseInfoInhabitantViewModel.pageViewModel.PageSize; var predicate = SearchAllWhere(baseInfoInhabitantViewModel); 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) .Select( p => new BaseInfoInhabitantMiddle() { Id = p.Id, Name = p.Name, Gender = p.Gender, Age = Convert.ToInt32(DateTime.Now.Year.ToString()) - Convert.ToInt32(p.IdNumber.Substring(6, 4)), //Area=p.InfoRelationShips.HouseInfo.Area, Phone = p.Phone, IdNumber = p.IdNumber } ) .ToList(); var aaaa = result.AsEnumerable() .Skip(SkipNum) .Take(baseInfoInhabitantViewModel.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 getResidentByAllInfoCount(BaseInfoInhabitantViewModel baseInfoInhabitantViewModel) { var predicate = SearchAllWhere(baseInfoInhabitantViewModel); var result = DbSet.Include(a => a.InfoRelationShips).ThenInclude(b => b.HouseInfo) .Include(a => a.ResidentRelationShips).ThenInclude(b => b.ResidentIdentity) .Where(predicate) .Select( p => new BaseInfoInhabitantMiddle() { Id = p.Id, Name = p.Name, Gender = p.Gender, Age = Convert.ToInt32(DateTime.Now.Year.ToString()) - Convert.ToInt32(p.IdNumber.Substring(6, 4)), Area = p.InfoRelationShips.HouseInfo.Area, Phone = p.Phone } ) .Count(); return(result); }
private Expression <Func <ResidentInfo, bool> > SearchAllWhere(BaseInfoInhabitantViewModel baseInfoInhabitantViewModel) { var predicate = WhereExtension.True <ResidentInfo>();//初始化where表达式 //id if (baseInfoInhabitantViewModel.Id != null) { predicate = predicate.And(p => p.Id.Equals(baseInfoInhabitantViewModel.Id)); } //身份 if (baseInfoInhabitantViewModel.IdentityName != "") { predicate = predicate.And(p => p.ResidentRelationShips.ResidentIdentity.IdentityName.Contains(baseInfoInhabitantViewModel.IdentityName)); } //姓名 if (baseInfoInhabitantViewModel.Name != "") { predicate = predicate.And(p => p.Name.Contains(baseInfoInhabitantViewModel.Name)); } //性别 if (baseInfoInhabitantViewModel.Gender != "") { predicate = predicate.And(p => p.Gender.Contains(baseInfoInhabitantViewModel.Gender)); } //身份证号 if (baseInfoInhabitantViewModel.IdNumber != "") { predicate = predicate.And(p => p.IdNumber.Contains(baseInfoInhabitantViewModel.IdNumber)); } //小区名 if (baseInfoInhabitantViewModel.Area != "") { predicate = predicate.And(p => p.InfoRelationShips.HouseInfo.Area.Contains(baseInfoInhabitantViewModel.Area)); } //楼号 if (baseInfoInhabitantViewModel.BuildingNo != 0) { predicate = predicate.And(p => p.InfoRelationShips.HouseInfo.BuildingNo.Equals(baseInfoInhabitantViewModel.BuildingNo)); } //单元号 if (baseInfoInhabitantViewModel.UnitNo != 0) { predicate = predicate.And(p => p.InfoRelationShips.HouseInfo.UnitNo.Equals(baseInfoInhabitantViewModel.UnitNo)); } //门牌号 if (baseInfoInhabitantViewModel.HouseNo != "") { predicate = predicate.And(p => p.InfoRelationShips.HouseInfo.HouseNo.Equals(baseInfoInhabitantViewModel.HouseNo)); } //起始年龄 if (baseInfoInhabitantViewModel.StartAge != 0) { predicate = predicate.And(p => Convert.ToInt32(DateTime.Now.Year.ToString()) - Convert.ToInt32(p.IdNumber.Substring(6, 4)) >= (baseInfoInhabitantViewModel.StartAge)); } //结束年龄 if (baseInfoInhabitantViewModel.EndAge != 0) { predicate = predicate.And(p => Convert.ToInt32(DateTime.Now.Year.ToString()) - Convert.ToInt32(p.IdNumber.Substring(6, 4)) <= (baseInfoInhabitantViewModel.EndAge)); } predicate = predicate.And(p => p.Status == "1"); return(predicate); }
public int getResidentByAllInfoCount(BaseInfoInhabitantViewModel baseInfoInhabitantViewModel) { return _baseInfoInhabitantsRepository.getResidentByAllInfoCount(baseInfoInhabitantViewModel); }
public ActionResult <BaseInfoInhabitantsResViewModel> Manage_OpinionInfo_Search(BaseInfoInhabitantViewModel baseInfoInhabitantViewModel) { var SearchResult = _baseInfoInhabitantsService.getResidentByAllInfo(baseInfoInhabitantViewModel); int Total = _baseInfoInhabitantsService.getResidentByAllInfoCount(baseInfoInhabitantViewModel); var Actionresult = _inhabitantFactory.GetBaseInfoInhabitantsResViewModel(); Actionresult.baseViewModel.IsSuccess = true; Actionresult.Data = SearchResult; Actionresult.TotalCount = Total; Actionresult.baseViewModel.Message = "查询信息成功"; Actionresult.baseViewModel.ResponseCode = 200; _ILogger.Information("查询信息成功"); return(Ok(Actionresult)); }