From dcf43da6ca36a4476139305174a6bd6dd48630d0 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期五, 05 九月 2025 14:34:22 +0800
Subject: [PATCH] feat:开发

---
 FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/ApplyTaskCommandHandler.cs |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/ApplyTaskCommandHandler.cs b/FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/ApplyTaskCommandHandler.cs
index 4ff82c4..bc707d8 100644
--- a/FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/ApplyTaskCommandHandler.cs
+++ b/FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/ApplyTaskCommandHandler.cs
@@ -59,13 +59,14 @@
                         it.UserAuth.IdentityBackImg
                     })
                     .FirstOrDefaultAsync(cancellationToken);
-                if (user == null) throw Oops.Oh(EnumErrorCodeType.s404, "璇ヨ处鍙�");
+                if (user == null) throw Oops.Oh(EnumErrorCodeType.s404, "璐﹀彿");
                 var tasks = await repTaskInfo.AsQueryable().AsNoTracking()
                     .Where(it => taskIds.Contains(it.Id))
                     .Select(it => new
                     {
                         it.Id,
-                        it.EnterpriseId
+                        it.EnterpriseId,
+                        it.ReleaseStatus
                     })
                     .ToListAsync(cancellationToken);
                 var enterpriseIds = tasks.DistinctSelect(it => it.EnterpriseId);
@@ -79,7 +80,9 @@
                 foreach (var taskId in taskIds)
                 {
                     var task = tasks.FirstOrDefault(it => it.Id == taskId);
-                    if (task == null) throw Oops.Oh(EnumErrorCodeType.s404, "璇ヤ换鍔�");
+                    if (task == null) throw Oops.Oh(EnumErrorCodeType.s404, "浠诲姟");
+                    if (task.ReleaseStatus == EnumTaskReleaseStatus.Stopped)
+                        throw Oops.Oh(EnumErrorCodeType.s510, "浠诲姟宸插仠姝�");
                     var employee = employees.FirstOrDefault(it => it.EnterpriseId == task.EnterpriseId && it.UserId == logier.Id);
                     if (employee == null)
                     {
@@ -98,19 +101,19 @@
                             Age = user.Age,
                             IdentityImg = user.IdentityImg,
                             IdentityBackImg = user.IdentityBackImg,
-                            HireStatus = EnumTaskUserHireStatus.Wait,
                         };
                         await repEnterpriseEmployee.InsertAsync(employee);
                     }
                     else
                     {
                         employee.UserId = logier.Id;
-                        await repEnterpriseEmployee.InsertAsync(employee);
+                        await repEnterpriseEmployee.UpdateAsync(employee);
                     }
                     var entity = new TaskInfoUser
                     {
                         TaskInfoId = taskId,
                         EnterpriseEmployeeId = employee.Id,
+                        HireStatus = EnumTaskUserHireStatus.Wait
                     };
                     await repTaskInfoUser.InsertAsync(entity);
                 }

--
Gitblit v1.9.1