From 860e1fe5396005cfcc3dd68e1b20cd3b35010e83 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期二, 12 八月 2025 14:33:21 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs | 15 +++++++++------ 1 files changed, 9 insertions(+), 6 deletions(-) diff --git a/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs b/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs index af45201..11634cb 100644 --- a/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs +++ b/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs @@ -43,12 +43,15 @@ .CountAsync(); model.ApplyCount = await rep.Change<TaskInfoUser>().AsQueryable().AsNoTracking() .CountAsync(it => it.TaskInfoId == model.Id); - if (logier.Type == EnumUserType.Personal) + 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(); + model.IsCollected = await rep.Change<UserTaskCollect>().AsQueryable().AsNoTracking() + .AnyAsync(it => it.TaskInfoId == request.Id && it.UserId == logier.Id); } return model; } @@ -93,7 +96,7 @@ } 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 @@ -148,7 +151,7 @@ AddressDetail = t.AddressDetail, Latitude = t.Latitude, Longitude = t.Longitude, - UserCount = t.TaskInfoUsers.Count(tu => tu.SignContractStatus == EnumTaskUserSignContractStatus.Pass), + UserCount = t.TaskInfoUsers.Count(), Status = t.Status, BeginTime = t.BeginTime, EndTime = t.EndTime, @@ -158,7 +161,7 @@ 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); -- Gitblit v1.9.1