From 458837c9c2e5653063b193dc3ac754d76ebfa683 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期四, 14 八月 2025 15:51:32 +0800
Subject: [PATCH] feat:开发

---
 FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs |   18 +++++++++++-------
 1 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs b/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs
index 50ab0f0..883169c 100644
--- a/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs
+++ b/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs
@@ -56,7 +56,7 @@
                     .Select(it => new
                     {
                         it.Id,
-                        it.EnterpriseEmployee.HireStatus,
+                        it.HireStatus,
                         it.EnterpriseEmployee.UserSignContractStatus
                     })
                     .FirstOrDefaultAsync();
@@ -81,7 +81,7 @@
                         }
                     }
                 }
-                model.IsCollected = await rep.Change<UserTaskCollect>().AsQueryable().AsNoTracking()
+                model.IsCollected = await rep.Change<TaskUserCollect>().AsQueryable().AsNoTracking()
                     .AnyAsync(it => it.TaskInfoId == request.Id && it.UserId == logier.Id);
             }
             return model;
@@ -135,6 +135,10 @@
             if (request.GenderLimit.HasValue)
             {
                 q = q.Where(it => it.GenderLimit == request.GenderLimit);
+            }
+            if (logier != null && logier.Type == EnumUserType.Personal && request.IsCollected == true)
+            {
+                q = q.Where(it => it.TaskUserCollects.Any(c => c.UserId == logier.Id));
             }
 
             var count = new GetTaskInfosQueryResultObjectData
@@ -197,7 +201,7 @@
                         CheckReceiveStatus = t.CheckReceiveStatus,
                         CreatedTime = t.CreatedTime,
                         RecommendStatus = t.RecommendStatus,
-                        SettlementStatus = t.SettlementStatus
+                        SettlementStatus = t.SettlementStatus,
                     };
             var result = await request.PageModel.GetPagedListAsync<GetTaskInfosQueryResult, GetTaskInfosQueryResultItem>(s, cancellationToken);
             result.ObjectData = count;
@@ -222,7 +226,7 @@
                         q = q.Where(it =>
                             it.TaskInfoUsers.Any(tu =>
                                 tu.EnterpriseEmployee.UserId == logier.Id
-                                && tu.EnterpriseEmployee.HireStatus == EnumTaskUserHireStatus.Wait));
+                                && tu.HireStatus == EnumTaskUserHireStatus.Wait));
                         break;
                     case GetPersonalApplyTaskInfosQueryStatus.WaitSignContract:
                         q = q.Where(it =>
@@ -239,7 +243,7 @@
                 q = q.Where(it =>
                     it.TaskInfoUsers.Any(tu =>
                         tu.EnterpriseEmployee.UserId == logier.Id
-                        && (tu.EnterpriseEmployee.HireStatus == EnumTaskUserHireStatus.Wait
+                        && (tu.HireStatus == EnumTaskUserHireStatus.Wait
                         || tu.EnterpriseEmployee.UserSignContractStatus == EnumTaskUserSignContractStatus.Wait)));
             }
             var s = q.Select(it => new GetPersonalApplyTaskInfosQueryResultItem
@@ -259,7 +263,7 @@
                 AddressName = it.AddressName,
                 Status = it.TaskInfoUsers.Any(it =>
                     it.EnterpriseEmployee.UserId == logier.Id
-                    && it.EnterpriseEmployee.HireStatus == EnumTaskUserHireStatus.Wait)
+                    && it.HireStatus == EnumTaskUserHireStatus.Wait)
                     ? GetPersonalApplyTaskInfosQueryStatus.WaitHire
                     : GetPersonalApplyTaskInfosQueryStatus.WaitSignContract
             });
@@ -329,7 +333,7 @@
             var q = TaskInfoRepository.GetQueryable(rep, true, logier).Where(it =>
                 it.TaskInfoUsers.Any(tu =>
                     tu.EnterpriseEmployee.UserId == logier.Id
-                    && (tu.EnterpriseEmployee.HireStatus == EnumTaskUserHireStatus.Refuse
+                    && (tu.HireStatus == EnumTaskUserHireStatus.Refuse
                     || tu.EnterpriseEmployee.UserSignContractStatus == EnumTaskUserSignContractStatus.Refuse
                     || tu.EnterpriseEmployee.EnterpriseSignContractStatus == EnumTaskUserSignContractStatus.Refuse)));
             var s = q.Select(it => new GetPersonalCancelTaskInfosQueryResultItem

--
Gitblit v1.9.1