public void DonateBlood(string donorCnp, string bloodType, string rh, int centerId) { using (UnitOfWork uow = new UnitOfWork()) { var donor = uow.DonorRepository.GetAll().Where(d => d.CNP == donorCnp).FirstOrDefault(); MedicalAnalysis medicalAnalysis = new MedicalAnalysis(); BloodBag bloodBag = new BloodBag { Status = BloodBagStatus.Waiting, Stage = BloodBagStage.Sampling, BloodType = (BloodTypes)Enum.Parse(typeof(BloodTypes), bloodType.ToUpper()), RhType = (RhTypes)Enum.Parse(typeof(RhTypes), rh.ToUpper()), CenterId = centerId, Date = DateTime.Now }; uow.BloodBagRepository.Add(bloodBag); uow.Save(); medicalAnalysis.BloodBag = bloodBag; medicalAnalysis.Donor = donor; medicalAnalysis.IsFilled = false; medicalAnalysis.DateAndTime = DateTime.Now; uow.MedicalAnalysisRepository.Add(medicalAnalysis); uow.Save(); } }
public async Task CreateDonation( string requestOrHospitalId, string userDonorId, double neededQuantity, double quantity, BloodGroup bloodGroup, RhesusFactor rhesusFactor) { var donorData = this.donorDataUserRepository.All() .FirstOrDefault(ddu => ddu.ApplicationUserId == userDonorId); if (donorData == null) { throw new ArgumentException(GlobalConstants.NoDonorDataErrorMessage); } var request = this.requestRepository.All() .FirstOrDefault(r => r.Id == requestOrHospitalId); var hospitalData = this.hospitalDataUserRepository.All() .FirstOrDefault(hd => request != null ? hd.Id == request.HospitalId : hd.Id == requestOrHospitalId); if (hospitalData == null) { throw new ArgumentException(GlobalConstants.NoHospitalDataErrorMessage); } var bloodBank = this.bloodBankRepository.All() .FirstOrDefault(bbk => bbk.HospitalDataId == hospitalData.Id); var bag = this.bloodBagRepository.All() .FirstOrDefault(bg => bg.BloodBankId == bloodBank.Id); var donationEvent = new DonationEvent { DateOfDonation = DateTime.UtcNow, RequestId = request != null ? requestOrHospitalId : null, UserDonorId = userDonorId, }; await this.donationEventRepository.AddAsync(donationEvent); await this.donationEventRepository.SaveChangesAsync(); bag = new BloodBag { Quantity = quantity != 0 ? quantity : neededQuantity, CollectionDate = DateTime.UtcNow, DonorDataId = donorData.Id, BloodGroup = bloodGroup, RhesusFactor = rhesusFactor, BloodBankId = bloodBank.Id, }; await this.bloodBagRepository.AddAsync(bag); await this.bloodBagRepository.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 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(); }
public ActionResult RemoveBloodBag(BloodBag bag) { Hospital inputHospital = (Hospital)TempData["inputHospital"]; if (inputHospital != null) { TempData["inputHospital"] = inputHospital; } else { return(RedirectToAction("SignIn", "Hospitals")); } ViewBag.BloodTypes = new List <object> { "All", "A+", "B+", "B-", "O+", "O-", "AB+", "AB-" }; Dictionary <string, object> Parameters1 = new Dictionary <string, object>(); Parameters1.Add("@blood_type", bag.blood_type); Parameters1.Add("@hospital_id", inputHospital.hospital_id); ViewBag.bloodbags = dbm.ExecuteReader_proc("getBloodBagsofType", Parameters1); return(View()); }
public int[] AddBag(BloodBag bag) { int[] score = AddAnswer(bag.bloodInfo); //Destroy(bag.gameObject); bag.gameObject.SetActive(false); return(score); }
public void UpdateBloodBag(BloodBag bloodBag) { using (UnitOfWork uow = new UnitOfWork()) { uow.BloodBagRepository.Update(bloodBag); uow.Save(); } }
public ActionResult Create(BloodBag blood_bag, string blood_date) { string q1 = $"INSERT INTO blood_bag(national_id,blood_bag_date,blood_camp_id,hospital_id,notes,blood_type)" + $"VALUES('{blood_bag.national_id}','{blood_date}','{blood_bag.blood_camp_id}','{blood_bag.hospital_id}','{blood_bag.notes}','{blood_bag.blood_type}')"; dbm.ExecuteNonQuery(q1); return(RedirectToAction("Index")); }
public ActionResult AddBloodBag(BloodBag bag, string date, string bloodPressure, string glucoseLevel) { Hospital inputHospital = (Hospital)TempData["inputHospital"]; if (inputHospital != null) { TempData["inputHospital"] = inputHospital; } else { return(RedirectToAction("SignIn", "Hospitals")); } Dictionary <string, object> Parameters1 = new Dictionary <string, object>(); Parameters1.Add("@hospital_id", inputHospital.hospital_id); DataTable BloodCamps = dbm.ExecuteReader_proc("GetBloodCamps", Parameters1); if (BloodCamps != null) { ViewBag.BloodCamps = BloodCamps.AsEnumerable().Select(row => new BloodCamp { blood_camp_id = Convert.ToInt32(row["blood_camp_id"]), driver_name = (row["driver_name"]).ToString() }); } Parameters1.Add("@national_id", Convert.ToInt64(bag.national_id)); Parameters1.Add("@blood_bag_date", date); Parameters1.Add("@blood_camp_id", bag.blood_camp_id); Parameters1.Add("@notes", bag.notes); Parameters1.Add("@blood_type", bag.blood_type); ViewBag.added = (dbm.ExecuteNonQuery_proc("AddBloodBag", Parameters1) != 0); //This procedure adds the blood bag to stock and inserts the blood type in donor if (ViewBag.added == true) { Parameters1.Clear(); Parameters1.Add("@hospital_id", inputHospital.hospital_id); Parameters1.Add("@national_id", Convert.ToInt64(bag.national_id)); Parameters1.Add("@report_date", date); Parameters1.Add("@blood_pressure", bloodPressure); Parameters1.Add("@glucose_level", glucoseLevel); Parameters1.Add("@notes", bag.notes); dbm.ExecuteNonQuery_proc("insert_donorHealthInfo", Parameters1); } ViewBag.BloodTypes = new List <object> { "A+", "B+", "B-", "O+", "O-", "AB+", "AB-" }; return(View()); }
public void ChangeStatusReject(BloodBag bloodBag) { using (UnitOfWork uow = new UnitOfWork()) { bloodBag.Status = BloodBagStatus.Rejected; bloodBag.Stage = BloodBagStage.Qualification; uow.BloodBagRepository.Update(bloodBag); uow.Save(); } }
public static Plasma ToPlasma(BloodBag bloodBag) { return(new Plasma { BloodType = bloodBag.BloodType, ExpirationDateAndTime = bloodBag.Date.AddDays(26), SeparationDateAndTime = DateTime.Now, CenterId = bloodBag.CenterId, Analysis = bloodBag.Analysis, Status = ComponentStatus.Available }); }
public void ChangeStatus(BloodBag bloodBag) { using (UnitOfWork uow = new UnitOfWork()) { if (bloodBag.Status == BloodBagStatus.Waiting) { bloodBag.Status = BloodBagStatus.Accepted; bloodBag.Stage = BloodBagStage.Qualification; } uow.BloodBagRepository.Update(bloodBag); uow.Save(); } }
public void SeparateBloodBag(BloodBag bloodBag, Thrombocyte t, Plasma p, RedBloodCell r) { using (UnitOfWork uow = new UnitOfWork()) { bloodBag.Stage = BloodBagStage.Separation; bloodBag.Status = BloodBagStatus.Destroyed; uow.BloodBagRepository.Update(bloodBag); uow.ThrombocyteRepository.Add(t); uow.PlasmaRepository.Add(p); uow.RedBloodCellRepository.Add(r); uow.Save(); } }
public static RedBloodCell ToRedBloodCell(BloodBag bloodBag) { return(new RedBloodCell { BloodType = bloodBag.BloodType, ExpirationDateAndTime = bloodBag.Date.AddDays(42), RhType = bloodBag.RhType, SeparationDateAndTime = DateTime.Now, CenterId = bloodBag.CenterId, Analysis = bloodBag.Analysis, Status = ComponentStatus.Available }); }
public static Thrombocyte ToThrombocyte(BloodBag bloodBag) { return(new Thrombocyte { BloodType = bloodBag.BloodType, ExpirationDateAndTime = bloodBag.Date.AddDays(5), RhType = bloodBag.RhType, SeparationDateAndTime = DateTime.Now, CenterId = bloodBag.CenterId, Analysis = bloodBag.Analysis, Status = ComponentStatus.Available }); }
protected override void End() { if (_donor != null) { BloodBag b = Instantiate(bloodbag, _bloodbagSpawn.position, _bloodbagSpawn.rotation).GetComponent <BloodBag>(); b.bloodInfo = _donor.bloodInfo; b.SetBed(this); b.GetComponent <MeshRenderer>().material = _materialsBloodBags[((int)_type) - 1]; GameManager.inst.AddBag(b); } _running = false; }
private static async Task SeedDataAsync(ApplicationDbContext dbContext) { // Seeding donationEvent var donationEvent = new DonationEvent { DateOfDonation = DateTime.UtcNow, RequestId = "123", UserDonorId = "456", }; await dbContext.DonationEvents.AddAsync(donationEvent); // Seeding blood bag var bag = new BloodBag { Quantity = 500, CollectionDate = DateTime.UtcNow, BloodGroup = BloodGroup.A, RhesusFactor = RhesusFactor.Negative, }; await dbContext.BloodBags.AddAsync(bag); await dbContext.SaveChangesAsync(); // Seeding user for donor dbContext.Users.Add(new ApplicationUser { UserName = "******", Email = "*****@*****.**", }); // Seeding user for hospital dbContext.Users.Add(new ApplicationUser { UserName = "******", Email = "*****@*****.**", }); await dbContext.SaveChangesAsync(); }
private static async Task SeedBloodStockForCenters(ApplicationDbContext context, UserManager <ApplicationUser> userManager) { var center1 = context.Centers.Where(c => c.CenterName == "Centru Donare Sânge Cluj-Napoca").FirstOrDefault(); var donor1 = context.Donors.Where(d => d.FirstName == "Laura").FirstOrDefault(); var donor2 = context.Donors.Where(d => d.FirstName == "Bogdan").FirstOrDefault(); BloodBag bloodbag1 = new BloodBag() { Center = center1, Date = DateTime.Now, Status = BloodBagStatus.Accepted, Stage = BloodBagStage.Qualification, BloodType = BloodTypes.B3, RhType = RhTypes.POZITIV, CenterId = center1.Id }; context.BloodBags.Add(bloodbag1); context.SaveChanges(); MedicalAnalysis medicalAnalysis1 = new MedicalAnalysis() { BloodBag = bloodbag1, DateAndTime = DateTime.Now, ALTLevel = false, Sifilis = false, HepatitisB = false, HepatitisC = false, HIV = false, HTLV = false, RejectedOtherCauses = false, Donor = donor1, IsFilled = true }; context.MedicalAnalyses.Add(medicalAnalysis1); context.SaveChanges(); BloodBag bloodbag2 = new BloodBag() { Center = center1, Date = DateTime.Now, Status = BloodBagStatus.Waiting, Stage = BloodBagStage.Sampling, BloodType = BloodTypes.B3, RhType = RhTypes.POZITIV, CenterId = center1.Id }; context.BloodBags.Add(bloodbag2); context.SaveChanges(); MedicalAnalysis medicalAnalysis2 = new MedicalAnalysis() { BloodBag = bloodbag2, DateAndTime = DateTime.Now, ALTLevel = false, Sifilis = false, HepatitisB = false, HepatitisC = false, HIV = false, HTLV = false, RejectedOtherCauses = false, Donor = donor1, IsFilled = true }; context.MedicalAnalyses.Add(medicalAnalysis2); context.SaveChanges(); BloodBag bloodbag3 = new BloodBag() { Center = center1, Date = DateTime.Now, Status = BloodBagStatus.Accepted, Stage = BloodBagStage.Qualification, BloodType = BloodTypes.O1, RhType = RhTypes.POZITIV, CenterId = center1.Id }; context.BloodBags.Add(bloodbag3); context.SaveChanges(); MedicalAnalysis medicalAnalysis3 = new MedicalAnalysis() { BloodBag = bloodbag3, DateAndTime = DateTime.Now, ALTLevel = false, Sifilis = false, HepatitisB = false, HepatitisC = false, HIV = false, HTLV = false, RejectedOtherCauses = false, Donor = donor2, IsFilled = true }; context.MedicalAnalyses.Add(medicalAnalysis3); context.SaveChanges(); BloodBag bloodbag4 = new BloodBag() { Center = center1, Date = DateTime.Now, Status = BloodBagStatus.Rejected, Stage = BloodBagStage.Sampling, BloodType = BloodTypes.B3, RhType = RhTypes.POZITIV, CenterId = center1.Id }; context.BloodBags.Add(bloodbag4); context.SaveChanges(); MedicalAnalysis medicalAnalysis4 = new MedicalAnalysis() { BloodBag = bloodbag4, DateAndTime = DateTime.Now, ALTLevel = false, Sifilis = false, HepatitisB = false, HepatitisC = false, HIV = false, HTLV = false, RejectedOtherCauses = true, Observations = "S-a găsit prea multă grăsime în sânge.", Donor = donor1, IsFilled = true }; context.MedicalAnalyses.Add(medicalAnalysis4); context.SaveChanges(); }
public void AddBag(BloodBag b) { bloodBags.Add(b); }
private void TryGrab() { Collider[] cols = Physics.OverlapSphere(_grabCenter.position, .75f, _interactObj); if (cols != null && cols.Length > 0) { if (cols[0].CompareTag("Donor")) { BloodDonor donor = (cols[0].GetComponent <BloodDonor>()); if (donor.state != BloodDonor.State.taking && donor.state != BloodDonor.State.leave && donor.state != BloodDonor.State.rageQuit) { AttachObj(donor, _attrachAnchor); SetBul(true, sprites[(int)donor.bloodInfo.type - 1], "" + donor.bloodInfo.family); ResetHighlightAndBul(false); } else if (donor.state == BloodDonor.State.rageQuit) { donor.PlayRageSound(); } } else if (cols[0].CompareTag("Bloodbag")) { BloodBag bloodbag = (cols[0].GetComponent <BloodBag>()); AttachObj(bloodbag, _grabCenter); SetBul(true, sprites[(int)bloodbag.bloodInfo.type - 1], "" + bloodbag.bloodInfo.family); ResetHighlightAndBul(false); } else if (cols[0].CompareTag("FoodBag")) { FoodBag bloodbag = (cols[0].GetComponent <FoodBag>()); AttachObj(bloodbag, _grabCenter); ResetHighlightAndBul(true); } } else { cols = Physics.OverlapSphere(_grabCenter.position, .75f, _interactPlace); if (cols != null && cols.Length > 0) { if (cols[0].CompareTag("BloodShelf") || cols[0].CompareTag("FoodShelf")) { Shelf shelf = cols[0].GetComponent <Shelf>(); if (shelf != null) { DragableObj b = shelf.TakeOut(); if (b != null) { AttachObj(b, _grabCenter); if (b is BloodBag) { BloodBag bloodBag = ((BloodBag)b); SetBul(true, sprites[(int)bloodBag.bloodInfo.type - 1], "" + bloodBag.bloodInfo.family); } } } } else if (cols[0].CompareTag("CallCenter")) { CallCenter cc = cols[0].GetComponent <CallCenter>(); if (cc != null) { cc.Open(this); } } } } }
public void NextPage() { // void Start () { pageNumber++; switch (pageNumber) { case 0: Debug.Log("case " + pageNumber); bloodAdminTitle.text = questions[pageNumber]; bloodAdminButtonText[0].text = "yes"; bloodAdminButtonText[1].text = "no"; bloodAdminButtons[2].gameObject.SetActive(false); break; case 1: //Has the patient given consent? bloodAdminTitle.text = questions[pageNumber]; bloodAdminButtonText[0].text = "yes"; bloodAdminButtonText[1].text = "no"; bloodAdminButtons[2].gameObject.SetActive(false); // pageNumber++; break; case 2: //What is the patient identification number? bloodAdminTitle.text = questions[pageNumber]; bloodAdminButtons[2].gameObject.SetActive(true); for (int i = 0; i < bloodAdminButtonText.Count; i++) { bloodAdminButtonText[i].text = patientID[i].ToString(); } // pageNumber++; break; case 3: //What is the patients name? bloodAdminTitle.text = questions[pageNumber]; bloodAdminButtons[2].gameObject.SetActive(true); for (int i = 0; i < bloodAdminButtonText.Count; i++) { bloodAdminButtonText[i].text = patientName[i]; } // pageNumber++; //bloodAdminButtonText[0].text = patientName[0]; break; case 4: //What is the labeled blood group and blood type? bloodAdminTitle.text = questions[pageNumber]; bloodAdminButtons[2].gameObject.SetActive(true); for (int i = 0; i < bloodAdminButtonText.Count; i++) { bloodAdminButtonText[i].text = bloodgroupandtyp[i]; } // pageNumber++; break; case 5: //What is the labeled expiration date? bloodAdminTitle.text = questions[pageNumber]; bloodAdminButtons[2].gameObject.SetActive(true); for (int i = 0; i < bloodAdminButtonText.Count; i++) { bloodAdminButtonText[i].text = expiration[i]; } // pageNumber++; break; case 6: //Were blood clots, clumping, or gas bubbles found when inspecting? bloodAdminTitle.text = questions[pageNumber]; bloodAdminButtonText[0].text = "yes"; bloodAdminButtonText[1].text = "no"; bloodAdminButtons[2].gameObject.SetActive(false); pageNumber++; break; default: BloodBag bloodBag = GameObject.Find("BloodBag").GetComponent <BloodBag>(); bloodBag.ChecklistComplete(); break; } }
/// <summary>Check surounding object around the player</summary> private void CheckOnDrop() { Collider[] cols = Physics.OverlapSphere(_grabCenter.position, .75f, _interactPlace); if (cols != null && cols.Length > 0) { if (cols[0].CompareTag("Doctor_Door")) { Doctor doc = cols[0].GetComponent <Doctor>(); if (doc != null && _currentObjAttached is BloodDonor) { BloodDonor bd = (BloodDonor)_currentObjAttached; if (bd != null) { if (bd.progressionStat == (int)BloodDonor.State.home || bd.state == BloodDonor.State.home) { if (!doc.occupied) { doc.SetDonor(bd); } } else { bd.state = BloodDonor.State.rageQuit; } } } } else if (cols[0].CompareTag("Bed")) { Bed bed = cols[0].GetComponent <Bed>(); if (bed != null && _currentObjAttached is BloodDonor) { BloodDonor bd = (BloodDonor)_currentObjAttached; if (bd != null) { if ((bd.progressionStat == (int)BloodDonor.State.medic || bd.state == BloodDonor.State.medic) /*&& bed.type == bd.Blood.type*/) { if (!bed.occupied) { bed.SetDonor(bd); } } else { bd.state = BloodDonor.State.rageQuit; } } } if (_currentObjAttached is FoodBag) { if (bed.occupied) { int score = bed.TryFeed(_currentObjAttached); NewScore(score); } } } else if (cols[0].CompareTag("BloodShelf") || cols[0].CompareTag("FoodShelf")) { Shelf shelf = cols[0].GetComponent <Shelf>(); if (shelf != null) { int score = shelf.FillIn(_currentObjAttached); NewScore(score); } } else if (cols[0].CompareTag("commands")) { Commands commands = cols[0].GetComponent <Commands>(); if (commands != null && _currentObjAttached is BloodBag) { BloodBag bb = (BloodBag)_currentObjAttached; if (bb != null) { int[] score = commands.AddBag(bb); NewScore(score); } } } else if (_currentObjAttached is BloodDonor) { ((BloodDonor)_currentObjAttached).onProcess = false; } } else if (_currentObjAttached is BloodDonor) { ((BloodDonor)_currentObjAttached).onProcess = false; } ResetHighlightAndBul(true); }
private void HighlightManagement() { Collider[] cols = Physics.OverlapSphere(_grabCenter.position, .75f, _interactObj | _interactPlace); if (cols.Length <= 0) { ResetHighlightAndBul(true); return; } Collider col = cols[0]; if (_currentObjAttached != null && col.transform == _currentObjAttached.transform && cols.Length > 1) { col = cols[1]; } if (col.CompareTag("Donor")) { if (_currentObjAttached == null) { BloodDonor donor = (col.GetComponent <BloodDonor>()); if (donor != null) { SetBul(true, sprites[(int)donor.bloodInfo.type - 1], "" + donor.bloodInfo.family); } _lastHighlightObj.SetData(col, donor.meshRenderers, true); } else if (_lastHighlightObj.col != null && _lastHighlightObj.col.transform != col.transform) { ResetHighlightAndBul(false); } } else if (col.CompareTag("Bloodbag")) { if (_currentObjAttached == null) { BloodBag bloodbag = (col.GetComponent <BloodBag>()); if (bloodbag != null) { SetBul(true, sprites[(int)bloodbag.bloodInfo.type - 1], "" + bloodbag.bloodInfo.family); } _lastHighlightObj.SetData(col, bloodbag.meshRenderers, false); } else if (_lastHighlightObj.col != null && _lastHighlightObj.col.transform != col.transform) { ResetHighlightAndBul(false); } } else if (col.CompareTag("BloodShelf")) { BloodShelf shelf = col.GetComponent <BloodShelf>(); if (_currentObjAttached == null || _currentObjAttached is BloodBag) { if (_currentObjAttached == null) { SetBul(true, "" + shelf.GetNumber()); } _lastHighlightObj.SetData(col, shelf.meshRenderers, false); } else { ResetHighlightAndBul(false); } } else if (col.CompareTag("FoodBag")) { if (_currentObjAttached == null) { _lastHighlightObj.SetData(col, col.GetComponent <MeshRenderer>().material, false); } else if (_lastHighlightObj.col != null && _lastHighlightObj.col.transform != col.transform) { ResetHighlightAndBul(true); } } else if (col.CompareTag("FoodShelf")) { FoodShelf shelf = col.GetComponent <FoodShelf>(); if (_currentObjAttached == null || _currentObjAttached is FoodBag) { _lastHighlightObj.SetData(col, shelf.meshRenderers, false); } else { ResetHighlightAndBul(false); } } else if (col.CompareTag("Doctor_Door") || col.CompareTag("Bed")) { InteractableWihDonor interactableWihDonor = col.GetComponent <InteractableWihDonor>(); if (_currentObjAttached != null && _currentObjAttached is BloodDonor) { BloodDonor donor = (BloodDonor)_currentObjAttached; if (/*donor.state != BloodDonor.State.taking &&*/ donor.state != BloodDonor.State.leave && donor.state != BloodDonor.State.rageQuit) { _lastHighlightObj.SetData(col, interactableWihDonor.meshRenderers, false); } } else if (_currentObjAttached != null && _currentObjAttached is FoodBag) { if (interactableWihDonor.occupied) { _lastHighlightObj.SetData(col, interactableWihDonor.meshRenderers, false); } } else { ResetHighlightAndBul(false); } } else if (col.CompareTag("commands")) { Commands commands = col.GetComponent <Commands>(); if (_currentObjAttached != null && _currentObjAttached is BloodBag) { _lastHighlightObj.SetData(col, commands.meshRenderers, false); } } else if (col.CompareTag("CallCenter")) { CallCenter cc = col.GetComponent <CallCenter>(); if (!cc.inRecorvery) { _lastHighlightObj.SetData(col, cc.meshRenderers, false); } } else { ResetHighlightAndBul(false); } }