Files
FACULTATE-HEALTHCARE_MANAGER/frontend/Services/PatientManagement/IPatientManagementService.cs
T
2024-05-21 12:10:53 +03:00

30 lines
1.3 KiB
C#

using HealthcareManagerUiWebAssem.Entities;
using HealthcareManagerUiWebAssem.Models;
namespace HealthcareManagerUiWebAssem.Services.PatientManagement;
public interface IPatientManagementService
{
Task<Patient> GetPatientProfileAsync(Guid patientId);
Task<bool> UpdatePatientProfileAsync(Patient patient);
Task<bool> DeletePatientProfileAsync(Guid patientId);
Task<List<Appointment>> GetAppointmentsAsync(Guid patientId);
Task<ApiResponse<object>> BookAppointmentAsync(NewAppointmentModel newAppointment);
Task<bool> CancelAppointmentAsync(Guid doctorId, Guid patientId, DateTime appointmentDate);
Task<MedicalHistory?> GetMedicalHistoryAsync(Guid userId);
Task<ApiResponse<object>> UploadMedicalHistoryAsync(Guid userId, byte[] content);
Task<bool> DeleteMedicalHistoryAsync(Guid fileId);
Task<byte[]> DownloadMedicalHistoryAsync(Guid fileId);
Task<List<Doctor>> GetAllDoctorsAsync();
Task<bool> CheckForAccessAsync(Guid medicalRecordId, Guid doctorId);
Task<bool> GrantAccessAsync(Guid medicalRecordId, Guid doctorId);
Task<bool> RevokeAccessAsync(Guid medicalRecordId, Guid doctorId);
Task<bool> SendMessageAsync(Guid senderId, Guid receiverId, string message);
Task<Chat> GetConversationAsync(Guid userId1, Guid userId2);
}