From a57346a5d1f132ab39e3172cf7614163da79bc2b Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期五, 15 八月 2025 14:54:53 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs | 21 +++++++++++++++++---- 1 files changed, 17 insertions(+), 4 deletions(-) diff --git a/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs b/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs index 8002765..a4feadd 100644 --- a/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs +++ b/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs @@ -68,10 +68,12 @@ : taskUser.UserSignContractStatus == EnumTaskUserSignContractStatus.Wait ? GetTaskInfoQueryResultApplyButton.WaitSignContract : null; - model.HireButton = now <= model.EndTime + model.HireButton = now < model.BeginTime + ? GetTaskInfoQueryResultHireButton.Wait + : model.BeginTime <= now && now <= model.EndTime ? GetTaskInfoQueryResultHireButton.InProcess : GetTaskInfoQueryResultHireButton.Completed; - if (model.HireButton == GetTaskInfoQueryResultHireButton.InProcess && model.BeginTime <= now) + if (model.HireButton == GetTaskInfoQueryResultHireButton.InProcess) { var submit = await rep.Change<TaskInfoUserSubmit>().AsQueryable().AsNoTracking() .AnyAsync(it => it.TaskInfoUserId == taskUser.Id && it.CheckReceiveStatus >= EnumTaskUserSubmitCheckReceiveStatus.WaitCheckReceive); @@ -209,6 +211,12 @@ CreatedTime = t.CreatedTime, RecommendStatus = t.RecommendStatus, SettlementStatus = t.SettlementStatus, + HireStatus = logier != null && logier.Type == EnumUserType.Personal + ? t.TaskInfoUsers + .Where(tu => tu.EnterpriseEmployee.UserId == logier.Id) + .Select(tu => tu.HireStatus as EnumTaskUserHireStatus?) + .FirstOrDefault() + : null }; var result = await request.PageModel.GetPagedListAsync<GetTaskInfosQueryResult, GetTaskInfosQueryResultItem>(s, cancellationToken); result.ObjectData = count; @@ -295,8 +303,11 @@ { switch (request.Status.Value) { + case GetPersonalHireTaskInfosQueryStatus.Wait: + q = q.Where(it => now < it.BeginTime); + break; case GetPersonalHireTaskInfosQueryStatus.InProcess: - q = q.Where(it => now <= it.EndTime); + q = q.Where(it => it.BeginTime <= now && now <= it.EndTime); break; case GetPersonalHireTaskInfosQueryStatus.Completed: q = q.Where(it => it.EndTime < now); @@ -320,7 +331,9 @@ BenefitContent = it.Benefit.Content }).ToList(), AddressName = it.AddressName, - Status = now <= it.EndTime + Status = now < it.BeginTime + ? GetPersonalHireTaskInfosQueryStatus.Wait + : it.BeginTime <= now && now <= it.EndTime ? GetPersonalHireTaskInfosQueryStatus.InProcess : GetPersonalHireTaskInfosQueryStatus.Completed }); -- Gitblit v1.9.1