| | |
| | | public async Task<GetPersonalUserInfosQueryResult> Handle(GetPersonalUserInfosQuery request, CancellationToken cancellationToken) |
| | | { |
| | | var logier = JwtUtils.GetCurrentLogier(); |
| | | var q = rep.AsQueryable().AsNoTracking(); |
| | | var q = rep.AsQueryable().AsNoTracking() |
| | | .Where(it => it.Type == EnumUserType.Personal); |
| | | if (request.Keywords.IsNotNull()) |
| | | { |
| | | q = q.Where(it => |
| | |
| | | HireTime = it.EnterpriseEmployees |
| | | .SelectMany(ee => ee.TaskInfoUsers) |
| | | .OrderByDescending(e => e.HireTime) |
| | | .Where(e => e.HireStatus == EnumTaskUserHireStatus.Pass && e.HireTime.HasValue) |
| | | .Where(e => e.HireTime.HasValue) |
| | | .Select(e => e.HireTime) |
| | | .FirstOrDefault(), |
| | | SignContractTime = it.EnterpriseEmployees |
| | |
| | | : EnumTaskUserHireStatus.Wait, |
| | | HireTime = it.TaskInfoUsers |
| | | .OrderBy(tu => tu.HireTime) |
| | | .Where(tu => tu.HireStatus == EnumTaskUserHireStatus.Pass && tu.HireTime.HasValue) |
| | | .Where(tu => tu.HireTime.HasValue) |
| | | .Select(tu => tu.HireTime) |
| | | .FirstOrDefault(), |
| | | UserSignContractStatus = it.UserSignContractStatus, |
| | | EnterpriseSignContractStatus = it.EnterpriseSignContractStatus, |
| | | EnterpriseSignContractTime = it.EnterpriseSignContractTime, |
| | | ContractUrl = it.ContractUrl, |
| | | ContractUrl = it.ContractUrl |
| | | }); |
| | | return request.PageModel.GetPagedListAsync<GetPersonalUserInfoSignContractsQueryResult, GetPersonalUserInfoSignContractsQueryResultItem>(q, cancellationToken); |
| | | } |