| | |
| | | } |
| | | if (request.HireStatus.IsNotNull() && logier.Type == EnumUserType.Personal) |
| | | { |
| | | q = q.Where(it => it.Users.Any(u => u.UserId == logier.Id && request.HireStatus.Contains(u.HireStatus))); |
| | | q = q.Where(it => it.TaskInfoUsers.Any(u => u.UserId == logier.Id && request.HireStatus.Contains(u.HireStatus))); |
| | | } |
| | | |
| | | var count = new GetTaskInfosQueryResultObjectData |
| | |
| | | AddressDetail = t.AddressDetail, |
| | | Latitude = t.Latitude, |
| | | Longitude = t.Longitude, |
| | | UserCount = t.Users.Count(), |
| | | UserCount = t.TaskInfoUsers.Count(tu => tu.SignContractStatus == EnumTaskUserSignContractStatus.Pass), |
| | | Status = t.Status, |
| | | BeginTime = t.BeginTime, |
| | | EndTime = t.EndTime, |
| | |
| | | RecommendStatus = t.RecommendStatus, |
| | | SettlementStatus = t.SettlementStatus, |
| | | HireStatus = logier != null |
| | | ? t.Users.Where(it => it.UserId == logier.Id).Select(u => u.HireStatus).FirstOrDefault() |
| | | ? t.TaskInfoUsers.Where(it => it.UserId == logier.Id).Select(u => u.HireStatus).FirstOrDefault() |
| | | : null |
| | | }; |
| | | var result = await request.PageModel.GetPagedListAsync<GetTaskInfosQueryResult, GetTaskInfosQueryResultItem>(s, cancellationToken); |