FlexJobApi.Core/Entities/FlexJobServer/Tasks/TaskInfoUser.cs
@@ -45,7 +45,7 @@ public EnumTaskUserArrangeStatus? ArrangeStatus { get; set; } /// <summary> /// 安排状态 /// 安排完成时间 /// </summary> public DateTime? ArrangeTime { get; set; } @@ -55,7 +55,7 @@ public EnumTaskCheckReceiveStatus? CheckReceiveStatus { get; set; } /// <summary> /// 验收时间 /// 验收完成时间 /// </summary> public DateTime? CheckReceiveTime { get; set; } FlexJobApi.Core/Entities/FlexJobServer/Tasks/TaskInfoUserSubmit.cs
@@ -27,6 +27,11 @@ public TaskInfoUser TaskInfoUser { get; set; } /// <summary> /// 验收时间 /// </summary> public DateTime Date { get; set; } /// <summary> /// 附件 /// </summary> public List<TaskInfoUserSubmitFile> Files { get; set; } @@ -35,5 +40,11 @@ /// 验收状态 /// </summary> public EnumTaskUserSubmitCheckReceiveStatus CheckReceiveStatus { get; set; } /// <summary> /// 验收完成时间 /// </summary> public DateTime? CheckReceiveTime { get; set; } } } FlexJobApi.Core/FlexJobApi.Core.xml
@@ -936,7 +936,7 @@ </member> <member name="P:FlexJobApi.Core.TaskInfoUser.ArrangeTime"> <summary> 安排状态 安排完成时间 </summary> </member> <member name="P:FlexJobApi.Core.TaskInfoUser.CheckReceiveStatus"> @@ -946,7 +946,7 @@ </member> <member name="P:FlexJobApi.Core.TaskInfoUser.CheckReceiveTime"> <summary> 验收时间 验收完成时间 </summary> </member> <member name="P:FlexJobApi.Core.TaskInfoUser.LastSubmitTime"> @@ -974,6 +974,11 @@ 任务人员 </summary> </member> <member name="P:FlexJobApi.Core.TaskInfoUserSubmit.Date"> <summary> 验收时间 </summary> </member> <member name="P:FlexJobApi.Core.TaskInfoUserSubmit.Files"> <summary> 附件 @@ -982,6 +987,11 @@ <member name="P:FlexJobApi.Core.TaskInfoUserSubmit.CheckReceiveStatus"> <summary> 验收状态 </summary> </member> <member name="P:FlexJobApi.Core.TaskInfoUserSubmit.CheckReceiveTime"> <summary> 验收完成时间 </summary> </member> <member name="T:FlexJobApi.Core.TaskInfoUserSubmitFile"> @@ -4723,12 +4733,12 @@ 关键字 </summary> </member> <member name="P:FlexJobApi.Core.GetCheckReceiveTaskUserInfosQuery.SubmitTimeBegin"> <member name="P:FlexJobApi.Core.GetCheckReceiveTaskUserInfosQuery.DateBegin"> <summary> 验收日期-最早时间 </summary> </member> <member name="P:FlexJobApi.Core.GetCheckReceiveTaskUserInfosQuery.SubmitTimeEnd"> <member name="P:FlexJobApi.Core.GetCheckReceiveTaskUserInfosQuery.DateEnd"> <summary> 验收日期-最晚时间 </summary> @@ -4783,9 +4793,9 @@ 身份证号 </summary> </member> <member name="P:FlexJobApi.Core.GetCheckReceiveTaskUserInfosQueryResultItem.Birthday"> <member name="P:FlexJobApi.Core.GetCheckReceiveTaskUserInfosQueryResultItem.Gender"> <summary> 生日 性别 </summary> </member> <member name="P:FlexJobApi.Core.GetCheckReceiveTaskUserInfosQueryResultItem.Age"> FlexJobApi.Core/Models/FlexJobServer/TaskUsers/Queries/GetCheckReceiveTaskUserInfosQuery.cs
@@ -26,12 +26,12 @@ /// <summary> /// 验收日期-最早时间 /// </summary> public DateTime? SubmitTimeBegin { get; set; } public DateTime? DateBegin { get; set; } /// <summary> /// 验收日期-最晚时间 /// </summary> public DateTime? SubmitTimeEnd { get; set; } public DateTime? DateEnd { get; set; } /// <summary> /// 验收状态 @@ -88,9 +88,9 @@ public string Identity { get; set; } /// <summary> /// 生日 /// 性别 /// </summary> public DateTime? Birthday { get; set; } public EnumUserGender? Gender { get; set; } /// <summary> /// 年龄 @@ -111,6 +111,6 @@ /// <summary> /// 验收状态 /// </summary> public EnumTaskCheckReceiveStatus CheckReceiveStatus { get; set; } public EnumTaskCheckReceiveStatus? CheckReceiveStatus { get; set; } } } FlexJobApi.FlexJobServer.Application/TaskUsers/Commands/TaskUserCommandHandler.cs
@@ -100,6 +100,7 @@ { var logier = JwtUtils.GetCurrentLogier(); var entity = await rep.AsQueryable() .Include(it => it.TaskInfo) .Include(it => it.EnterpriseEmployee) .Where(it => it.TaskInfo.EnterpriseId == logier.EnterpriseId @@ -112,6 +113,7 @@ { entity.ArrangeTime = DateTime.Now; entity.CheckReceiveStatus = EnumTaskCheckReceiveStatus.WaitSubmit; entity.TaskInfo.Status = EnumTaskStatus.Complete; } await rep.UpdateAsync(entity); return entity.Id; FlexJobApi.FlexJobServer.Application/TaskUsers/Queries/TaskUserQueryHandler.cs
@@ -1,5 +1,6 @@ using FlexJobApi.Core; using Furion.DatabaseAccessor; using Furion.FriendlyException; using MediatR; using Microsoft.EntityFrameworkCore; using System; @@ -141,17 +142,53 @@ || it.EnterpriseEmployee.User.ContactPhoneNumber.Contains(request.Keywords) || it.EnterpriseEmployee.User.Identity.Contains(request.Keywords)); } if (request.SubmitTimeBegin.HasValue && request.SubmitTimeEnd.HasValue) if (logier.ClientType == EnumClientType.Wxmp) { q = q.Where(it => it.Submits.Any(s => request.SubmitTimeBegin <= s.CreatedTime && s.CreatedTime <= request.SubmitTimeEnd)); if (request.CheckReceiveStatus == null) { throw Oops.Oh(EnumErrorCodeType.s400, "请选择验收状态"); } if (request.DateBegin == null || request.DateEnd == null) { throw Oops.Oh(EnumErrorCodeType.s400, "请选择日期"); } q = q.Where(it => it.Submits.Any(s => request.DateBegin.Value.Date <= s.Date.Date && s.Date.Date <= request.DateEnd.Value.Date && (request.CheckReceiveStatus == EnumTaskCheckReceiveStatus.WaitSubmit ? s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Submit : request.CheckReceiveStatus == EnumTaskCheckReceiveStatus.WaitCheckReceive ? s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Wait : (s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Success || s.CheckReceiveStatus == EnumTaskUserSubmitCheckReceiveStatus.Fail)))); } if (request.CheckReceiveStatus.HasValue) else { q = q.Where(it => it.CheckReceiveStatus == request.CheckReceiveStatus); if (request.DateBegin.HasValue && request.DateEnd.HasValue) { q = q.Where(it => it.Submits.Any(s => request.DateBegin.Value.Date <= s.Date.Date && s.Date.Date <= request.DateEnd.Value.Date)); } if (request.CheckReceiveStatus.HasValue) { q = q.Where(it => it.CheckReceiveStatus == request.CheckReceiveStatus); } } var s = q.Select(it => new GetCheckReceiveTaskUserInfosQueryResultItem { Id = it.TaskInfoId, TaskName = it.TaskInfo.Name, BeginTime = it.TaskInfo.BeginTime, EndTime = it.TaskInfo.EndTime, AddressName = it.TaskInfo.AddressName, Name = it.EnterpriseEmployee.User.Name, Identity = it.EnterpriseEmployee.User.Identity, Age = it.EnterpriseEmployee.User.Age, Gender = it.EnterpriseEmployee.User.Gender, ContactPhoneNumber = it.EnterpriseEmployee.User.ContactPhoneNumber, CheckReceiveStatus = it.CheckReceiveStatus, LastSubmitTime = it.LastSubmitTime, }); return await request.PageModel.GetPagedListAsync<GetCheckReceiveTaskUserInfosQueryResult, GetCheckReceiveTaskUserInfosQueryResultItem>(s, cancellationToken); } FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs
@@ -283,14 +283,6 @@ break; } } else { q = q.Where(it => it.TaskInfoUsers.Any(tu => tu.EnterpriseEmployee.UserId == logier.Id && (tu.EnterpriseEmployee.HireStatus == EnumTaskUserHireStatus.Wait || tu.EnterpriseEmployee.UserSignContractStatus == EnumTaskUserSignContractStatus.Wait))); } var s = q.Select(it => new GetPersonalHireTaskInfosQueryResultItem { Id = it.Id,