public ActionResult TemplateCriteria(TemplateCriteriaEditModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _clinicalTemplateService.SaveCriteria(model, _sessionContext.UserSession.CurrentOrganizationRole.OrganizationRoleUserId);
                    model.FeedbackMessage = FeedbackMessageModel.CreateSuccessMessage("Updated Successfully");
                }
                else
                {
                    model.FeedbackMessage = FeedbackMessageModel.CreateFailureMessage("Validation Fails");
                }
            }
            catch (Exception ex)
            {
                _logger.Error(string.Format("System Error: exception- {0} \n stacktrace: {1} ", ex.Message, ex.StackTrace));
                model.FeedbackMessage = FeedbackMessageModel.CreateFailureMessage("System Error:" + ex);
            }

            return(PartialView("TemplateCriteriaEditModel", model));
        }
        public void SaveCriteria(TemplateCriteriaEditModel templateModel, long orgRoleUserId)
        {
            var validCriteriaConditions = templateModel.Criteria.Where(IsValidCriteria);
            var criteriaCollection      = _clinicalTestQualificationCriteriaRepository.GetbyTemplateId(templateModel.TemplateId);
            var list = CreateClinicalTestQualificatonCriteriaDomain(validCriteriaConditions, criteriaCollection, orgRoleUserId, templateModel.TemplateId, templateModel.IsPublished);

            using (var scope = new TransactionScope())
            {
                _clinicalTestQualificationCriteriaRepository.DeleteTemplateCriteria(templateModel.TemplateId);

                if (!list.IsNullOrEmpty())
                {
                    _clinicalTestQualificationCriteriaRepository.Save(list);
                }

                if (templateModel.IsPublished)
                {
                    _healthAssessmentTemplateRepository.PublishTemplate(templateModel.TemplateId);
                }

                scope.Complete();
            }
        }