예제 #1
0
        protected Boolean ApplyChanges()
        {
            Boolean isModified = false;

            Boolean success = false;


            Mercury.Client.Core.Individual.CareMeasure careMeasureUnmodified = (Mercury.Client.Core.Individual.CareMeasure)Session[SessionCachePrefix + "CareMeasureUnmodified"];

            if (careMeasureUnmodified.Id == 0)
            {
                isModified = true;
            }


            // CLASSIFICATION

            if (CareMeasureDomainSelection.SelectedItem != null)
            {
                careMeasure.CareMeasureDomainId = Convert.ToInt64(CareMeasureDomainSelection.SelectedItem.Value);
            }

            careMeasure.CareMeasureDomainName = CareMeasureDomainSelection.Text.Trim();



            if (CareMeasureClassSelection.SelectedItem != null)
            {
                careMeasure.CareMeasureClassId = Convert.ToInt64(CareMeasureClassSelection.SelectedItem.Value);
            }

            careMeasure.CareMeasureClassName = CareMeasureClassSelection.Text.Trim();


            careMeasure.Name = CareMeasureName.Text.Trim();

            careMeasure.Description = CareMeasureDescription.Text.Trim();

            careMeasure.Enabled = CareMeasureEnabled.Checked;

            careMeasure.Visible = CareMeasureVisible.Checked;


            if (!isModified)
            {
                isModified = !careMeasure.IsEqual(careMeasureUnmodified);
            }

            if (isModified)
            {
                success = MercuryApplication.CareMeasureSave(careMeasure);

                if (success)
                {
                    careMeasure = MercuryApplication.CareMeasureGet(careMeasure.Id, false);

                    Session[SessionCachePrefix + "CareMeasure"] = careMeasure;

                    Session[SessionCachePrefix + "CareMeasureUnmodified"] = careMeasure.Copy();

                    SaveResponseLabel.Text = "Save Successful";

                    InitializeAll();
                }

                else
                {
                    SaveResponseLabel.Text = "Unable to Save.";

                    if (MercuryApplication.LastException != null)
                    {
                        SaveResponseLabel.Text = SaveResponseLabel.Text + " [" + MercuryApplication.LastException.Message + "]";
                    }

                    success = false;
                }
            }

            else
            {
                SaveResponseLabel.Text = "No Changes Detected."; success = true;
            }

            return(success);
        }
예제 #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Int64 forCareMeasureId = 0;


            if (MercuryApplication == null)
            {
                return;
            }

            if ((!MercuryApplication.HasEnvironmentPermission(Mercury.Server.EnvironmentPermissions.CareMeasureReview))

                && (!MercuryApplication.HasEnvironmentPermission(Mercury.Server.EnvironmentPermissions.CareMeasureManage)))
            {
                Response.Redirect("/PermissionDenied.aspx", true); return;
            }


            if (!Page.IsPostBack)
            {
                // CACHE AVAILABLE PROBLEM STATEMENT TREE

                List <Client.Core.Individual.CareMeasure> careMeasuresAvailable = MercuryApplication.CareMeasuresAvailable(false);

                #region Initial Page Load

                if (Request.QueryString["CareMeasureId"] != null)
                {
                    forCareMeasureId = Int64.Parse(Request.QueryString["CareMeasureId"]);
                }

                if (forCareMeasureId != 0)
                {
                    careMeasure = MercuryApplication.CareMeasureGet(forCareMeasureId, false);

                    if (careMeasure == null)
                    {
                        careMeasure = new Mercury.Client.Core.Individual.CareMeasure(MercuryApplication);
                    }
                }

                else
                {
                    careMeasure = new Mercury.Client.Core.Individual.CareMeasure(MercuryApplication);
                }

                InitializeAll();

                Session[SessionCachePrefix + "CareMeasure"] = careMeasure;

                Session[SessionCachePrefix + "CareMeasureUnmodified"] = careMeasure.Copy();

                #endregion
            } // Initial Page Load

            else   // Postback

            {
                careMeasure = (Mercury.Client.Core.Individual.CareMeasure)Session[SessionCachePrefix + "CareMeasure"];
            }

            ApplySecurity();

            if (!String.IsNullOrEmpty(careMeasure.Name))
            {
                Page.Title = "CareMeasure  - " + careMeasure.Name;
            }
            else
            {
                Page.Title = "CareMeasure ";
            }

            return;
        }