Files
jinko.yikatong/Src/Dlhis.Basic/Appointment/Services/IAppointmentService.cs
2025-01-03 17:39:32 +08:00

69 lines
2.1 KiB
C#

using Dlhis.Basic.Appointment.Request;
using Dlhis.Basic.Appointment.Response;
using Dlhis.Entity.Visitor.Enums;
using Kurisu.AspNetCore.DataAccess.Dto;
namespace Dlhis.Basic.Appointment.Services;
public interface IAppointmentService : IScopeDependency
{
/// <summary>
/// 预约分页
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
Task<Pagination<AppointmentPageResponse>> GetPageAsync(AppointmentPageRequest request);
/// <summary>
/// 查看明细
/// </summary>
/// <param name="no"></param>
/// <returns></returns>
Task<List<AppointmentDetailResponse>> GetAppointmentDetailsByIdAsync(string no);
/// <summary>
/// 确认到达
/// </summary>
/// <returns></returns>
Task ConfirmAsync(AppointmentConfirmRequest request);
/// <summary>
/// 根据身份证获取最新访客预约
/// </summary>
/// <param name="idNo"></param>
/// <param name="factory"></param>
/// <returns></returns>
Task<AppointmentDetailResponse> GetTodayByIdNoAsync(string idNo, string factory);
/// <summary>
/// 强制离开
/// </summary>
/// <param name="id"></param>
/// <param name="reason"></param>
/// <returns></returns>
Task FocusLeaveAsync(long id, string reason);
/// <summary>
/// 获取记录列表
/// </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, string search, VisitorAppointmentDetailStatusEnumType? status, DateTime start, DateTime end);
Task<Pagination<AppointmentDetailResponse>> GetRecordPageByIdNoAsync(AppointmentIdNoPageRequest request);
Task<AppointmentSummaryResponse> GetSummaryAsync(string factory, DateTime start, DateTime end);
/// <summary>
/// 更新人脸
/// </summary>
/// <param name="detailId"></param>
/// <param name="base64"></param>
/// <returns></returns>
Task UpdateFaceAsync(long detailId, string base64);
}