private ProcessResult IsExistOtherRendezvous(Rendezvous rendezvous) { ProcessResult result = new ProcessResult(); DoctorManager doctorManager = new DoctorManager(); Doctor doctor = doctorManager.Select(rendezvous.DoctorId); List <Doctor> doctors = doctorManager.Doctors(); List <int> depDocList = doctors.Where(d => d.DepartmentId == doctor.DepartmentId).Select(d => d.Id).ToList(); List <Rendezvous> rendezvouses = Rendezvouses(DateTime.Today, null, null); bool any = rendezvouses.Any(r => r.PatientId == rendezvous.PatientId && depDocList.Contains(r.DoctorId)); if (any) { result.Errors.Add("Hastanın aynı bölüme aynı güne zaten randevusu var"); } if (!any) { foreach (Doctor _doctor in doctors) { if (Rendezvouses(DateTime.Today, _doctor.Id, null).Any(p => p.PatientId == rendezvous.PatientId && p.RendezvousTimeId == rendezvous.RendezvousTimeId)) { result.Errors.Add(String.Format("{0} {1} doktorunda aynı saatte randevu alınmış", _doctor.Name, _doctor.Surname)); } } } result.Result = result.Errors.Count > 0 ? Extensions.BLLResult.AlreadyFound : Extensions.BLLResult.Success; return(result); }
public Doctor LoginDoctor(string tc, string password) { DoctorManager manager = new DoctorManager(); Doctor doctor = manager.Select(tc); if (doctor == null) { return(null); } return(String.CompareOrdinal(password, doctor.Password) != 0 ? null : doctor); }
private ProcessResult Verifyrendezvous(Rendezvous rendezvous) { ProcessResult result = new ProcessResult(); DoctorManager doctorManager = new DoctorManager(); Doctor doctor = doctorManager.Select(rendezvous.DoctorId); DepartmentManager departmentManager = new DepartmentManager(); Department department = departmentManager.Select(doctor != null ? doctor.DepartmentId : 0); PatientManager patientManager = new PatientManager(); Patient patient = patientManager.Select(rendezvous.PatientId); new RendezvousTimeManager(); if (rendezvous.PatientId <= 0) { result.Errors.Add(String.Format("Hasta bilgisi olmadan randevu alınamaz")); } if (doctor == null || rendezvous.DoctorId <= 0) { result.Errors.Add(String.Format("Doktor bilgisi olmadan randevu alınamaz")); } if (rendezvous.RendezvousTimeId <= 0) { result.Errors.Add(String.Format("Randevu saati bilgisi olmadan randevu alınamaz")); } if (rendezvous.Date < DateTime.Today) { result.Errors.Add(String.Format("Geriye dönük tarihe randevu alınamaz")); } if (department != null) { if (patient != null) { if (department.MinAge != null && department.MinAge > patient.GetAge()) { result.Errors.Add(String.Format("{0} aylıktan küçükler {1} bölümüne gidemez. Hastanın yaşı {2} ay", department.MinAge, department.Name, patient.GetAge())); } if (department.MaxAge != null && department.MaxAge < patient.GetAge()) { result.Errors.Add(String.Format("{0} aylıktan büyükler {1} bölümüne gidemez. Hastanın yaşı {2} ay", department.MaxAge, department.Name, patient.GetAge())); } if (department.Gender != null && department.Gender != patient.Gender) { result.Errors.Add(String.Format("{0} hastalar {1} bölümüne gidemez.", patient.Gender ? "Erkek" : "Kadın", department.Name)); } } } else { result.Errors.Add("Departman seçilmeden randevu alınamaz."); } result.Result = result.Errors.Count > 0 ? Extensions.BLLResult.NotVerified : Extensions.BLLResult.Verified; return(result); }