public DoctorController(DoctorService doctorService, DiagnosisService diagnosisService, TherapyService therapyService, MedicalRecordService medicalRecordService) { _doctorService = doctorService; _diagnosisService = diagnosisService; _therapyService = therapyService; _medicalRecordService = medicalRecordService; }
public void Doesnt_find_patients_record() { MedicalRecordService service = new MedicalRecordService(CreateStubRepository(), CreateUserGateway()); MedicalRecord medicalRecord = service.GetMedicalRecordByPatient("003"); medicalRecord.ShouldBeNull(); }
public CheckupService() { checkupRepositoryFactory = new CheckupFileRepositoryFactory(); checkupRepository = checkupRepositoryFactory.CreateCheckupRepository(); doctorService = new DoctorService(); medicalRecordService = new MedicalRecordService(); }
public PatientService() { surveyResponseService = new SurveyResponseService(); patientRepositoryFactory = new PatientFileRepositoryFactory(); patientRepository = patientRepositoryFactory.CreatePatientRepository(); medicalRecordService = new MedicalRecordService(); }
public PatientController(PatientService patientService, MedicalRecordService medicalRecordService, TherapyService therapyService, DiagnosisService diagnosisService) { _patientService = patientService; _medicalRecordService = medicalRecordService; _therapyService = therapyService; _diagnosisService = diagnosisService; }
public void Not_found_patient_medical_record_by_username() { MedicalRecordService medicalRecordService = new MedicalRecordService(CreateStubRepository()); MedicalRecord medicalRecord = medicalRecordService.FindPatientMedicalRecordByUsername("joca"); Assert.Null(medicalRecord); }
public void Register_patient_successfully() { MedicalRecordService medicalRecordService = new MedicalRecordService(CreateStubRepository()); MedicalRecord medicalRecord = medicalRecordService.AddEntity(new MedicalRecord(5, new Patient(5, "misa", "123", "Misa", "Misic", "123123123123", new DateTime(), "066123123", "*****@*****.**", new City("Novi Sad", "Mise Dim", new Country("Srbija")), false), new Anamnesis(), new List <Allergies>(), new List <Medicament>())); Assert.NotNull(medicalRecord); }
public void Not_found_medical_record_for_patient() { MedicalRecordService medicalRecordService = new MedicalRecordService(CreateStubRepository()); MedicalRecord medicalRecord = medicalRecordService.GetMedicalRecordForPatient(10); Assert.Null(medicalRecord); }
public void Sends_verification_email() { var mockVerify = new Mock <IEmailVerificationService>(); MedicalRecordService medicalRecordService = new MedicalRecordService(CreateStubRepository(), mockVerify.Object); MedicalRecord medicalRecord = medicalRecordService.CreatePatientMedicalRecord(new MailAddress("*****@*****.**"), new MedicalRecord(5, new Patient(5, "misa", "123", "Misa", "Misic", "123123123123", new DateTime(), "066123123", "*****@*****.**", new City("Novi Sad", "Mise Dim", new Country("Srbija")), false), new Anamnesis(), new List <Allergies>(), new List <Medicament>())); mockVerify.Verify(v => v.SendVerificationEmailLink(new MailAddress(medicalRecord.Patient.EMail), medicalRecord.Patient.Username), Times.Once); }
public void Validate_medical_record_activation() { MedicalRecordService medicalRecordService = new MedicalRecordService(CreateStubRepository()); medicalRecordService.ActivatePatientMedicalRecord(1); MedicalRecord medicalRecord = medicalRecordService.GetEntity(1); Assert.True(medicalRecord.ActiveMedicalRecord); }
private App() { EmailVerificationService = new EmailVerificationService(); SftpService = new SftpService(); HttpService = new HttpService(); TenderService = new TenderService(); MedicalExaminationService = new MedicalExaminationService( new MedicalExaminationRepository(new MySQLStream <MedicalExamination>(), new IntSequencer())); PatientFeedbackService = new PatientFeedbackService( new PatientFeedbackRepository(new MySQLStream <PatientFeedback>(), new IntSequencer())); MedicalExaminationReportService = new MedicalExaminationReportService( new MedicalExaminationReportRepository(new MySQLStream <MedicalExaminationReport>(), new IntSequencer())); PrescriptionService = new PrescriptionService( new PrescriptionRepository(new MySQLStream <Prescription>(), new IntSequencer())); MedicalRecordService = new MedicalRecordService( new MedicalRecordRepository(new MySQLStream <MedicalRecord>(), new IntSequencer()), EmailVerificationService); QuestionService = new QuestionService( new QuestionRepository(new MySQLStream <Question>(), new IntSequencer())); AnswerService = new AnswerService( new AnswerRepository(new MySQLStream <Answer>(), new IntSequencer()), QuestionService); AllergiesService = new AllergiesService( new AllergiesRepository(new MySQLStream <Allergies>(), new IntSequencer())); PatientService = new PatientService( new PatientRepository(new MySQLStream <Patient>(), new IntSequencer())); SurveyService = new SurveyService( new SurveyRepository(new MySQLStream <Survey>(), new IntSequencer()), MedicalExaminationService, AnswerService); DoctorService = new DoctorService( new DoctorRepository(new MySQLStream <Doctor>(), new IntSequencer())); ReportService = new ReportService( new ReportRepository(new MySQLStream <Report>(), new IntSequencer()), SftpService); DoctorWorkDayService = new DoctorWorkDayService( new DoctorWorkDayRepository(new MySQLStream <DoctorWorkDay>(), new IntSequencer()), DoctorService); SpetialitationService = new SpetialitationService( new SpecialitationRepository(new MySQLStream <Specialitation>(), new IntSequencer())); AppointmentService = new AppointmentService( new AppointmentRepository(new MySQLStream <Appointment>(), new IntSequencer()), PatientService); EPrescriptionService = new EPrescriptionService( new EPrescriptionRepository(new MySQLStream <EPrescription>(), new IntSequencer()), SftpService); PharmacyService = new PharmacyService( new PharmacyRepository(new MySQLStream <Pharmacies>(), new IntSequencer())); RoomService = new RoomService( new RoomRepository(new MySQLStream <Room>(), new IntSequencer())); ManagerService = new ManagerService( new ManagerRepository(new MySQLStream <Manager>(), new IntSequencer())); SecretaryService = new SecretaryService( new SecretaryRepository(new MySQLStream <Secretary>(), new IntSequencer())); SystemAdministratorService = new SystemAdministratorService( new SystemAdministratorRepository(new MySQLStream <SystemAdministrator>(), new IntSequencer())); UserService = new UserService( new UserRepository(new MySQLStream <User>(), new IntSequencer()), PatientService, SystemAdministratorService); }
private void LoadServices() { // HospitalManagementService doctorStatisticsService = new DoctorStatisticsService(doctorStatisticRepository); inventoryStatisticsService = new InventoryStatisticsService(inventoryStatisticRepository); roomStatisticsService = new RoomStatisticsService(roomStatisticRepository); hospitalService = new HospitalService(hospitalRepository); inventoryService = new InventoryService(inventoryRepository, inventoryItemRepository, medicineRepository); roomService = new RoomService(roomRepository, appointmentRepository); medicineService = new MedicineService(medicineRepository); // MedicineService diagnosisService = new DiagnosisService(diagnosisRepository); diseaseService = new DiseaseService(diseaseRepository); medicalRecordService = new MedicalRecordService(medicalRecordRepository); therapyService = new TherapyService(therapyRepository, medicalRecordService); // MiscService articleService = new ArticleService(articleRepository); doctorFeedbackService = new DoctorFeedbackService(doctorFeedbackRepository); feedbackService = new FeedbackService(feedbackRepository, questionRepository, userRepository); locationService = new LocationService(locationRepository); messageService = new MessageService(messageRepository); notificationService = new NotificationService(notificationRepository); appointmentNotificationSender = new AppointmentNotificationSender(notificationService); appointmentService = new AppointmentService(appointmentRepository, appointmentStrategy, appointmentNotificationSender); pharmacyApiKeyService = new PharmacyApiKeyService(pharmacyApiKeyRepository); // UsersService doctorService = new DoctorService(doctorRepository, userRepository, appointmentService); managerService = new ManagerService(managerRepository); patientService = new PatientService(patientRepository, medicalRecordRepository); secretaryService = new SecretaryService(secretaryRepository); userService = new UserService(userRepository); appointmentRecommendationService = new AppointmentRecommendationService(appointmentService, doctorService); }
public MedicalRecordController(MedicalRecordService medicalRecordService) { this.medicalRecordService = medicalRecordService; }
public App() { var medicationRepository = new MedicationRepository(new Stream <Medication>(MEDICATION_FILE)); var diagnosisRepository = new DiagnosisRepository(new Stream <Diagnosis>(DIAGNOSIS_FILE)); var allergenRepository = new AllergensRepository(new Stream <Allergens>(ALLERGEN_FILE)); var categoryRepository = new MedicationCategoryRepository(new Stream <MedicationCategory>(CATEGORY_FILE)); var symptomsRepository = new SymptomsRepository(new Stream <Symptoms>(SYMPTOMS_FILE)); var ingredientsRepository = new MedicationIngredientRepository(new Stream <MedicationIngredient>(INGREDIENTS_FILE)); var specializationRepository = new SpecializationRepository(new Stream <Specialization>(SPECIALIZATION_FILE)); var cityRepository = new CityRepository(new Stream <City>(CITY_FILE)); var addressRepository = new AddressRepository(new Stream <Address>(ADDRESS_FILE), cityRepository); var stateRepository = new StateRepository(new Stream <State>(STATE_FILE)); var hospitalRepository = new HospitalRepository(new Stream <Hospital>(HOSPITAL_FILE)); var departmentRepository = new DepartmentRepository(hospitalRepository, new Stream <Department>(DEPARTMENT_FILE)); var roomRepository = new RoomRepository(departmentRepository, new Stream <Room>(ROOM_FILE)); var userRepository = new UserRepository(new Stream <RegisteredUser>(USER_FILE), cityRepository, addressRepository, departmentRepository, roomRepository); var renovationRepository = new RenovationRepository(roomRepository, new Stream <Renovation>(RENOVATION_FILE)); var medicalRecordRepository = new MedicalRecordRepository(new Stream <MedicalRecord>(RECORD_FILE), diagnosisRepository, medicationRepository, userRepository); var bedRepository = new BedRepository(roomRepository, medicalRecordRepository, new Stream <Bed>(BED_FILE)); var equipmentTypeRepository = new EquipmentTypeRepository(new Stream <EquipmentType>(EQUIPMENT_TYPE_FILE)); var equipmentRepository = new HospitalEquipmentRepository(new Stream <HospitalEquipment>(EQUIPMENT_FILE)); var treatmentsRepository = new TreatmentRepository(medicationRepository, departmentRepository, new Stream <Treatment>(TREATMENTS_FILE)); var examinationSurgeryRepository = new ExaminationSurgeryRepository(treatmentsRepository, medicalRecordRepository, userRepository, new Stream <ExaminationSurgery>(EXAMINATION_SURGERY_FILE)); var emergencyRequestRepository = new EmergencyRequestRepository(medicalRecordRepository, new Stream <EmergencyRequest>(EMERGENCY_REQUEST_FILE)); var vaccinesRepository = new VaccinesRepository(new Stream <Vaccines>(VACCINES_FILE)); var notificationRepository = new NotificationRepository(userRepository, new Stream <Notification>(NOTIFICATION_FILE)); var articleRepository = new ArticleRepository(userRepository, new Stream <Article>(ARTICLE_FILE)); var questionRepository = new QuestionRepository(userRepository, new Stream <Question>(QUESTIONS_FILE)); var doctorReviewsRepository = new DoctorReviewRepository(userRepository, new Stream <DoctorReview>(DOCTOR_REVIEWS_FILE)); var feedbackRepository = new FeedbackRepository(userRepository, new Stream <Feedback>(FEEDBACK_FILE)); var surveyRepository = new SurveyRepository(userRepository, new Stream <Survey>(SURVEY_FILE)); var appointmentsRepository = new AppointmentRepository(userRepository, medicalRecordRepository, roomRepository, new Stream <Appointment>(APPOINTMENTS_FILE)); var workDayRepository = new WorkDayRepository(userRepository, new Stream <WorkDay>(WORK_DAY_FILE)); var vacationRequestRepository = new VacationRequestRepository(userRepository, new Stream <VacationRequest>(VACATION_REQUEST_FILE)); var reportsRepository = new ReportRepository(new Stream <Report>(REPORTS_FILE)); var labTestTypeRepository = new LabTestTypeRepository(new Stream <LabTestType>(LAB_TEST_TYPE_FILE)); var validationMedicationRepository = new ValidationMedicationRepository(new Stream <ValidationMed>(VALIDATION_FILE), userRepository, medicationRepository); var equipmentTypeService = new EquipmentTypeService(equipmentTypeRepository); var medicationService = new MedicationService(medicationRepository, validationMedicationRepository); var diagnosisService = new DiagnosisService(diagnosisRepository); var allergenService = new AllergensService(allergenRepository); var categoryService = new MedicationCategoryService(categoryRepository); var symptomsService = new SymptomsService(symptomsRepository); var ingredientsService = new MedicationIngredientService(ingredientsRepository); var specializationService = new SpecializationService(specializationRepository); var cityService = new CityService(cityRepository); var stateService = new StateService(stateRepository); var addressService = new AddressService(addressRepository); var notificationService = new NotificationService(notificationRepository, userRepository, medicalRecordRepository); var validationMedicationService = new ValidationMedicationService(validationMedicationRepository, notificationService); var hospitalService = new HospitalService(hospitalRepository); var departmentService = new DepartmentService(departmentRepository); var bedService = new BedService(bedRepository); var medicalRecordService = new MedicalRecordService(medicalRecordRepository); var treatmentService = new TreatmentService(treatmentsRepository, notificationService); var examiantionSurgeryService = new ExaminationSurgeryService(examinationSurgeryRepository); var emergencyRequestService = new EmergencyRequestService(emergencyRequestRepository, notificationService); var vaccinesService = new VaccinesService(vaccinesRepository); var articleService = new ArticleService(articleRepository); var questionService = new QuestionService(questionRepository, notificationService); var doctorsReviewService = new DoctorReviewService(doctorReviewsRepository); var feedbackService = new FeedbackService(feedbackRepository); var surveyService = new SurveyService(surveyRepository); var userService = new UserService(userRepository, medicalRecordService); var workDayService = new WorkDayService(workDayRepository, MAX_HOURS_PER_WEEK); var appointmentService = new AppointmentService(appointmentsRepository, workDayService, notificationService, VALID_HOURS_FOR_SCHEDULING, APPOINTMENT_LENGTH_IN_MINUTES, SURGERY_LENGTH_IN_MINUTES, START_WORKING_HOURS, END_WORKING_HOURS); var vacationRequestService = new VacationRequestService(vacationRequestRepository, notificationService, NUMBER_OF_ALLOWED_VACAY_REQUESTS); var reportsService = new ReportService(reportsRepository, treatmentsRepository, medicationRepository, examinationSurgeryRepository, roomRepository); var labTestTypeService = new LabTestTypeService(labTestTypeRepository); var roomService = new RoomService(roomRepository, appointmentsRepository); var hospitalEquipmentService = new HospitalEquipmentService(equipmentRepository); var renovationService = new RenovationService(renovationRepository, roomService, appointmentsRepository, hospitalEquipmentService, notificationService, RENOVATION_DAYS_RESTRICTION, RENOVATION_DAYS_RESTRICTION); var availableAppointmentService = new AvailableAppointmentService(appointmentsRepository, workDayService, VALID_HOURS_FOR_SCHEDULING, APPOINTMENT_LENGTH_IN_MINUTES, SURGERY_LENGTH_IN_MINUTES, START_WORKING_HOURS, END_WORKING_HOURS); equipmentTypeController = new EquipmentTypeController(equipmentTypeService); medicationController = new MedicationController(medicationService); userController = new UserController(userService); diagnosisController = new DiagnosisController(diagnosisService); symptomsController = new SymptomsController(symptomsService); categoryController = new MedicationCategoryController(categoryService); allergensController = new AllergensController(allergenService); vaccinesController = new VaccinesController(vaccinesService); labTestTypeController = new LabTestTypeController(labTestTypeService); medicationIngredientController = new MedicationIngredientController(ingredientsService); cityController = new CityController(cityService); specializationController = new SpecializationController(specializationService); addressController = new AddressController(addressService); stateController = new StateController(stateService); departmentController = new DepartmentController(departmentService); hospitalController = new HospitalController(hospitalService); roomController = new RoomController(roomService); renovationController = new RenovationController(renovationService); hospitalEquipmentController = new HospitalEquipmentController(hospitalEquipmentService); medicalRecordController = new MedicalRecordController(medicalRecordService); treatmentController = new TreatmentController(treatmentService); examinationSurgeryController = new ExaminationSurgeryController(examiantionSurgeryService); articleController = new ArticleController(articleService); questionController = new QuestionController(questionService); doctorReviewController = new DoctorReviewController(doctorsReviewService); surveyController = new SurveyController(surveyService); feedbackController = new FeedbackController(feedbackService); workDayController = new WorkDayController(workDayService); reportController = new ReportController(reportsService); validationMedicationController = new ValidationMedicationController(validationMedicationService); vacationRequestController = new VacationRequestController(vacationRequestService); bedController = new BedController(bedService); emergencyRequestController = new EmergencyRequestController(emergencyRequestService); appointmentController = new AppointmentController(appointmentService); notificationController = new NotificationController(notificationService); availableAppointmentController = new AvailableAppointmentController(availableAppointmentService); validations = new Validations(UNDERAGE_RESTRICTION); }