// GET: Patients/Create public ActionResult Create() { var patient = new Patient(); patient.Conditions = new List<Condition>(); PopulateAssignedCondition(patient); PopulateDropDownList(); return View(); }
private void UpdateConditions(string[] selectedConditions, Patient patientToUpdate) { if (selectedConditions == null) { patientToUpdate.Conditions = new List<Condition>(); return; } var selectedHibakHash = new HashSet<string>(selectedConditions); //checkbox diagok var autoHibak = new HashSet<int>(patientToUpdate.Conditions.Select(g => g.ID)); foreach (var hiba in db.Conditions) { string hibaid = hiba.ID.ToString(); if (selectedHibakHash.Contains(hibaid)) { if (!autoHibak.Contains(hiba.ID)) { patientToUpdate.Conditions.Add(hiba); } } else { if (autoHibak.Contains(hiba.ID)) { patientToUpdate.Conditions.Remove(hiba); } } } }
private void PopulateAssignedCondition(Patient patient) { var allCondition = db.Conditions; var pConditions = new HashSet<int>(patient.Conditions.Select(d => d.ID)); var viewModelSelected = new List<PatientConditionsViewModel>(); var viewModelNotSelected = new List<PatientConditionsViewModel>(); foreach (var con in allCondition) { if (pConditions.Contains(con.ID)) { viewModelSelected.Add(new PatientConditionsViewModel { ConditionID = con.ID, ConditionName = con.ConditionName, Assigned = true }); } else { viewModelNotSelected.Add(new PatientConditionsViewModel { ConditionID = con.ID, ConditionName = con.ConditionName, Assigned = true }); } } ViewBag.SelectedCon = new MultiSelectList(viewModelSelected, "ConditionID", "ConditionName"); ViewBag.NotSelectedCon = new MultiSelectList(viewModelNotSelected, "ConditionID", "ConditionName"); }