Пример #1
0
        private ProfileEntitlementView OpenProfileEntitlement(ProfileEntitlementModel pe)
        {
            var form = new Form();
            var view = (ProfileEntitlementForm)DBViewsFactory.GetView(MODELS.ProfileEntitlement);

            pe.ProfileId = Model.Id;
            view.SetModel(pe);
            view.Dock = DockStyle.Fill;
            form.Controls.Add(view);
            form.FormBorderStyle = FormBorderStyle.FixedToolWindow;
            form.StartPosition   = FormStartPosition.CenterScreen;
            form.Size            = new System.Drawing.Size(430, 430);
            view.SetNewButtonEnabled(false);
            view.SetDeleteButtonEnabled(false);
            view.DisableChangeProfile();
            bool isnew = pe.Id == 0;

            view.AfterSave += (b) => {
                pe.EntitlementId = view.Model.EntitlementId;
                pe.ProfileId     = view.Model.ProfileId;
                var model = DBControllersFactory.ProfileEntitlement().Find(pe, "ProfileId", "EntitlementId");
                if (isnew)
                {
                    profileEntitlements.Add(model);
                }
                else
                {
                    profileEntitlements[profileEntitlements.IndexOf(profileEntitlements.Where(x => x.Id == pe.Id).First())] = model;
                }
                RequeryEntitlements();
                form.Close();
            };
            form.Show();
            return(view);
        }
Пример #2
0
 public UserController()
 {
     CntrlAU = DBControllersFactory.Audit();
     CntrlEG = DBControllersFactory.EntitlementGroup();
     CntrlET = DBControllersFactory.Entity();
     CntrlEN = DBControllersFactory.Entitlement();
     CntrlPE = DBControllersFactory.ProfileEntitlement();
 }
Пример #3
0
        private void BtnEditPE_Click(object sender, EventArgs e)
        {
            var model = new ProfileEntitlementModel {
                Id = lstProfileEntitlements.SelectedValue.ToInteger()
            };

            OpenProfileEntitlement(model).SetModel(DBControllersFactory.ProfileEntitlement().Find(model, "Id"));
        }
Пример #4
0
        private void BtnDeletePE_Click(object sender, EventArgs e)
        {
            int peId = lstProfileEntitlements.SelectedValue.ToInteger();

            DBControllersFactory.ProfileEntitlement().Delete(new ProfileEntitlementModel {
                Id = peId
            });
            profileEntitlements.RemoveAt(profileEntitlements.IndexOf(profileEntitlements.Where(x => x.Id == peId).First()));
            lstProfileEntitlements.Items.RemoveAt(lstProfileEntitlements.SelectedIndices[0]);
        }
Пример #5
0
 private void TxtId_TextChanged(object sender, EventArgs e)
 {
     profileEntitlements = DBControllersFactory.ProfileEntitlement().Read(new ProfileEntitlementModel()
     {
         ProfileId = Model.Id
     }, "ProfileId").ToList();
     txtEntitlementGroupId.Text = "";
     RequeryEntitlements();
     RequeryUsers();
 }
Пример #6
0
 private MainView()
 {
     InitializeComponent(); if (DesignMode || (Site != null && Site.DesignMode))
     {
         return;
     }
     CntrlLG = DBControllersFactory.Language();
     CntrlWD = DBControllersFactory.Word();
     CntrlEG = DBControllersFactory.EntitlementGroup();
     CntrlEN = DBControllersFactory.Entitlement();
     CntrlET = DBControllersFactory.Entity();
     CntrlPE = DBControllersFactory.ProfileEntitlement();
     CntrlUS = DBControllersFactory.User();
 }
Пример #7
0
 protected void Page_Load(object sender, EventArgs e)
 {
     CntrlUS = DBControllersFactory.User();
     CntrlPE = DBControllersFactory.ProfileEntitlement();
     MVCHIS.Common.MVCHISSession.Instance.Initialize();
     Login1.Visible = MVCHISSession.Instance.CurrentUser == null;
     //DictionaryUC1.Visible = false;
     Login1.GoClicked += (um) => {
         UserController uc = DBControllersFactory.User();
         um = uc.Autheniticate(um);
         if (um == null)
         {
             ScriptManager.RegisterStartupScript(this, GetType(), "error", "alert('Login denied')", true);
         }
         else
         {
             WhenAuthenticated(um);
         }
     };
 }
Пример #8
0
        public PermissionsHelper(BaseView <M, C> view)
        {
            if (view == null)
            {
                throw new ArgumentException("view cannot be null");
            }
            //if(model==default) throw new ArgumentException("model cannot be null");
            var CntrlEN = DBControllersFactory.Entitlement();
            var CntrlPE = DBControllersFactory.ProfileEntitlement();
            var CntrlPR = DBControllersFactory.Profile();
            var CntrlET = DBControllersFactory.Entity();

            var usr = MVCHISSession.Instance.CurrentUser;

            if (usr == null)
            {
                return;
            }
            //var mdl = view?.GetType().GetCustomAttributes().OfType<ForModelAttribute>().FirstOrDefault();
            //if (mdl == null) return;

            var entity = CntrlET.Find(new EntityModel()
            {
                EntityName = $"{typeof(M).Name}".Replace("Model", "")
            }, "EntityName");

            var ent = CntrlEN.Find(new EntitlementModel()
            {
                EntityId = entity.Id
            }, "EntityId");

            if (ent == null)
            {
                return;
            }

            var pen = CntrlPE.Find(new ProfileEntitlementModel()
            {
                ProfileId     = usr.ProfileId,
                EntitlementId = ent.Id
            }, "ProfileId", "EntitlementId");

            if (view.NewButton != null)
            {
                view.SetNewButtonEnabled(view.NewButton.Enabled && pen.AllowCreate);
            }
            if (view.SaveButton != null)
            {
                view.SetSaveButtonEnabled(view.SaveButton.Enabled && pen.AllowUpdate);
            }
            if (view.DeleteButton != null)
            {
                view.SetDeleteButtonEnabled(view.DeleteButton.Enabled && pen.AllowDelete);
            }

            if (!pen.AllowRead)
            {
                FormsHelper.Error($"You don't have enough permissions to open {view}.");
                view.GotFocus += (x, y) => {
                    view.Enabled = false;
                    view.BeginInvoke(new MethodInvoker(view.Hide));
                };
            }
        }