Example #1
0
        protected void btnAddMedication_Click(object sender, EventArgs e)
        {
            if (ddlMedication.Items.Count == 0)
            {
                SetActive("tab3"); return;
            }
            ;
            if (ddlMedication.SelectedValue == "0")
            {
                SetActive("tab3"); return;
            }
            ;

            // Save element
            var medication = GetMedication(Convert.ToInt32(ddlMedication.SelectedValue));

            var conmed = new ConditionMedication
            {
                Condition  = _condition,
                Medication = medication
            };

            UnitOfWork.Repository <ConditionMedication>().Save(conmed);
            UnitOfWork.Complete();

            RenderGrids();
            SetActive("tab3");
        }
Example #2
0
        /// <summary>
        ///  Handle the updating of medications for an existing condition
        /// </summary>
        /// <param name="conditionForUpdate">The payload containing the list of lab tests</param>
        /// <param name="conditionFromRepo">The condition entity that is being updated</param>
        /// <returns></returns>
        private void AddOrUpdateConditionMedications(ConditionForUpdateDto conditionForUpdate, Condition conditionFromRepo)
        {
            // Determine what has been removed
            ArrayList deleteCollection = new ArrayList();

            foreach (var conditionMedication in conditionFromRepo.ConditionMedications)
            {
                if (!conditionForUpdate.ConditionMedications.Contains(conditionMedication.Product.Id))
                {
                    deleteCollection.Add(conditionMedication);
                }
            }
            // Process deletes
            foreach (var conditionMedication in deleteCollection)
            {
                _conditionMedicationRepository.Delete(conditionMedication);
            }

            // Determine what needs to be added
            foreach (var productId in conditionForUpdate.ConditionMedications)
            {
                if (!conditionFromRepo.ConditionMedications.Any(c => c.Product.Id == productId))
                {
                    var product = _productRepository.Get(f => f.Id == productId);
                    var newConditionMedication = new ConditionMedication()
                    {
                        Condition = conditionFromRepo, Product = product, Concept = product.Concept
                    };
                    _conditionMedicationRepository.Save(newConditionMedication);
                }
            }
        }