fix 支持搜索name,idno,no

This commit is contained in:
2024-11-22 10:27:27 +08:00
parent 3dd6e27128
commit a7ca9817b1
3 changed files with 7 additions and 4 deletions

View File

@@ -87,15 +87,16 @@ public class AppointmentsController : ControllerBase
/// 门禁预约
/// </summary>
/// <param name="factory"></param>
/// <param name="search"></param>
/// <param name="status"></param>
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
[AllowAnonymous]
[HttpGet("door/list")]
public async Task<List<AppointmentDetailResponse>> GetRecordListAsync(string factory, VisitorAppointmentDetailStatusEnumType? status, DateTime start, DateTime end)
public async Task<List<AppointmentDetailResponse>> GetRecordListAsync(string factory, string search, VisitorAppointmentDetailStatusEnumType? status, DateTime start, DateTime end)
{
return await _appointmentService.GetRecordListAsync(factory, status, start, end);
return await _appointmentService.GetRecordListAsync(factory, search, status, start, end);
}
/// <summary>

View File

@@ -42,11 +42,12 @@ public interface IAppointmentService : IScopeDependency
/// 获取记录列表
/// </summary>
/// <param name="factory"></param>
/// <param name="search"></param>
/// <param name="status"></param>
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
Task<List<AppointmentDetailResponse>> GetRecordListAsync(string factory, VisitorAppointmentDetailStatusEnumType? status, DateTime start, DateTime end);
Task<List<AppointmentDetailResponse>> GetRecordListAsync(string factory, string search, VisitorAppointmentDetailStatusEnumType? status, DateTime start, DateTime end);
Task<Pagination<AppointmentDetailResponse>> GetRecordPageByIdNoAsync([FromQuery] AppointmentIdNoPageRequest request);

View File

@@ -206,7 +206,7 @@ public class AppointmentService : IAppointmentService
}
public async Task<List<AppointmentDetailResponse>> GetRecordListAsync(string factory, VisitorAppointmentDetailStatusEnumType? status, DateTime start, DateTime end)
public async Task<List<AppointmentDetailResponse>> GetRecordListAsync(string factory, string search, VisitorAppointmentDetailStatusEnumType? status, DateTime start, DateTime end)
{
return await _dbContext.Queryable<VisitorAppointmentDetailEntity>()
.LeftJoin<GainfoEntity>((x, ga) => ga.IdNo == x.IdNo)
@@ -214,6 +214,7 @@ public class AppointmentService : IAppointmentService
.Where(x => x.IsEnterDoorArea)
.WhereIF(status.HasValue, x => x.DoorStatus == status)
.Where(x => x.DoorStart >= start && x.DoorEnd <= end)
.WhereIF(search.IsPresent(), x => x.Name.Contains(search) || x.No == search || x.IdNo == search)
.Select(x => new AppointmentDetailResponse
{
No = x.No,