/// <summary> /// 审核任务列表 /// </summary> /// <param name="user"></param> /// <param name="condition"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task <PagingResponseMessage <TasksExamineResponse> > TasksExaminelistAsync(UserInfo user, TaskExamineListRequest condition, CancellationToken cancellationToken = default(CancellationToken)) { var response = new PagingResponseMessage <TasksExamineResponse>(); response.Extension = new List <TasksExamineResponse>(); var taskInfoQuery = _iTaskStore.GetTaskExamineList(condition.PeriodId); if (!string.IsNullOrWhiteSpace(condition.TaskName)) //任务名称 { taskInfoQuery = taskInfoQuery.Where(task => task.TaskName.Contains(condition.TaskName)); } if (condition.ExamineState != null) //审核状态 { taskInfoQuery = taskInfoQuery.Where(task => task.ExamineState == condition.ExamineState); } if (!string.IsNullOrWhiteSpace(condition.CreateUser)) //发布人 { taskInfoQuery = taskInfoQuery.Where(task => task.CreateUser.Contains(condition.CreateUser)); } if (condition.StartTime.HasValue)//发布开始时间 { taskInfoQuery = taskInfoQuery.Where(task => task.CreateTime >= condition.StartTime); } if (condition.EndTime.HasValue)//发布结束时间 { taskInfoQuery = taskInfoQuery.Where(task => task.CreateTime <= condition.EndTime); } response.PageIndex = condition.PageIndex; response.PageSize = condition.PageSize; response.TotalCount = await taskInfoQuery.CountAsync(); var taskInfoList = await taskInfoQuery.Skip(condition.PageIndex *condition.PageSize).Take(condition.PageSize).ToListAsync(); // 19-12-10 查询任务接取人 var taskIds = taskInfoList.Select(a => a.Id); var periodId = condition.PeriodId; var taskUsers = await(from tu in _iTaskStore.GetTaskUsers() where taskIds.Contains(tu.TaskId) join u in _iUserStore.GetUserInfos() on tu.UserId equals u.Id select new TasksExamineResponse.TaskUserDetails4 { TaskId = tu.TaskId, UserId = tu.UserId, UserName = u.UserName, OrganizationName = u.OrganizationName, GroupName = u.GroupName, }) //.OrderBy(a => a.TaskId) //// 20200107-修复-王森 一个格子里面显示两行每行3个总共6个人,多的不显示 //.Take(6) .ToListAsync(cancellationToken); //任务人员关系表 var taskUserIdQuery = _iTaskStore.GetTaskUsers().Where(w => taskIds.Contains(w.TaskId)).Select(s => s.UserId); //参与人员积分(任务对应赛季的积分) var scoreInfoList = await _iTaskStore.GetScoreInfos().Where(w => taskUserIdQuery.Contains(w.UserId) && w.PeriodId == periodId).ToListAsync(); //称号信息 var titleList = await _iTaskStore.GetScoreTitles().Where(w => !w.IsDelete && w.PeriodId == periodId).ToListAsync(); titleList.ForEach(fo => fo.Icon = _config["FileUrl"] + fo.Icon); taskUsers.ForEach(task => { task.ScoreTitle = (titleList.FirstOrDefault(fi => fi.StartScore <= scoreInfoList.First(f => f.UserId == task.UserId).Score&& fi.EndScore >= scoreInfoList.First(f => f.UserId == task.UserId).Score)?.Title) ?? "未知称号"; task.Icon = titleList.FirstOrDefault(fi => fi.StartScore <= scoreInfoList.First(f => f.UserId == task.UserId).Score&& fi.EndScore >= scoreInfoList.First(f => f.UserId == task.UserId).Score)?.Icon; }); taskInfoList.ForEach(fo => fo.TaskUsers = taskUsers.Where(a => a.TaskId == fo.Id)); response.Extension = taskInfoList; return(response); }
/// <summary> /// 获取K币任务列表 /// </summary> /// <param name="user"></param> /// <param name="request"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task <PagingResponseMessage <TaskItemResponse> > GetKcoinTaskListAsync(UserInfo user, TaskSearchRequest request, CancellationToken cancellationToken = default(CancellationToken)) { var periodId = request.PeriodId; var response = new PagingResponseMessage <TaskItemResponse>(); var querySql = @"SELECT uuid() uuid, t.Id, t.PeriodId, t.TaskName, t.TaskTntro, t.UserNumber, t.CreateTime, CONCAT(u.UserName, '-', u.GroupName) CreateUser, t.Score, t.LootTime, t.TaskState FROM jf_taskinfo as t LEFT JOIN jf_userinfo as u on t.CreateUser = u.Id"; var whereSql = $" WHERE t.IsDelete = FALSE && t.ExamineState = 2 && t.PeriodId = '{periodId}'"; var orderSql = @" ORDER BY FIELD(t.`TaskState`, 1, 0, 2, 3), (CASE t.TaskState WHEN 0 THEN t.LootTime WHEN 1 THEN t.LootTime END), (CASE t.TaskState WHEN 2 THEN t.CreateTime WHEN 3 THEN t.CreateTime END ) DESC "; // 筛选 191209-任务名称、发布人、发布时间(End>CreateTime>=Start)、任务状态搜索 if (!string.IsNullOrWhiteSpace(request.TaskName)) { whereSql += $@" && t.TaskName LIKE '%{request.TaskName.Trim()}%'"; } if (!string.IsNullOrWhiteSpace(request.CreateUser)) { whereSql += $@" && CONCAT(u.UserName, '-', u.GroupName) LIKE '%{request.CreateUser.Trim()}%'"; } if (request.CreateTimeStart != null) { whereSql += $@" && t.CreateTime >= '{request.CreateTimeStart?.ToString("yyyy-MM-dd HH:mm:ss")}'"; } if (request.CreateTimeEnd != null) { whereSql += $@" && t.CreateTime < '{request.CreateTimeEnd?.ToString("yyyy-MM-dd HH:mm:ss")}'"; } if (request.TaskState != null) { whereSql += $@" && t.TaskState = {request.TaskState}"; } response.PageIndex = request.PageIndex; response.PageSize = request.PageSize; response.TotalCount = await _iTaskStore.TaskItems.FromSql(querySql + whereSql + orderSql).CountAsync(cancellationToken); var limitSql = $@" LIMIT {request.PageIndex * request.PageSize}, {request.PageSize}"; var reList = await _iTaskStore.TaskItems.FromSql(querySql + whereSql + orderSql + limitSql).ToListAsync(); // 数据组装 // 19-12-10 任务接取人列表 var taskIds = reList.Select(a => a.Id); var taskUsers = await(from tu in _iTaskStore.GetTaskUsers() where taskIds.Contains(tu.TaskId) join u in _iUserStore.GetUserInfos() on tu.UserId equals u.Id select new TaskItemResponse.TaskUserDetails5 { TaskId = tu.TaskId, UserId = tu.UserId, UserName = u.UserName, OrganizationName = u.OrganizationName, GroupName = u.GroupName, }) //.OrderBy(a => a.TaskId) //// 20200107-修复-王森 一个格子里面显示两行每行3个总共6个人,多的不显示 //.Take(6) .ToListAsync(cancellationToken); //任务人员关系表 var taskUserIdQuery = _iTaskStore.GetTaskUsers().Where(w => taskIds.Contains(w.TaskId)).Select(s => s.UserId); //参与人员积分(任务对应赛季的积分) var scoreInfoList = await _iTaskStore.GetScoreInfos().Where(w => taskUserIdQuery.Contains(w.UserId) && w.PeriodId == periodId).ToListAsync(); //称号信息 var titleList = await _iTaskStore.GetScoreTitles().Where(w => !w.IsDelete && w.PeriodId == periodId).ToListAsync(); titleList.ForEach(fo => fo.Icon = _config["FileUrl"] + fo.Icon); taskUsers.ForEach(task => { task.ScoreTitle = (titleList.FirstOrDefault(fi => fi.StartScore <= scoreInfoList.First(f => f.UserId == task.UserId).Score&& fi.EndScore >= scoreInfoList.First(f => f.UserId == task.UserId).Score)?.Title) ?? "未知称号"; task.Icon = titleList.FirstOrDefault(fi => fi.StartScore <= scoreInfoList.First(f => f.UserId == task.UserId).Score&& fi.EndScore >= scoreInfoList.First(f => f.UserId == task.UserId).Score)?.Icon; }); reList.ForEach(fo => fo.TaskUsers = taskUsers.Where(a => a.TaskId == fo.Id)); response.Extension = reList; return(response); }
/// <summary> /// 查询开奖列表 /// </summary> /// <param name="request"></param> /// <param name="requestAborted"></param> /// <returns></returns> public async Task <PagingResponseMessage <LotteryRunListResponse> > LotteryRunListAsync(PagingRequest request, CancellationToken requestAborted) { var response = new PagingResponseMessage <LotteryRunListResponse> { Extension = new List <LotteryRunListResponse>() }; var numberPeriods = await GetNumberPeriods();//下一次开奖期数 var lrQuery = _giftStore.GetLotteryResults(); lrQuery = lrQuery.OrderByDescending(o => o.CreateTime); response.TotalCount = await lrQuery.CountAsync(); response.PageIndex = request.PageIndex; response.PageSize = request.PageSize; //第一页在最前面加一条下一期未开奖的记录 if (request.PageIndex == 0) { //下一期开奖时间 var nextTime = DateTime.Now; if (DateTime.Now < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 10:00:00"))) { nextTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 10:00:00")); } else if (DateTime.Now < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 11:30:00"))) { nextTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 11:30:00"));//TODO 年前追加,开年删除 } else if (DateTime.Now < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 13:00:00"))) { nextTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 13:00:00")); } else if (DateTime.Now < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 15:30:00"))) { nextTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 15:30:00"));//TODO 年前追加,开年删除 } else if (DateTime.Now < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 18:00:00"))) { nextTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 18:00:00")); } else if (DateTime.Now < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 21:00:00"))) { nextTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd 21:00:00")); } response.Extension.Add(new LotteryRunListResponse { IsRunlottery = false,//下一期还没有开奖 NumberPeriods = numberPeriods, Number = "XX,XX,XX,XX,XX,XX", CreateTime = nextTime.ToString("yyyy-MM-dd HH:mm:ss") }); } var re = await lrQuery.Skip(request.PageIndex *request.PageSize).Take(request.PageSize).Select(s => new LotteryRunListResponse { IsRunlottery = true,//查出来的都是已开奖的 NumberPeriods = s.NumberPeriods, Number = s.Number, CreateTime = s.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), }).ToListAsync(); response.Extension.AddRange(re); return(response); }
public async Task <PagingResponseMessage <CostInfoResponse> > SearchCost(UserInfo user, CostSearchRequest request) { PagingResponseMessage <CostInfoResponse> r = new PagingResponseMessage <CostInfoResponse>(); var query = _Store.CostQuery; List <int> statusList = new List <int>() { (int)ChargeStatus.Confirm }; var orgList = await _permissionExpansion.GetOrganizationOfPermission(user.Id, PERMISSION_MXB); query = query.Where(c => c.ChargeInfo.IsDeleted == false && statusList.Contains(c.ChargeInfo.Status)); if (request != null) { if (!String.IsNullOrEmpty(request.ReimburseDepartment)) { var orgChildren = await _permissionExpansion.GetLowerDepartments(request.ReimburseDepartment); orgList = orgList.Where(x => orgChildren.Contains(x)).ToList(); } } query = query.Where(c => orgList.Contains(c.ChargeInfo.ReimburseDepartment)); if (request != null) { if (request.StartDate != null) { var dt = request.StartDate.Value.Date; query = query.Where(c => c.ChargeInfo.CreateTime >= dt); } if (request.EndDate != null) { var dt = request.EndDate.Value.Date.AddDays(1); query = query.Where(c => c.ChargeInfo.CreateTime < dt); } if (request.IsPayment != null) { query = query.Where(c => c.ChargeInfo.IsPayment == request.IsPayment); } if (request.IsBackup != null) { query = query.Where(c => c.ChargeInfo.IsBackup == request.IsBackup); } if (!String.IsNullOrWhiteSpace(request.Keyword)) { query = query.Where(c => (c.ChargeInfo.ReimburseUserInfo.Name.Contains(request.Keyword) || c.ChargeInfo.ReimburseUserInfo.UserID.Contains(request.Keyword) || c.Memo.Contains(request.Keyword) || c.ChargeInfo.Memo.Contains(request.Keyword) || c.ChargeInfo.ChargeNo.Contains(request.Keyword))); } if (request.PageIndex > 0 && request.PageSize > 0) { r.TotalCount = await query.CountAsync(); r.PageSize = request.PageSize; r.PageIndex = request.PageIndex; query = query.Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize); } } var list = await query.ToListAsync(); r.Extension = _mapper.Map <List <CostInfoResponse> >(list); return(r); }
public async Task <PagingResponseMessage <ChargeInfoResponse> > Search(UserInfo user, ChargeSearchRequest request, string permissionId) { PagingResponseMessage <ChargeInfoResponse> r = new PagingResponseMessage <ChargeInfoResponse>(); bool hasYjk = await _permissionExpansion.HavePermission(user.Id, PERMISSION_YJK); if (String.IsNullOrEmpty(permissionId)) { permissionId = PERMISSION_YJKGL; } var orgList = await _permissionExpansion.GetOrganizationOfPermission(user.Id, permissionId); List <int> types = new List <int>() { 2, 3 }; var query = _Store.SimpleQuery; query = query.Where(c => c.IsDeleted == false && types.Contains(c.Type)); if (orgList.Count == 0) { if (!hasYjk) { r.Extension = new List <ChargeInfoResponse>(); return(r); } query = query.Where(x => x.ReimburseUser == user.Id); } else { if (request != null) { if (!String.IsNullOrEmpty(request.ReimburseDepartment)) { var orgChildren = await _permissionExpansion.GetLowerDepartments(request.ReimburseDepartment); orgList = orgList.Where(x => orgChildren.Contains(x)).ToList(); } } query = query.Where(c => orgList.Contains(c.ReimburseDepartment)); } if (request != null) { if (request.StartDate != null) { var dt = request.StartDate.Value.Date; query = query.Where(c => c.CreateTime >= dt); } if (request.EndDate != null) { var dt = request.EndDate.Value.Date.AddDays(1); query = query.Where(c => c.CreateTime < dt); } if (request.IsPayment != null) { query = query.Where(c => c.IsPayment == request.IsPayment); } if (!String.IsNullOrWhiteSpace(request.Keyword)) { query = query.Where(c => (c.ReimburseUserInfo.Name.Contains(request.Keyword) || c.ReimburseUserInfo.UserID.Contains(request.Keyword) || c.Memo.Contains(request.Keyword) || c.ChargeNo.Contains(request.Keyword))); } if (request.Status != null && request.Status.Count > 0) { query = query.Where(c => request.Status.Contains(c.Status)); } if (request.PageIndex > 0 && request.PageSize > 0) { r.TotalCount = await query.CountAsync(); r.PageSize = request.PageSize; r.PageIndex = request.PageIndex; query = query.Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize); } } var list = await query.ToListAsync(); r.Extension = _mapper.Map <List <ChargeInfoResponse> >(list); if (r.TotalCount == 0) { r.TotalCount = r.Extension.Count; } return(r); }
public async Task <PagingResponseMessage <UpdateRecordListResponse> > GetListAsync(UpdateRecordListCondition condition, CancellationToken cancellationToken = default(CancellationToken)) { PagingResponseMessage <UpdateRecordListResponse> pagingResponse = new PagingResponseMessage <UpdateRecordListResponse>(); if (condition == null) { throw new ArgumentNullException(nameof(UpdateRecordListCondition)); } var q = Store.GetDetail().Where(a => !a.IsDeleted); if (condition.ContentTypes?.Count > 0) { q = q.Where(a => condition.ContentTypes.Contains(a.ContentType)); } if (condition.ContentIds?.Count > 0) { q = q.Where(a => condition.ContentIds.Contains(a.ContentId)); } if (condition.ExamineStatus?.Count > 0) { q = q.Where(a => condition.ExamineStatus.Contains(a.ExamineStatus)); } if (!string.IsNullOrEmpty(condition.KeyWord)) { q = q.Where(a => a.Title.Contains(condition.KeyWord) || a.Content.Contains(condition.KeyWord)); } if (condition.UpdateTypes?.Count > 0) { q = q.Where(a => condition.UpdateTypes.Contains(a.UpdateType)); } if (!string.IsNullOrEmpty(condition.UserId)) { q = q.Where(a => a.UserId == condition.UserId); } if (condition.IsCurrent != null) { q = q.Where(a => a.IsCurrent == condition.IsCurrent); } if (!string.IsNullOrEmpty(condition.AreaCode)) { q = q.Where(a => a.AreaDefine.Code == condition.AreaCode); } if (!string.IsNullOrEmpty(condition.DistrictCode)) { q = q.Where(a => a.DistrictDefine.Code == condition.DistrictCode); } if (!string.IsNullOrEmpty(condition.CityCode)) { q = q.Where(a => a.CityDefine.Code == condition.CityCode); } string fr = ApplicationCore.ApplicationContext.Current.FileServerRoot; fr = (fr ?? "").TrimEnd('/'); pagingResponse.TotalCount = await q.CountAsync(cancellationToken); var qlist = await q.OrderByDescending(a => a.SubmitTime).Skip(condition.PageIndex * condition.PageSize).Take(condition.PageSize).ToListAsync(cancellationToken); var resulte = qlist.Select(a => new UpdateRecordListResponse { ContentId = a.ContentId, UserName = a.UserName, Id = a.Id, Icon = string.IsNullOrEmpty(a.Icon) ? "" : fr + "/" + a.Icon.TrimStart('/'), SubmitTime = a.SubmitTime, ContentType = a.ContentType, ExamineStatus = a.ExamineStatus, Title = a.Title, UpdateTime = a.UpdateTime, UpdateType = a.UpdateType, IsCurrent = a.IsCurrent, UserId = a.UserId, Ext1 = a.Ext1, Ext2 = a.Ext2, Ext3 = a.Ext3, Ext4 = a.Ext4, Ext5 = a.Ext5, Ext6 = a.Ext6, Ext7 = a.Ext7, Ext8 = a.Ext8, BuildingName = a.BuildingName, AreaFullName = (a.CityDefine != null && !string.IsNullOrEmpty(a.CityDefine.Name) ? a.CityDefine.Name + "-" : "") + (a.DistrictDefine != null && !string.IsNullOrEmpty(a.DistrictDefine.Name) ? a.DistrictDefine.Name + "-" : "") + (a.AreaDefine != null && !string.IsNullOrEmpty(a.AreaDefine.Name) ? a.AreaDefine.Name : "") }); pagingResponse.PageIndex = condition.PageIndex; pagingResponse.PageSize = condition.PageSize; pagingResponse.Extension = resulte.ToList(); return(pagingResponse); }
public virtual async Task <PagingResponseMessage <BuildingSearchResponse> > Search(string userId, BuildingListSearchCondition condition, CancellationToken cancellationToken = default(CancellationToken)) { if (condition == null) { throw new ArgumentNullException(nameof(condition)); } PagingResponseMessage <BuildingSearchResponse> pagingResponse = new PagingResponseMessage <BuildingSearchResponse>(); var q = _buildingsStore.GetSimpleSerchQuery().Where(a => !a.IsDeleted && a.ExamineStatus == (int)Models.ExamineStatusEnum.Approved); if (condition?.HasBank == true) { q = q.Where(a => a.BuildingFacilities.HasBank ?? true); } if (condition?.HasBus == true) { q = q.Where(a => a.BuildingFacilities.HasBus ?? true); } if (condition?.HasKindergarten == true) { q = q.Where(a => a.BuildingFacilities.HasKindergarten ?? true); } if (condition?.HasMarket == true) { q = q.Where(a => a.BuildingFacilities.HasMarket ?? true); } if (condition?.HasMiddleSchool == true) { q = q.Where(a => a.BuildingFacilities.HasMiddleSchool ?? true); } if (condition?.HasOtherTraffic == true) { q = q.Where(a => a.BuildingFacilities.HasOtherTraffic ?? true); } if (condition?.HasPrimarySchool == true) { q = q.Where(a => a.BuildingFacilities.HasPrimarySchool ?? true); } if (condition?.HasRail == true) { q = q.Where(a => a.BuildingFacilities.HasRail ?? true); } if (condition?.HasSupermarket == true) { q = q.Where(a => a.BuildingFacilities.HasSupermarket ?? true); } if (condition?.HasUniversity == true) { q = q.Where(a => a.BuildingFacilities.HasUniversity ?? true); } if (!string.IsNullOrEmpty(condition.KeyWord)) { q = q.Where(a => a.BuildingBaseInfo.Name.Contains(condition.KeyWord)); } if (!string.IsNullOrEmpty(condition.City)) { q = q.Where(a => a.BuildingBaseInfo.City == condition.City); } if (!string.IsNullOrEmpty(condition.Area)) { q = q.Where(a => a.BuildingBaseInfo.Area == condition.Area); } if (!string.IsNullOrEmpty(condition.District)) { q = q.Where(a => a.BuildingBaseInfo.District == condition.District); } if (condition?.LowPrice != null && condition?.HighPrice != null) { q = q.Where(a => a.BuildingBaseInfo.MaxPrice > condition.LowPrice && a.BuildingBaseInfo.MinPrice < condition.HighPrice); //if (condition?.HighPrice != null) //{ // q = q.Where(a => a.BuildingBaseInfo.MaxPrice < condition.HighPrice &&); //} //else if (condition?.LowPrice != null) //{ // q = q.Where(a => a.BuildingBaseInfo.MinPrice > condition.LowPrice); //} //else //{ // q = q.Where(a => a.BuildingBaseInfo.MinPrice > condition.LowPrice && a.BuildingBaseInfo.MaxPrice > condition.LowPrice || a.BuildingBaseInfo.MaxPrice < condition.HighPrice); //} } else if (condition?.LowPrice != null && condition?.HighPrice == null) { q = q.Where(a => a.BuildingBaseInfo.MinPrice > condition.LowPrice); } //if (condition?.HighPrice != null) //{ // q = q.Where(a => a.BuildingBaseInfo.MaxPrice < condition.HighPrice); //} if (condition?.SaleStatus?.Count > 0) { q = q.Where(a => condition.SaleStatus.Contains(a.BuildingShopInfo.SaleStatus)); } if (condition?.PriceIsAscSort == null) { q = q.OrderBy(a => a.BuildingBaseInfo.OpenDate); } if (condition?.PriceIsAscSort == true) { q = q.OrderBy(a => (a.BuildingBaseInfo.MinPrice ?? 0 + a.BuildingBaseInfo.MinPrice ?? 0) / (decimal)2); } if (condition?.PriceIsAscSort == false) { q = q.OrderByDescending(a => (a.BuildingBaseInfo.MinPrice ?? 0 + a.BuildingBaseInfo.MinPrice ?? 0) / (decimal)2); } if (condition.IsReport) { q = q.Where(a => a.BuildingRule != null && (a.BuildingRule.ReportTime == null || a.BuildingRule.ReportTime != null && a.BuildingRule.ReportTime < DateTime.Now.AddDays(5)) /* && a.BuildingRule.IsUse*/); } string fr = ApplicationCore.ApplicationContext.Current.FileServerRoot; fr = (fr ?? "").TrimEnd('/'); pagingResponse.TotalCount = await q.CountAsync(cancellationToken); var qlist = await q.Skip(condition.PageIndex *condition.PageSize).Take(condition.PageSize).ToListAsync(cancellationToken); var resulte = qlist.Select(a => new BuildingSearchResponse { Id = a.Id, Address = a.BuildingBaseInfo.Address, AreaFullName = a.BuildingBaseInfo.CityDefine.Name + "-" + a.BuildingBaseInfo.DistrictDefine.Name + "-" + a.BuildingBaseInfo.AreaDefine.Name, MaxPrice = a.BuildingBaseInfo.MaxPrice, MinPrice = a.BuildingBaseInfo.MinPrice, Name = a.BuildingBaseInfo.Name, Icon = string.IsNullOrEmpty(a.Icon) ? "" : fr + "/" + a.Icon.TrimStart('/'), HasBus = a.BuildingFacilities.HasBus, HasRail = a.BuildingFacilities.HasRail, HasOtherTraffic = a.BuildingFacilities.HasOtherTraffic, HasKindergarten = a.BuildingFacilities.HasKindergarten, HasPrimarySchool = a.BuildingFacilities.HasPrimarySchool, HasMiddleSchool = a.BuildingFacilities.HasMiddleSchool, HasUniversity = a.BuildingFacilities.HasUniversity, HasMarket = a.BuildingFacilities.HasMarket, HasSupermarket = a.BuildingFacilities.HasSupermarket, HasBank = a.BuildingFacilities.HasBank, BeltLook = a.BuildingRule?.ReportTime }); pagingResponse.PageIndex = condition.PageIndex; pagingResponse.PageSize = condition.PageSize; pagingResponse.Extension = resulte.ToList(); return(pagingResponse); }
/// <summary> /// 批量 查询 /// </summary> /// <param name="response"></param> /// <param name="request"></param> public async Task List([Required] PagingResponseMessage <UserJson> response, [Required] ModelRequest <UserJson> request) { response.Extension = await Store.Find().Select(ub => Mapper.Map <UserJson>(ub)).ToListAsync(); }
/// <summary> /// 获取我的商铺收藏信息 /// </summary> /// <param name="userId"></param> /// <param name="condition"></param> /// <param name="cancellationToken">验证</param> /// <returns></returns> public virtual async Task <PagingResponseMessage <ShopsFavoriteResponse> > FindMyShopsFavoriteAsync(string userId, PageCondition condition, CancellationToken cancellationToken = default(CancellationToken)) { var resulte = new PagingResponseMessage <ShopsFavoriteResponse>(); var response = _ishopsFavoritesStore.ShopsFavoriteAll().Where(b => b.UserId == userId && !b.IsDeleted && !b.Shops.IsDeleted); if (!string.IsNullOrEmpty(condition.KeyWord)) { response = response.Where(x => x.Shops.ShopBaseInfo.Name.Contains(condition.KeyWord)); } var query = await response.OrderByDescending(x => x.FavoriteTime).Skip(condition.PageIndex * condition.PageSize).Take(condition.PageSize).ToListAsync(cancellationToken); string fr = ApplicationCore.ApplicationContext.Current.FileServerRoot; fr = (fr ?? "").TrimEnd('/'); var aasd = query.Select(a => new ShopsFavoriteResponse { Id = a.Id, ShopsId = a.ShopsId, UserId = a.UserId, FavoriteTime = a.FavoriteTime, UserNikeName = a.UserNikeName, ShopListSearchResponse = new ShopListSearchResponse { Id = a.Shops.Id, Address = a.Shops.Buildings.BuildingBaseInfo.Address, AreaFullName = a.Shops.Buildings.BuildingBaseInfo.CityDefine.Name + "-" + a.Shops.Buildings.BuildingBaseInfo.DistrictDefine.Name + "-" + a.Shops.Buildings.BuildingBaseInfo.AreaDefine.Name, Price = a.Shops.ShopBaseInfo.Price, Name = a.Shops.ShopBaseInfo.Name, Depth = a.Shops.ShopBaseInfo.Depth, Height = a.Shops.ShopBaseInfo.Height, Width = a.Shops.ShopBaseInfo.Width, BuildingArea = a.Shops.ShopBaseInfo.BuildingArea, BuildingName = a.Shops.Buildings.BuildingBaseInfo.Name, BuildingNo = a.Shops.ShopBaseInfo.BuildingNo, FloorNo = a.Shops.ShopBaseInfo.FloorNo, Number = a.Shops.ShopBaseInfo.Number, SaleStatus = a.Shops.ShopBaseInfo.SaleStatus, Status = a.Shops.ShopBaseInfo.Status, Icon = string.IsNullOrEmpty(a.Shops.Icon) ? "" : fr + "/" + a.Shops.Icon.TrimStart('/'), UpperWater = a.Shops.ShopFacilities.UpperWater, DownWater = a.Shops.ShopFacilities.DownWater, Gas = a.Shops.ShopFacilities.Gas, Chimney = a.Shops.ShopFacilities.Chimney, Blowoff = a.Shops.ShopFacilities.Blowoff, Split = a.Shops.ShopFacilities.Split, Elevator = a.Shops.ShopFacilities.Elevator, Staircase = a.Shops.ShopFacilities.Staircase, Outside = a.Shops.ShopFacilities.Outside, OpenFloor = a.Shops.ShopFacilities.OpenFloor, ParkingSpace = a.Shops.ShopFacilities.ParkingSpace, IsCorner = a.Shops.ShopBaseInfo.IsCorner, IsFaceStreet = a.Shops.ShopBaseInfo.IsFaceStreet, HasFree = a.Shops.ShopBaseInfo.HasFree, HasStreet = a.Shops.ShopBaseInfo.HasStreet } }); resulte.PageIndex = condition.PageIndex; resulte.PageSize = condition.PageSize; resulte.TotalCount = await response.CountAsync(cancellationToken); resulte.Extension = aasd.ToList(); return(resulte); }