public async Task <ActionResult> CreateBloodBank([FromBody] BloodBankModel bloodBank) { if (!ModelState.IsValid) { return(BadRequest(new ApiResponse { Status = false, ModelState = ModelState })); } var instance = BloodBank.Create(bloodBank.Doctor); try { var newBloodBank = await _repository.AddAsync(instance); if (newBloodBank == null) { return(BadRequest(new ApiResponse { Status = false })); } return(CreatedAtRoute("GetBloodBankRoute", new { id = newBloodBank.BloodBankId }, new ApiResponse { Status = true, BloodBank = newBloodBank })); } catch { return(BadRequest(new ApiResponse { Status = false })); } }
public ActionResult CreateBloodBank(BloodBankViewModel bloodBankViewModel) { if (ModelState.IsValid) { try { BloodBank hospital = new BloodBank() { Name = bloodBankViewModel.Name, County_Id = bloodBankViewModel.County_Id }; unitOfWork.BloodBankRepository.Insert(hospital); unitOfWork.Save(); return(RedirectToAction("BloodBanks")); } catch { return(View()); } } else { return(View()); } }
public async Task CreateHospitalProfileAsync(HospitalProfileInputModel input, string userId) { var user = this.usersRepository.All() .Where(u => u.Id == userId) .FirstOrDefault(); if (user == null) { throw new ArgumentException(GlobalConstants.NoUserRegistrationErrorMessage); } var hospitalData = new HospitalData { ApplicationUserId = userId, Name = input.Name, Contact = new Contact { Phone = input.Phone, Email = input.Email, }, Location = new Location { Country = input.Country, City = input.City, AdressDescription = input.AdressDescription, }, }; await this.hospitalsRepository.AddAsync(hospitalData); await this.hospitalsRepository.SaveChangesAsync(); var appUserHospitalData = new ApplicationUserHospitalData { ApplicationUserId = userId, HospitalDataId = hospitalData.Id, }; await this.appUsersHospitalRepository.AddAsync(appUserHospitalData); await this.appUsersHospitalRepository.SaveChangesAsync(); var bloodBank = new BloodBank { HospitalDataId = hospitalData.Id, }; await this.bloodBankRepository.AddAsync(bloodBank); await this.bloodBankRepository.SaveChangesAsync(); var bag = new BloodBag { BloodBankId = bloodBank.Id, }; await this.bagRepository.AddAsync(bag); await this.bagRepository.SaveChangesAsync(); }
private static async Task SeedDataAsync(ApplicationDbContext dbContext) { // Seeding blood bank var bloodBank = new BloodBank { HospitalDataId = "123", }; dbContext.BloodBanks.Add(bloodBank); await dbContext.SaveChangesAsync(); // Seeding blood bag var bag = new BloodBag { Quantity = 500, CollectionDate = DateTime.UtcNow, DonorDataId = "789", BloodGroup = BloodGroup.A, RhesusFactor = RhesusFactor.Negative, BloodBankId = bloodBank.Id, }; await dbContext.BloodBags.AddAsync(bag); await dbContext.SaveChangesAsync(); }
public void AddDonor_AddsDonorToBloodBank_DonorList() { //Arrange BloodBank testBloodBank = new BloodBank("Puget Sound", "Seattle", "7777777"); testBloodBank.Save(); Donor testDonor = new Donor("Tim", "3333333", "08/11/93", "IIIRh+", "Healthy"); testDonor.Save(); //Act testBloodBank.AddDonor(testDonor); List <Donor> result = testBloodBank.GetDonors(); Console.WriteLine(result.Count); List <Donor> testList = new List <Donor> { testDonor }; Console.WriteLine(testList.Count); //Assert CollectionAssert.AreEqual(testList, result); }
public ActionResult SaveBank(string massage, BloodBank bank) { if (!ModelState.IsValid) { return(View("NewBank", bank)); } if (bank.Id == 0) { if (User.IsInRole(UserRoles.CanApproveAndDeleteRecord)) { bank.IsApproved = true; } _context.BloodBanks.Add(bank); } else { var bankInDb = _context.BloodBanks.SingleOrDefault(b => b.Id == bank.Id); Mapper.Map(bank, bankInDb); } _context.SaveChanges(); return(RedirectToAction("Index", new { massage = massage })); }
public ActionResult DeleteConfirmed(int id) { BloodBank bloodBank = db.BloodBanks.Find(id); db.BloodBanks.Remove(bloodBank); db.SaveChanges(); return(RedirectToAction("Index")); }
public void GetAll_DatabaseEmptyAtFirst_0() { //Arrange, Act int result = BloodBank.GetAll().Count; //Assert Assert.AreEqual(0, result); }
public void Equals_TrueForSameProperties_BloodBank() { //Arrange, Act BloodBank firstBloodBank = new BloodBank("Puget Sound", "Seattle", "7777777"); BloodBank secondBloodBank = new BloodBank("Puget Sound", "Seattle", "7777777"); //Assert Assert.AreEqual(firstBloodBank, secondBloodBank); }
public ActionResult Edit([Bind(Include = "Id,Name,fk_stateid")] BloodBank bloodBank) { if (ModelState.IsValid) { db.Entry(bloodBank).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.fk_stateid = new SelectList(db.States, "stateid", "StateName", bloodBank.fk_stateid); return(View(bloodBank)); }
public ActionResult Create([Bind(Include = "Id,Name,fk_stateid")] BloodBank bloodBank) { if (ModelState.IsValid) { db.BloodBanks.Add(bloodBank); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.fk_stateid = new SelectList(db.States, "stateid", "StateName", bloodBank.fk_stateid); return(View(bloodBank)); }
public ActionResult blood(BloodBank bloodbank) { if (ModelState.IsValid) { db.BloodBanks.Add(bloodbank); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.Hospital_ID = new SelectList(db.Hospitals, "id", "Name", bloodbank.Hospital_Id); return(View()); }
// GET: ADMIN/BloodBanks/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } BloodBank bloodBank = db.BloodBanks.Find(id); if (bloodBank == null) { return(HttpNotFound()); } return(View(bloodBank)); }
public void Given_BloodBankRepository_When_AddAsyncingABloodBank_Then_TheBloodBankShouldBeProperlySaved() { RunOnDatabase(async ctx => { //Arrange var repository = new BloodBankRepository(ctx); var doctor = Doctor.Create("Daniel", "Oana", "*****@*****.**", "parola", "0746524459", "bla", "Cardiologie", "Sf. Spiridon", "Iasi", "Str. Vasile Lupu"); var bloodBank = BloodBank.Create(doctor); //Act await repository.AddAsync(bloodBank); //Assert Assert.AreEqual(repository.GetAllAsync().Result.Count, 1); }); }
// GET: ADMIN/BloodBanks/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } BloodBank bloodBank = db.BloodBanks.Find(id); if (bloodBank == null) { return(HttpNotFound()); } ViewBag.fk_stateid = new SelectList(db.States, "stateid", "StateName", bloodBank.fk_stateid); return(View(bloodBank)); }
public void Find_BloodBankID_True() { //Arrange BloodBank testBloodBank = new BloodBank("Puget Sound", "Seattle", "7777777"); testBloodBank.Save(); //Act Console.WriteLine(testBloodBank.GetId()); BloodBank result = BloodBank.Find(testBloodBank.GetId()); Console.WriteLine(result.GetId()); //Assert Assert.AreEqual(testBloodBank, result); }
public void Given_BloodBankRepository_When_ReturningABloodBank_Then_TheBloodBankShouldBeProperlyReturned() { RunOnDatabase(async ctx => { //Arrange var repository = new BloodBankRepository(ctx); var doctor = Doctor.Create("Daniel", "Oana", "*****@*****.**", "parola", "0746524459", "bla", "Cardiologie", "Sf. Spiridon", "Iasi", "Str. Vasile Lupu"); var bloodBank = BloodBank.Create(doctor); await repository.AddAsync(bloodBank); //Act var extractedBloodBank = await repository.GetByIdAsync(bloodBank.BloodBankId); //Assert Assert.AreEqual(bloodBank, extractedBloodBank); }); }
public void Given_BloodBankRepository_When_EditingABloodBank_Then_TheBloodBankShouldBeProperlyEdited() { RunOnDatabase(async ctx => { //Arrange var repository = new BloodBankRepository(ctx); var doctor = Doctor.Create("Daniel", "Oana", "*****@*****.**", "parola", "0746524459", "bla", "Cardiologie", "Sf. Spiridon", "Iasi", "Str. Vasile Lupu"); var bloodBank = BloodBank.Create(doctor); await repository.AddAsync(bloodBank); //var firstName = doctor.FirstName; bloodBank.Update("A2", doctor); //var newFirstName = doctor.FirstName; //Act await repository.UpdateAsync(bloodBank); //Assert Assert.AreEqual(repository.GetAllAsync().Result[0].Types["A2"], 1); }); }
public void Delete_DeletesBloodBankAssociationsFromDatabase_BloodBankList() { //Arrange BloodBank testBloodBank = new BloodBank("Puget Sound", "Seattle", "7777777"); testBloodBank.Save(); Donor testDonor = new Donor("Tim", "3333333", "08/11/93", "IIIRh+", "Healthy"); testDonor.Save(); //Act testBloodBank.AddDonor(testDonor); testBloodBank.Delete(); List <BloodBank> resultBloodBankDonors = testDonor.GetBloodBanks(); List <BloodBank> testBloodBankDonors = new List <BloodBank> { }; //Assert CollectionAssert.AreEqual(testBloodBankDonors, resultBloodBankDonors); }
public ActionResult EditBloodBank(BloodBankViewModel hospitalViewModel) { if (ModelState.IsValid) { try { BloodBank toUpdate = unitOfWork.BloodBankRepository.GetByID(hospitalViewModel.Id); toUpdate.Name = hospitalViewModel.Name; toUpdate.County_Id = hospitalViewModel.County_Id; unitOfWork.BloodBankRepository.Update(toUpdate); unitOfWork.Save(); return(RedirectToAction("BloodBanks")); } catch { return(View()); } } else { return(View()); } }
public void Delete(BloodBank item) { _context.BloodBank.Remove(item); _context.SaveChanges(); }
public async Task Update(BloodBank item) { _context.Entry(item).State = EntityState.Modified; await _context.SaveChangesAsync(); }
//public async Task<IEnumerable<BloodStock>> GetQuantityById(int bankId, string bloodType) //{ // IQueryable<PointsOfInterest> result = _context.PointsOfInterest.Where(p => p.CityId == cityId && p.Id == patientId); // return await result.FirstOrDefaultAsync(); //} public async Task Add(BloodBank item) { await _context.BloodBank.AddAsync(item); await _context.SaveChangesAsync(); }
public async Task SeedAsync(ApplicationDbContext dbContext, IServiceProvider serviceProvider) { var userManager = serviceProvider.GetRequiredService <UserManager <ApplicationUser> >(); var hospitalDataRepository = serviceProvider.GetRequiredService <IDeletableEntityRepository <HospitalData> >(); var recipientsRepository = serviceProvider.GetRequiredService <IDeletableEntityRepository <Recipient> >(); var recipientsHospitalDataRepository = serviceProvider.GetRequiredService <IDeletableEntityRepository <RecipientHospitalData> >(); var bloodBankRepository = serviceProvider.GetRequiredService <IDeletableEntityRepository <BloodBank> >(); var hospitalBloodBankRepository = serviceProvider.GetRequiredService <IDeletableEntityRepository <HospitalDataBloodBank> >(); var allUsers = serviceProvider.GetService <IDeletableEntityRepository <ApplicationUser> >(); var deletedUsers = allUsers .AllAsNoTrackingWithDeleted() .Where(u => u.IsDeleted == true) .ToList(); // Seeding hospitals and hospitalsData for (int i = 0; i < 6; i++) { var user = await userManager.FindByEmailAsync($"Hospital{i}@hospital.bg"); if (user != null) { return; } user = new ApplicationUser { UserName = $"Hospital{i}@hospital.bg", Email = $"Hospital{i}@hospital.bg", EmailConfirmed = true, }; if (deletedUsers.Any(u => u.Email == user.Email)) { return; } await userManager.CreateAsync(user, $"Hospital{i}@hospital.bg"); await userManager.AddToRoleAsync(user, GlobalConstants.HospitaltRoleName); var hospitalData = new HospitalData { ApplicationUserId = user.Id, ApplicationUser = user, Name = $"Hospital{i}", Contact = new Contact { Email = user.Email, Phone = $"0{i * 5}{i * 6}{i * 7}", }, Location = new Location { Country = "Bulgaria", City = $"City{i}", AdressDescription = $"Street{i * 3}", }, }; await hospitalDataRepository.AddAsync(hospitalData); var bloodBank = new BloodBank { HospitalDataId = hospitalData.Id, }; await bloodBankRepository.AddAsync(bloodBank); var hospitalBloodBank = new HospitalDataBloodBank { HospitalId = hospitalData.Id, BloodBankId = bloodBank.Id, }; await hospitalBloodBankRepository.AddAsync(hospitalBloodBank); // Seeding recipients in hospitals for (int j = 0; j < 3; j++) { Random random = new Random(); var recipient = new Recipient { HospitalDataId = hospitalData.Id, FirstName = $"Recipient{j}", MiddleName = $"Recipient{j}", LastName = $"Recipient{j}", Age = 20 + j, NeededQuantity = 500, RecipientEmergency = (EmergencyStatus)random.Next(Enum.GetNames(typeof(EmergencyStatus)).Length), BloodGroup = (BloodGroup)random.Next(Enum.GetNames(typeof(BloodGroup)).Length), RhesusFactor = (RhesusFactor)random.Next(Enum.GetNames(typeof(RhesusFactor)).Length), }; await recipientsRepository.AddAsync(recipient); var recipientHospitalData = new RecipientHospitalData { HospitalDataId = hospitalData.Id, RecipientId = recipient.Id, }; await recipientsHospitalDataRepository.AddAsync(recipientHospitalData); } } }
public void Dispose() { Patient.DeleteAll(); Donor.DeleteAll(); BloodBank.DeleteAll(); }
public void Update(BloodBank bloodBank) { DbOperations.ExecuteCommand(_context.CONNECTION_STRING, "dbo.BloodBanks_Update", bloodBank.GenerateSqlParametersFromModel().ToArray()); }
public void Save() { using (PersonaEntities dataContext = new PersonaEntities()) { BloodBank bloodBank = null; if (this.BloodBankId == 0) { bloodBank = new BloodBank { BloodBankId = this.BloodBankId, BloodBankName = this.BloodBankName, Address = this.Address, TownId = this.TownId, Pincode = this.Pincode, MobileNo1 = this.MobileNo1, MobileNo2 = this.MobileNo2, LandlineNo = this.LandlineNo, FaxNumber = this.FaxNumber, Email = this.Email, Website = this.Website, CreatedOn = this.CreatedOn }; dataContext.BloodBanks.AddObject(bloodBank); } else { bloodBank = (from blank in dataContext.BloodBanks where blank.BloodBankId == this.BloodBankId select blank).SingleOrDefault(); bloodBank.BloodBankId = this.BloodBankId; bloodBank.BloodBankName = this.BloodBankName; bloodBank.Address = this.Address; bloodBank.TownId = this.TownId; bloodBank.Pincode = this.Pincode; bloodBank.MobileNo1 = this.MobileNo1; bloodBank.MobileNo2 = this.MobileNo2; bloodBank.LandlineNo = this.LandlineNo; bloodBank.FaxNumber = this.FaxNumber; bloodBank.Email = this.Email; bloodBank.Website = this.Website; bloodBank.CreatedOn = this.CreatedOn; dataContext.BloodBanks.ApplyCurrentValues(bloodBank); } dataContext.SaveChanges(); } }
public void Insert(BloodBank bloodBank) { _context.RepositoryContext.BloodBankRepository.Insert(bloodBank); }
public async Task CreateDonationCorectlyTest() { var dbContext = ApplicationDbContextInMemoryFactory.InitializeContext(); var donationEventRepository = new EfDeletableEntityRepository <DonationEvent>(dbContext); var bloodBankRepository = new EfDeletableEntityRepository <BloodBank>(dbContext); var bagRepository = new EfDeletableEntityRepository <BloodBag>(dbContext); var hospitalDataRepository = new EfDeletableEntityRepository <HospitalData>(dbContext); var donorDataRepository = new EfDeletableEntityRepository <DonorData>(dbContext); var requestRepository = new EfDeletableEntityRepository <Request>(dbContext); var usersRepository = new EfDeletableEntityRepository <ApplicationUser>(dbContext); var rolesRepository = new EfDeletableEntityRepository <ApplicationRole>(dbContext); var service = new DonationEventsService( donationEventRepository, bloodBankRepository, bagRepository, hospitalDataRepository, donorDataRepository, requestRepository); var userDonor = new ApplicationUser { UserName = "******", Email = "*****@*****.**", }; await dbContext.Users.AddAsync(userDonor); var donor = new DonorData { ApplicationUserId = userDonor.Id, }; await dbContext.DonorData.AddAsync(donor); var userHospital = new ApplicationUser { UserName = "******", Email = "*****@*****.**", }; await dbContext.Users.AddAsync(userDonor); var hospital = new HospitalData { ApplicationUserId = userHospital.Id, }; await dbContext.HospitalData.AddAsync(hospital); var bloodBank = new BloodBank { HospitalDataId = hospital.Id, }; await dbContext.BloodBanks.AddAsync(bloodBank); hospital.BloodBank = bloodBank; await dbContext.SaveChangesAsync(); await service.CreateDonation(hospital.Id, donor.ApplicationUserId, 500, 0, BloodGroup.A, RhesusFactor.Negative); var donotionEvent = donationEventRepository.All().FirstOrDefault(de => de.UserDonorId == donor.ApplicationUserId); Assert.NotNull(donotionEvent); }
static void Main(string[] args) { bool isRunning = true; BloodBank bb = new BloodBank(); PrintWelcomePageBloodBank(); Thread.Sleep(1500); while (isRunning) { PrintStartMenuOption(); switch (Console.ReadKey(true).Key) { case keyLoggin: { int loginStatus = 0; Console.Clear(); Console.WriteLine("Skriv in ditt personnummer:"); string inputUserID = ReadLineAsString(":>"); if (IsDigitsOnly(inputUserID) == false) { Console.WriteLine("Du angav personnummer av fel format."); PauseProgram(); break; } Console.WriteLine("Skriv in ditt lösenord:"); string inputPassword = ReadLineAsString(":>"); try { loginStatus = bb.ValidateUserLogin(inputUserID, inputPassword); } catch { Console.WriteLine("Inloggningen misslyckades. Angav du rätt uppgifter? Är du registrerad?"); PauseProgram(); break; } if (loginStatus == 1) { bool donormenu = true; BloodDonor loggedInDonor = null; while (donormenu) { try { foreach (var loggedInUser in bb.GetUserInfo(inputUserID)) { loggedInDonor = new BloodDonor(loggedInUser.FirstName, loggedInUser.LastName, loggedInUser.ID, loggedInUser.Email, Convert.ToBoolean(loggedInUser.AvailableToDonate), Convert.ToBoolean(loggedInUser.HealthOK), loggedInUser.BloodGroupID, loggedInUser.LatestDonation); } } catch { Console.WriteLine("Något verkar strula med databasen. Är du ansluten till internet?"); donormenu = false; PauseProgram(); } PrintDonorMenu(loggedInDonor.FirstName, loggedInDonor.LastName); switch (Console.ReadKey(true).Key) { case keyReviseInformation: { Console.Clear(); foreach (var loggedInUser in bb.GetUserInfo(inputUserID)) { loggedInDonor.AvailableToDonate = Convert.ToBoolean(loggedInUser.AvailableToDonate); } string available = "ej tillgänglig"; if (loggedInDonor.AvailableToDonate == true) { available = "tillgänglig"; } Console.WriteLine($"Din status är satt som {available} för donation."); Console.WriteLine($"Vill du ändra detta? [{keyJa}/{keyNej}]"); bool loopAgain = true; while (loopAgain) { ConsoleKey input = Console.ReadKey(true).Key; if (input == keyJa) { try { bb.ChangeDonationStatus(loggedInDonor.AvailableToDonate, loggedInDonor.IDNumber); } catch { Console.WriteLine("Det gick inte att uppdatera din status. Vänligen försök igen."); Console.WriteLine("Tryck valfri knapp för att fortsätta."); Console.WriteLine($"Tryck {keyQuit} för att återgå till menyn."); } Console.WriteLine($"\nDin status är nu ändrad."); Console.WriteLine("\nDu skickas nu tillbaka till menyn."); Thread.Sleep(3000); loopAgain = false; } else if (input == keyNej) { Console.WriteLine("\nDu skickas nu tillbaka till menyn."); Thread.Sleep(1500); loopAgain = false; } } break; } case keyLoggout: { donormenu = false; break; } } } } else if (loginStatus == 2) { Staff loggedInStaff = null; try { foreach (var loggedInUser in bb.GetUserInfo(inputUserID)) { loggedInStaff = new Staff(loggedInUser.FirstName, loggedInUser.LastName, loggedInUser.ID, loggedInUser.Title); } } catch { Console.WriteLine("Något verkar strula med databasen. Är du ansluten till internet?"); break; } bool staffmenu = true; while (staffmenu) { PrintStaffMenuOption(loggedInStaff.FirstName, loggedInStaff.LastName, loggedInStaff.Title); switch (Console.ReadKey(true).Key) { case keyCheckAmountBlood: { Console.Clear(); Console.WriteLine("Tillgängligt blod"); Console.WriteLine("-------------------------------"); try { foreach (Donation donation in bb.StoredBlood()) { BloodGroup bloodGroup = (BloodGroup)donation.Bloodgroup; Console.WriteLine($"{donation.AmountOfBlood} Enheter : Blodgrupp {bloodGroup}"); } } catch { Console.WriteLine("Kunde inte hämta data från databasen"); } PauseProgram(); break; } case keyRegisterNewDonation: { bool loopAgain = true; while (loopAgain) { Console.Clear(); Console.Write("Antal enheter: "); int amountOfBlood = ReadStringAsInt(":> ", 1, 10); Console.Write("Donator-ID (12 siffror): "); string donorID = ReadLineAsStringOfDidgits(12, ":> "); Donation donation = new Donation(amountOfBlood, donorID, loggedInStaff.IDNumber); try { bb.AddDonation(donation); Console.WriteLine("\nDonationen är nu registrerad!"); loopAgain = false; } catch { Console.WriteLine("Nu gick det lite fel med donationen!"); Console.WriteLine("Tryck valfri knapp för att fortsätta."); Console.WriteLine($"Tryck {keyQuit} för att återgå till menyn."); ConsoleKey input = Console.ReadKey(true).Key; if (input == keyQuit) { loopAgain = false; } } PauseProgram(); } break; } case keyRequestBloodDonation: { Console.Clear(); Console.WriteLine("Vilken Blodgrupp behövs det mer av?"); PrintBloodGroupMenu(); int bloodgroup = BloodGroupChoice(); BloodGroup type = (BloodGroup)bloodgroup; try { foreach (BloodDonor bloodDonor in bb.GetListForRequestDonation(bloodgroup)) { Console.WriteLine($"Till: {bloodDonor.Email}, Hej {bloodDonor.FirstName}!, vi behöver mer blod av just din blodgrupp, blodgrupp: {type}"); } } catch { Console.WriteLine("Kunde inte hitta någon med den valda blodgruppen."); } PauseProgram(); break; } case keyRegisterNewStaffAccount: { Console.WriteLine("Registrera personal:"); bool loopAgain = true; while (loopAgain) { Console.WriteLine("Skriv in personal förnamn"); string staffFirstName = ReadLineAsString(":> "); Console.WriteLine("Skriv in personal efternamn"); string staffLastName = ReadLineAsString(":> "); Console.WriteLine("Skriv in personal lösenord"); string staffPassword = ReadLineAsString(":> "); Console.WriteLine("Skriv in personal IDnummer, 12 siffror"); string staffiDNumber = ReadLineAsStringOfDidgits(12, ":> "); Console.WriteLine("Skriv in personal jobbtitel"); string staffTitle = ReadLineAsString(":> "); User newStaff = new Staff(staffFirstName, staffLastName, staffiDNumber, staffTitle, staffPassword); try { bb.AddUser(newStaff); loopAgain = false; } catch { Console.WriteLine("Nu gick det lite fel!"); Console.WriteLine("Tryck valfri knapp för att fortsätta."); Console.WriteLine($"Tryck {keyQuit} för att återgå till menyn."); ConsoleKey input = Console.ReadKey(true).Key; if (input == keyQuit) { loopAgain = false; } } Console.WriteLine("Personalen är registrerad."); } PauseProgram(); break; } case keyLoggout: { staffmenu = false; break; } } } } else if (loginStatus == 0) { Console.Clear(); Console.WriteLine("ID-nummer eller lösenord är fel"); PauseProgram(); break; } break; } case keyCreateAccount: { Console.Clear(); if (QuestionHealthForm()) { Console.Clear(); PrintRequiredToDonate(); Thread.Sleep(3000); bool healthOK = true; bool availableToDonate = true; bool loopAgain = true; while (loopAgain) { Console.Clear(); Console.Write("Skriv in ditt personnummer, 12 siffror (YYYYMMDDXXXX): "); string idNumber = ReadLineAsStringOfDidgits(12, ":> "); Console.Write("\nSkriv in förnamn"); string firstName = ReadLineAsString(":> "); Console.Write("\nSkriv in efternamn"); string lastName = ReadLineAsString(":> "); Console.WriteLine("\nVilken blodgrupp tillhör du (1-4): "); PrintBloodGroupMenu(); int bloodGroup = BloodGroupChoice(); Console.WriteLine($":> {bloodGroup}"); BloodGroup bloodtype = (BloodGroup)bloodGroup; Console.Write("\nSkriv in din email: "); string eMail = ReadLineAsString(":> "); Console.Write("\nVälj ett lösenord: "); string passWord = ReadLineAsString(":> "); Console.Clear(); Console.WriteLine("Du har skrivit in följande:"); Console.WriteLine($"Personnummer: {idNumber}\nFörnamn: {firstName}\nEfternamn: {lastName}\nBlodgrupp: {bloodtype}\nEmail: {eMail}\nLösenord: {passWord}"); Console.WriteLine($"Stämmer Uppgifterna? [{keyJa}/{keyNej}]"); ConsoleKey correctInformation = Console.ReadKey(true).Key; if (correctInformation == keyJa) { BloodDonor newDonor = new BloodDonor(firstName, lastName, idNumber, eMail, availableToDonate, healthOK, bloodGroup, passWord); try { bb.AddUser(newDonor); } catch { Console.WriteLine("Kunde inte lägga till användaren."); } loopAgain = false; } else if (correctInformation == keyNej) { Console.WriteLine("\nAjdå, då får du fylla i alla uppgifterna igen.. :) \n"); Console.WriteLine("Tryck valfri knapp för att fortsätta."); Console.WriteLine($"Tryck {keyQuit} för att återgå till menyn."); ConsoleKey input = Console.ReadKey(true).Key; if (input == keyQuit) { loopAgain = false; } } } PauseProgram(); } else { PrintNotRequiredEnough(); Thread.Sleep(3000); Console. Clear(); Console.WriteLine("Du skickas nu tillbaka till startmenyn"); Thread.Sleep(3000); } break; } case keyQuit: { Console.WriteLine("\nTack för att du besökte oss, Välkommen Åter!"); Thread.Sleep(1000); isRunning = false; break; } } } }
public void Update(BloodBank bloodBank) { _context.RepositoryContext.BloodBankRepository.Update(bloodBank); }