From 67e4de568bcc92a43040d6092c3e79f808c5fe35 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期三, 13 八月 2025 15:56:26 +0800
Subject: [PATCH] pref:开发

---
 FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs |   33 +++++++++++++++++++++++++++------
 1 files changed, 27 insertions(+), 6 deletions(-)

diff --git a/FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs b/FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs
index 1517eef..422cb3c 100644
--- a/FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs
+++ b/FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs
@@ -49,6 +49,14 @@
             {
                 q = q.Where(it => it.EnterpriseId == logier.EnterpriseId);
             }
+            if (request.Keywords.IsNotNull())
+            {
+                q = q.Where(it =>
+                    it.TaskInfoUsers.Any(tu =>
+                        tu.EnterpriseEmployee.User.Name.Contains(request.Keywords)
+                        || tu.EnterpriseEmployee.User.PhoneNumber.Contains(request.Keywords)
+                        || tu.EnterpriseEmployee.User.Identity.Contains(request.Keywords)));
+            }
             if (logier.ClientType == EnumClientType.Wxmp)
             {
                 if (request.CheckReceiveStatus == null)
@@ -68,10 +76,10 @@
                             s.Date.Date == request.Date.Value.Date
                             && (request.CheckReceiveStatus == EnumTaskCheckReceiveStatus.WaitSubmit
                             ? s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.WaitSubmit
-                            : request.CheckReceiveStatus == EnumTaskCheckReceiveStatus.WaitCheckReceive
+                            : (request.CheckReceiveStatus == EnumTaskCheckReceiveStatus.WaitCheckReceive
                             ? s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.WaitCheckReceive
                             : (s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Success
-                            || s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Fail))))));
+                            || s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Fail)))))));
             }
             else
             {
@@ -111,7 +119,7 @@
             }
             var s = q.Select(it => new GetCheckReceiveTaskQueryResultItem
             {
-                Id = it.TaskInfoId,
+                Id = it.Id,
                 TaskInfoCode = it.TaskInfo.Code,
                 TaskInfoName = it.TaskInfo.Name,
                 Avatar = it.EnterpriseEmployee.User.Avatar,
@@ -156,6 +164,8 @@
             result.ObjectData = await repTaskInfoUser.AsQueryable().AsNoTracking()
                 .Where(it => it.Id == request.Id)
                 .GetDetail<TaskInfoUser, GetCheckReceiveTaskUserSubmitsQueryResultObjectData>();
+
+            //await repTaskInfo.Change<UserBankCard>()
             return result;
         }
 
@@ -167,9 +177,20 @@
         /// <returns></returns>
         public Task<GetCheckReceiveTaskUserSubmitQueryResult> Handle(GetCheckReceiveTaskUserSubmitQuery request, CancellationToken cancellationToken)
         {
-            return repTaskInfoUserSubmit.AsQueryable().AsNoTracking()
-                .Where(it => it.Id == request.Id)
-                .GetDetail<TaskInfoUserSubmit, GetCheckReceiveTaskUserSubmitQueryResult>();
+            var q = repTaskInfoUserSubmit.AsQueryable().AsNoTracking();
+            if (request.SubmitId.HasValue)
+            {
+                q = q.Where(it => it.Id == request.SubmitId.Value);
+            }
+            else if (request.Date.HasValue && request.TaskInfoId.HasValue)
+            {
+                q = q.Where(it => it.Date.Date == request.Date.Value.Date && it.TaskInfoUser.TaskInfoId == request.TaskInfoId.Value);
+            }
+            else if (request.Date.HasValue && request.TaskInfoUserId.HasValue)
+            {
+                q = q.Where(it => it.Date.Date == request.Date.Value.Date && it.TaskInfoUserId == request.TaskInfoUserId.Value);
+            }
+            return q.GetDetail<TaskInfoUserSubmit, GetCheckReceiveTaskUserSubmitQueryResult>();
         }
     }
 }

--
Gitblit v1.9.1