From 44cdf09012d27e12c3d113f9a3ffdc9ddc2853ad Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期五, 05 九月 2025 14:23:57 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/ApplyTaskCommandHandler.cs | 18 +++++++++++++----- 1 files changed, 13 insertions(+), 5 deletions(-) diff --git a/FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/ApplyTaskCommandHandler.cs b/FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/ApplyTaskCommandHandler.cs index 2b2e5c3..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) { @@ -93,19 +96,24 @@ UserId = logier.Id, Name = user.Name, Identity = user.Identity, - PhoneNumber = user.ContactPhoneNumber, + ContactPhoneNumber = user.ContactPhoneNumber, Gender = user.Gender, Age = user.Age, IdentityImg = user.IdentityImg, IdentityBackImg = user.IdentityBackImg, - HireStatus = EnumTaskUserHireStatus.Wait, }; await repEnterpriseEmployee.InsertAsync(employee); + } + else + { + employee.UserId = logier.Id; + await repEnterpriseEmployee.UpdateAsync(employee); } var entity = new TaskInfoUser { TaskInfoId = taskId, EnterpriseEmployeeId = employee.Id, + HireStatus = EnumTaskUserHireStatus.Wait }; await repTaskInfoUser.InsertAsync(entity); } -- Gitblit v1.9.1