| | |
| | | if (logier != null && logier.Type == EnumUserType.Personal) |
| | | { |
| | | model.HireStatus = await rep.Change<TaskInfoUser>().AsQueryable().AsNoTracking() |
| | | .Where(it => it.TaskInfoId == model.Id && it.UserId == logier.Id) |
| | | .Select(it => it.HireStatus) |
| | | .Include(it => it.EnterpriseEmployee) |
| | | .Where(it => it.TaskInfoId == model.Id && it.EnterpriseEmployee.UserId == logier.Id) |
| | | .Select(it => it.EnterpriseEmployee.HireStatus) |
| | | .FirstOrDefaultAsync(); |
| | | } |
| | | return model; |
| | |
| | | } |
| | | if (request.HireStatus.IsNotNull() && logier.Type == EnumUserType.Personal) |
| | | { |
| | | q = q.Where(it => it.TaskInfoUsers.Any(u => u.UserId == logier.Id && request.HireStatus.Contains(u.HireStatus))); |
| | | q = q.Where(it => it.TaskInfoUsers.Any(u => request.HireStatus.Contains(u.EnterpriseEmployee.HireStatus))); |
| | | } |
| | | |
| | | var count = new GetTaskInfosQueryResultObjectData |
| | |
| | | RecommendStatus = t.RecommendStatus, |
| | | SettlementStatus = t.SettlementStatus, |
| | | HireStatus = logier != null |
| | | ? t.TaskInfoUsers.Where(it => it.UserId == logier.Id).Select(u => u.HireStatus).FirstOrDefault() |
| | | ? t.TaskInfoUsers.Where(it => it.EnterpriseEmployee.UserId == logier.Id).Select(u => u.EnterpriseEmployee.HireStatus).FirstOrDefault() |
| | | : null |
| | | }; |
| | | var result = await request.PageModel.GetPagedListAsync<GetTaskInfosQueryResult, GetTaskInfosQueryResultItem>(s, cancellationToken); |