From 75ffff5b036f823c209702af154702f59b2efb7a Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期三, 13 八月 2025 18:15:50 +0800
Subject: [PATCH] feat:开发

---
 FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs |   32 ++++++++++++++++++++++++++++++--
 1 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs b/FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs
index b46711c..9e3e283 100644
--- a/FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs
+++ b/FlexJobApi.FlexJobServer.Application/TaskCheckReceives/Queries/TaskCheckReceiveQueryHandler.cs
@@ -118,6 +118,29 @@
             {
                 q = q.Where(it => it.TaskInfo.EnterpriseId == logier.EnterpriseId);
             }
+            if (logier.Type == EnumUserType.Enterprise && logier.ClientType == EnumClientType.Wxmp)
+            {
+                if (request.CheckReceiveStatus == null)
+                {
+                    throw Oops.Oh(EnumErrorCodeType.s400, "璇烽�夋嫨楠屾敹鐘舵��");
+                }
+                if (request.Date == null)
+                {
+                    throw Oops.Oh(EnumErrorCodeType.s400, "璇烽�夋嫨鏃ユ湡");
+                }
+                q = q.Where(it =>
+                    it.TaskInfo.EnterpriseId == logier.EnterpriseId
+                    && (request.CheckReceiveStatus == EnumTaskCheckReceiveStatus.WaitSubmit
+                        ? !it.Submits.Any(s => s.Date.Date == request.Date.Value.Date)
+                        : it.Submits.Any(s =>
+                            s.Date.Date == request.Date.Value.Date
+                            && (request.CheckReceiveStatus == EnumTaskCheckReceiveStatus.WaitSubmit
+                            ? s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.WaitSubmit
+                            : (request.CheckReceiveStatus == EnumTaskCheckReceiveStatus.WaitCheckReceive
+                            ? s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.WaitCheckReceive
+                            : (s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Success
+                            || s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Fail))))));
+            }
             var s = q.Select(it => new GetCheckReceiveTaskQueryResultItem
             {
                 Id = it.Id,
@@ -176,7 +199,7 @@
         /// <param name="request"></param>
         /// <param name="cancellationToken"></param>
         /// <returns></returns>
-        public Task<GetCheckReceiveTaskUserSubmitQueryResult> Handle(GetCheckReceiveTaskUserSubmitQuery request, CancellationToken cancellationToken)
+        public async Task<GetCheckReceiveTaskUserSubmitQueryResult> Handle(GetCheckReceiveTaskUserSubmitQuery request, CancellationToken cancellationToken)
         {
             var q = repTaskInfoUserSubmit.AsQueryable().AsNoTracking();
             if (request.SubmitId.HasValue)
@@ -191,7 +214,12 @@
             {
                 q = q.Where(it => it.Date.Date == request.Date.Value.Date && it.TaskInfoUserId == request.TaskInfoUserId.Value);
             }
-            return q.GetDetail<TaskInfoUserSubmit, GetCheckReceiveTaskUserSubmitQueryResult>();
+            var model = await q.GetDetail<TaskInfoUserSubmit, GetCheckReceiveTaskUserSubmitQueryResult>();
+            model.Files = await repTaskInfoUserSubmit.Change<TaskInfoUserSubmitFile>().AsQueryable().AsNoTracking()
+                .Where(it => it.SubmitId == model.Id)
+                .Select(it => it.File)
+                .ToListAsync();
+            return model;
         }
     }
 }

--
Gitblit v1.9.1