public async Task <bool> AcceptPreDefinitionExamination(ExaminationPOCO examinationPOCO) { examinationPOCO.Status = ExaminationStatus.Finished; await _examinationRepository.Update(_mapper.Map <ExaminationPOCO, Examination>(examinationPOCO)); //ako nije ceo model uzmi samo idPatient return(true); }
public async Task <bool> AddExamination(ExaminationPOCO examinationPOCO) { var clinic = await GetClinicByAdminId(examinationPOCO.DoctorId) as Clinic; var price = await GetExaminationPriceByTypeAndClinic(clinic.ClinicId, examinationPOCO.Type) as Price; var examinationPrice = price.DiscountedPrice; try { var newExamination = new Examination() { Id = Guid.NewGuid(), DateTime = examinationPOCO.DateTime, Duration = TimeSpan.FromMinutes(30), DoctorId = examinationPOCO.DoctorId, PatientId = examinationPOCO.PatientId, Type = examinationPOCO.Type, Status = ExaminationStatus.Requested, Price = examinationPrice }; await _examinationRepository.Create(newExamination); return(true); } catch (Exception e) { throw e; } return(false); }
public async Task <string> AddPreDefinitionExamination(ExaminationPOCO examinationPOCO) { var doctor = _employeeRepository.Find(x => x.EmployeeId.Equals(examinationPOCO.DoctorId)).First(); if (doctor.Am == 1) { if (examinationPOCO.DateTime.Hour > 14) { return("Izabrani doktor radi suprotnoj smenu"); } } else { if (examinationPOCO.DateTime.Hour < 14) { return("Izabrani doktor radi suprotnoj smenu"); } } List <Examination> examinationsByDoctor = _examinationRepository.Find(x => x.DoctorId.Equals(examinationPOCO.DoctorId) && !x.Status.Equals(2)).ToList(); foreach (Examination ex in examinationsByDoctor) { if (ex.DateTime == examinationPOCO.DateTime) { return("Doktor u to vreme vec ima zakazan pregled"); } } List <Examination> examinationsByRoom = _examinationRepository.Find(x => x.RoomId.Equals(examinationPOCO.RoomId) && !x.Status.Equals(2)).ToList(); foreach (Examination ex in examinationsByRoom) { if (ex.DateTime == examinationPOCO.DateTime) { return("Soba je zazeta tom terminu"); } } examinationPOCO.Status = ExaminationStatus.Requested; examinationPOCO.PreDefined = true; await _examinationRepository.Create(_mapper.Map <ExaminationPOCO, Examination>(examinationPOCO)); return("Uspesno dodat predefinisani pregled"); }