public CitaResponse CrearCita(CitaRequest request) { Cita cita = _unitOfWork.CitaRepository.FindFirstOrDefault(C => C.Id == request.Id); var Disponibilidad = request.Medico.Verificar_disponibilidad(request.Fecha, request.Minuto, request.Hora); var fecha = _unitOfWork.CitaRepository.FindBy(C => C.Fecha == request.Fecha && C.Hora == request.Hora && C.Minuto == request.Minuto).ToList(); if (cita == null && fecha == null && Disponibilidad) { Cita NuevaCita = new Cita(); NuevaCita.Medico = request.Medico; NuevaCita.Paciente = request.Paciente; NuevaCita.Fecha = request.Fecha; NuevaCita.Hora = request.Hora; NuevaCita.Minuto = request.Minuto; // NuevaCita.fecha = new DateTime(); _unitOfWork.CitaRepository.Add(NuevaCita); _unitOfWork.Commit(); // _unitOfWork.Dispose(); return(new CitaResponse() { Message = $"Se Registro" }); } else { return(new CitaResponse() { Message = $"No Registro Compa" }); } }
public CitaResponse CrearCita(CitaRequest request) { var paciente_prueba = _unitOfWork.IPacienteRepository.FindBy(p => p.Identificacion == request.Idpaciente, includeProperties: "Medico").ToList(); var Paciente = _unitOfWork.IPacienteRepository.FindFirstOrDefault(P => P.Identificacion == request.Idpaciente); var Medico = Paciente.Medico; if (Medico == null) { return(new CitaResponse() { Message = $"Aun no se le ha asignado un medico, vaya a la opcion --> asociar medico" }); } Cita cita = _unitOfWork.CitaRepository.FindFirstOrDefault(C => C.Fecha == request.Fecha && C.Hora == request.Hora && C.Minuto == request.Minuto && C.Medico == Medico); if (cita != null) { return(new CitaResponse() { Message = $"Esta hora ya esta ocupada, seleccione otra" }); } Cita NuevaCita = new Cita(); NuevaCita.Medico = Medico; NuevaCita.Paciente = Paciente; NuevaCita.Fecha = request.Fecha; NuevaCita.Hora = request.Hora; NuevaCita.Minuto = request.Minuto; NuevaCita.Estado = "pendiente"; _unitOfWork.CitaRepository.Add(NuevaCita); _unitOfWork.Commit(); return(new CitaResponse() { Message = $"Se Registro su cita con el medico : {Medico.Apellidos} {Medico.Nombres}" }); }