public VaccinesController(VaccinesService vaccinesService) { this.vaccinesService = vaccinesService; }
public static void Main(string[] args) { using (HealthDbContext db = new HealthDbContext()) { //db.Database.EnsureDeleted(); //db.Database.EnsureCreated(); db.Database.Migrate(); //Seed seed = new Seed(); //seed.SeedDataBase(db); IBloodsService bloodsService = new BloodsService(db); IAddressesService addressesService = new AddressesService(db); IPhonesService phonesService = new PhonesService(db); IEmailsService emailsService = new EmailsService(db); IRelativesService relativesService = new RelativesService(db, addressesService, phonesService, emailsService); IDoctorsService doctorsService = new DoctorsService(db, addressesService, phonesService, emailsService); IPersonsService personsService = new PersonsService(db, addressesService, phonesService, emailsService, relativesService); IVaccinesService vaccinesService = new VaccinesService(db); IAllergiesService allergiesService = new AllergiesService(db); IChronicDiseasesService chronicDiseasesService = new ChronicDiseasesService(db); IPersonDiseasesService personVaccinesService = new PersonVaccinesService(db, vaccinesService); IPersonDiseasesService personAlleriesService = new PersonAllergiesService(db, allergiesService); IPersonDiseasesService personChronicDiseasesService = new PersonChronicDiseasesService(db, chronicDiseasesService); IMedicinesService medicinesService = new MedicinesService(db); IPrescriptionsService prescriptionsService = new PrescriptionsService(db, medicinesService); IReferralsService referralsService = new ReferralsService(db); ITreatmentsService treatmentsService = new TreatmentsService(db); IExaminationsService examinationsService = new ExaminationsService(db); IHospitalizationsService hospitalizationsService = new HospitalizationsService(db, examinationsService, treatmentsService); #region //examinationsService.Add(new ExaminationInputModel() //{ // Date = "21.09.2019", // Diagnosis = "very sick man", // DoctorId = "bedfa8a0-46d7-4369-8f85-fe3b1be57095", // PersonId = "9c591451-96e6-4dff-a225-32f092c7b56d", //}); //prescriptionsService.Add("565d1e5a-68df-45ab-8fea-e9d914fc891f"); //prescriptionsService.AddMedicine("7db87d46-6d71-4355-a482-95e2bf726465", // new MedicineInputModel() // { // Name = "Mesalazin Unipharm", // DaylyDoze = "250mg" // }); //examinationsService.AddPrescription("565d1e5a-68df-45ab-8fea-e9d914fc891f", "7db87d46-6d71-4355-a482-95e2bf726465"); //string referralId = referralsService.Add(new ReferralInputModel() // { // ExaminationId = "565d1e5a-68df-45ab-8fea-e9d914fc891f", // Specialty = "Cardiologist" // }); //examinationsService.AddReferral("565d1e5a-68df-45ab-8fea-e9d914fc891f", referralId); //hospitalizationsService.AddExamination("22a65132-1949-4e13-bbbc-35201429d0fb", "565d1e5a-68df-45ab-8fea-e9d914fc891f"); //hospitalizationsService.AddTreatment("22a65132-1949-4e13-bbbc-35201429d0fb", "44f6112f-542a-4eaf-a0b9-5685441f3937"); //hospitalizationsService.Add(new HospitalizationInputModel() //{ // EnterDate = "20.08.2019", // DischargeDate = "25.08.2019", // HospitalId = 1, // PersonId = "9c591451-96e6-4dff-a225-32f092c7b56d" //}); //hospitalizationsService.Add(new HospitalizationInputModel() //{ // EnterDate = "20.09.2019", // HospitalId = 1, // PersonId = "9c591451-96e6-4dff-a225-32f092c7b56d" //}); //treatmentsService.Add(new TreatmentInputModel() //{ // Description = "knee surgery...", // Date = "21.09.2019", // DoctorId = "bedfa8a0-46d7-4369-8f85-fe3b1be57095", // HospitalizationId = "22a65132-1949-4e13-bbbc-35201429d0fb" //}); //doctorsService.Add(new DoctorInputModel() //{ // FirstName = "Boiko", // LastName = "Penkov", // HospitalId = 1, // Specialty = "Cardiologist", // Address = new AddressInputModel() // { // Town = "Sofia", // Street = "ul. Alen Mak 1" // }, // Phone = new PhoneInputModel() // { // PhoneNumber = "0888989898" // }, // Email = new EmailAddressInputModel() // { // Email = "*****@*****.**" // }, //}); //personChronicDiseasesService.AddPersonDiseaseInfo("bedfa8a0-46d7-4369-8f85-fe3b1be57095", // "9c591451-96e6-4dff-a225-32f092c7b56d", new PersonDiseaseInfoInputModel() // { // Name = "Parkinson disease", // DiagnosedOn = "13.10.1973" // }); //personChronicDiseasesService.AddPersonDiseaseInfo("bedfa8a0-46d7-4369-8f85-fe3b1be57095", // "9c591451-96e6-4dff-a225-32f092c7b56d", new PersonDiseaseInfoInputModel() // { // Name = "Parkinson disease new", // DiagnosedOn = "13.10.1973" // }); //personAlleriesService.AddPersonDiseaseInfo("bedfa8a0-46d7-4369-8f85-fe3b1be57095", // "9c591451-96e6-4dff-a225-32f092c7b56d", new PersonDiseaseInfoInputModel() // { // Name = "Wheat[26]", // DiagnosedOn = "13.10.1973" // }); //personAlleriesService.AddPersonDiseaseInfo("bedfa8a0-46d7-4369-8f85-fe3b1be57095", // "9c591451-96e6-4dff-a225-32f092c7b56d", new PersonDiseaseInfoInputModel() // { // Name = "Wheat[26] (1)", // DiagnosedOn = "13.10.1973" // }); //personVaccinesService.AddPersonDiseaseInfo("bedfa8a0-46d7-4369-8f85-fe3b1be57095", // "9c591451-96e6-4dff-a225-32f092c7b56d", new PersonDiseaseInfoInputModel() // { // Name = "Strontium chloride", // DiagnosedOn = "13.10.1973" // }); //personVaccinesService.AddPersonDiseaseInfo("bedfa8a0-46d7-4369-8f85-fe3b1be57095", // "9c591451-96e6-4dff-a225-32f092c7b56d", new PersonDiseaseInfoInputModel() // { // Name = "Strontium chloride new", // DiagnosedOn = "13.10.1973" // }); //PersonInputModel personInputModel = new PersonInputModel() //{ // FirstName = "Kamen", // MiddleName = "Dimitrov", // LastName = "Pankov", // PersonalNumber = "7310136488", // BloodId = bloodsService.GetBloodId(BloodType.A, RhD.Negative), // HasHealthInsurance = true, // Address = new AddressInputModel() // { // Town = "Sofia", // Street = "Lerin 45" // } //}; //personsService.Add(personInputModel); //Person person = personsService.GetPerson("9c591451-96e6-4dff-a225-32f092c7b56d"); //personsService.AddPhone("9c591451-96e6-4dff-a225-32f092c7b56d", new PhoneInputModel() //{ // PhoneNumber = "0888086820" //}); //personsService.AddEmail("9c591451-96e6-4dff-a225-32f092c7b56d", new EmailAddressInputModel() //{ // Email = "*****@*****.**" //}); //personsService.AddRelative("9c591451-96e6-4dff-a225-32f092c7b56d", // new RelativeInputModel() // { // FirstName = "Desi", // MiddleName = "Svetlozarova", // LastName = "Velkovska", // Address = new AddressInputModel() // { // Town = "Sofia", // Street = "ul. Dobrudjanski krai 1" // }, // Phone = new PhoneInputModel() // { // PhoneNumber = "0888127876" // }, // Email = new EmailAddressInputModel() // { // Email = "*****@*****.**" // }, // RelativeType = "spouse" // }); #endregion } }
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); }