private void BindModel() { CheckBoxListModel.DataSource = SPARInsightManagement.Web.Code.Model.GetModelList(); CheckBoxListModel.DataTextField = "Description"; CheckBoxListModel.DataValueField = "ModelId"; CheckBoxListModel.DataBind(); }
public IActionResult PromoteStoreAdmin(int systemId, string state, string message, string store, bool valid) { var options = new List <CheckBoxModel> { new CheckBoxModel { Name = "Store Owner" }, new CheckBoxModel { Name = "Can Manage Products" }, new CheckBoxModel { Name = "Can Promote Store Admin" }, new CheckBoxModel { Name = "Can Manage Discounts" }, new CheckBoxModel { Name = "Can View Purchase History" } }; ViewBag.valid = valid; CheckBoxListModel optionsModel = new CheckBoxListModel(systemId, state, message, store) { Items = options }; return(View(optionsModel)); }
public IActionResult PromoteStoreAdmin(int systemId, string state, string message, string store, bool valid) { List <CheckBoxModel> lst = new List <CheckBoxModel> { new CheckBoxModel { Name = "StoreOwner" }, new CheckBoxModel { Name = "ManageProducts" }, new CheckBoxModel { Name = "PromoteStoreAdmin" }, new CheckBoxModel { Name = "DeclareDiscountPolicy" }, new CheckBoxModel { Name = "ViewPurchaseHistory" } }; ViewBag.valid = valid; CheckBoxListModel optionList = new CheckBoxListModel(systemId, state, message, store) { Items = lst }; return(View(optionList)); }
public ActionResult btnSubmit_Click([Bind(Include = "IsChecked,CheckBoxList1,RadioButtonList1")] CheckBoxListModel model) { if (ModelState.IsValid) { ShowNotify(String.Format("用户提交的数据:<br/><pre>{0}</pre>", JsonConvert.SerializeObject(model, Formatting.Indented))); } return(UIHelper.Result()); }
public void TestPermissionsServices_Check_User_CityArea_Permissions() { var USAM1 = GetUserSessionModel("*****@*****.**"); var model = new CheckBoxListModel(); // check business var list = permService.GetPermissonsForUser(USAM1, USAM1.UserId, PermissionTypeEnum.CityArea); Assert.IsTrue(list.Count() == CountPermUser(USAM1, PermissionTypeEnum.CityArea)); }
public void TestPermissionsServices_Check_Business_Brand_Permissions() { var USAM1 = GetUserSessionModel("*****@*****.**"); var model = new CheckBoxListModel(); // check business var list = permService.GetPermissonsForBusiness(USAM1, USAM1.BusinessId.Value, PermissionTypeEnum.Brand); Assert.IsTrue(list.Count() == CountPermBusiness(USAM1, PermissionTypeEnum.Brand)); }
public void TestPermissionsServices_Check_User_SystemAccess_Permissions() { var USAM1 = GetUserSessionModel("*****@*****.**"); var model = new CheckBoxListModel(); // check default var list = permService.GetPermissonsForUser(USAM1, (long)USAM1.UserId, PermissionTypeEnum.SystemAccess); Assert.IsTrue(list.Count() == CountSystemAccess(USAM1)); // check user list = permService.GetPermissonsForUser(USAM1, USAM1.UserId, PermissionTypeEnum.SystemAccess); Assert.IsTrue(list.Where(p => p.IsSelected).Count() == CountSystemAccessUser(USAM1)); }
// GET: DataModel/CheckBoxList public ActionResult Index() { var model = new CheckBoxListModel(); model.IsChecked = true; model.CheckBoxList1 = new string[] { "Value1", "Value3" }; model.CheckBoxList1Items = new List <CheckItem> { new CheckItem { Text = "可选项 1", Value = "Value1" }, new CheckItem { Text = "可选项 2", Value = "Value2" }, new CheckItem { Text = "可选项 3", Value = "Value3" } }; model.RadioButtonList1 = "Value1"; model.RadioButton1Items = new List <RadioItem> { new RadioItem { Text = "可选项 1", Value = "Value1" }, new RadioItem { Text = "可选项 2", Value = "Value2" }, new RadioItem { Text = "可选项 3", Value = "Value2" } }; return(View(model)); }
public void TestPermissionsServices_Check_Remove_Parent_Permissions_Reduces_Child_List() { var USAM1 = GetUserSessionModel("*****@*****.**"); var model = new CheckBoxListModel(); /// Business var busPerms = permService.GetPermissonsForBusiness(USAM1, USAM1.BusinessId.Value, PermissionTypeEnum.Tool); Assert.IsTrue(busPerms.Count() == CountPermBusiness(USAM1, PermissionTypeEnum.Tool)); /// user var userPerms = permService.GetPermissonsForUser(USAM1, USAM1.UserId, PermissionTypeEnum.Tool); Assert.IsTrue(busPerms.Count() == CountPermUser(USAM1, PermissionTypeEnum.Tool)); // Remove 1 var perms = new List <PermissionListModel>(); perms.AddRange(busPerms); perms.Remove(busPerms.Where(b => b.IsSelected).FirstOrDefault()); db.PermissionsUpdate(EntityEnum.Tool, (long)PermissionTypeEnum.Tool, EntityEnum.Business, USAM1.BusinessId, perms, PermissionTypeEnum.Tool); db.SaveChanges(); /// Business defaults var busPerms2 = permService.GetPermissonsForBusiness(USAM1, USAM1.BusinessId.Value, PermissionTypeEnum.Tool); Assert.IsTrue(busPerms2.Where(p => p.IsSelected).Count() == CountPermBusiness(USAM1, PermissionTypeEnum.Tool)); /// user var userPerms2 = permService.GetPermissonsForUser(USAM1, USAM1.UserId, PermissionTypeEnum.Tool); Assert.IsTrue(userPerms2.Count() == CountPermUser(USAM1, PermissionTypeEnum.Tool)); Assert.IsTrue(busPerms.Count() == busPerms2.Count); Assert.IsTrue(userPerms.Count - 1 == userPerms2.Count); }
public ServiceResponse PostModel(UserSessionModel admin, UserModel model) { this.Db.ReadOnly = false; try { User entity = null; // Validate Model RulesOnValidateModel(model); // Map to Entity if (this.Response.IsOK) { entity = ModelToEntity(admin, model); } // Validate Entity if (this.Response.IsOK) { ApplyBusinessRules(admin, entity); } // Do this last, painful for users if not last if (this.Response.IsOK) { if (model.IsRegistering) { this.Response.PropertyReference = ""; Validation.IsText(this.Response.Messages, model.Password, "Password", "Password", 5, 50, true); Validation.IsText(this.Response.Messages, model.ConfirmPassword, "ConfirmPassword", "Confirm Password", 50, true); Validation.IsPasswordConfirmed(this.Response.Messages, model.Password, model.ConfirmPassword, "ConfirmPassword"); } } if (this.Response.IsOK) { var dbSelection = this.Context.Permissions.Where(p => p.ObjectId == entity.UserId && p.PermissionTypeId == PermissionTypeEnum.SystemAccess).Select(r => r).ToList(); base.SaveToDatabase(model, entity, string.Format("User '{0}'", Helpers.DisplayName(entity))); model.UserId = entity.UserId; var permissions = CheckBoxListModel.ToPermissionListModel(model.SystemAccesses); this.Db.UpdatePermissionAudit(EntityEnum.UserType, entity, permissions, PermissionTypeEnum.SystemAccess, admin, dbSelection); // If registered successfully prevent message from being sent // Reasom is that they remain in temp data and show up on sign in. 0000067: Sign In window acts funky if (model.IsRegistering) { this.Response.Messages.Clear(); } } } catch (Exception e) { this.Response.AddError(e.Message); this.Response.Messages.AddAudit(e); } FinaliseModel(admin, model); this.Response.Model = model; return(this.Response); }
public void ApplyBusinessRules(User entity, UserModel model, UserSessionModel admin) { Db.PermissionsUpdate(EntityEnum.Business, entity.BusinessId, EntityEnum.User, model.UserId, CheckBoxListModel.ToPermissionListModel(model.CityAreas), PermissionTypeEnum.CityArea); Db.PermissionsUpdate(EntityEnum.Business, entity.BusinessId, EntityEnum.User, model.UserId, CheckBoxListModel.ToPermissionListModel(model.Brands), PermissionTypeEnum.Brand); Db.PermissionsUpdate(EntityEnum.Business, entity.BusinessId, EntityEnum.User, model.UserId, CheckBoxListModel.ToPermissionListModel(model.ProductFamilies), PermissionTypeEnum.ProductFamily); Db.PermissionsUpdate(EntityEnum.Business, entity.BusinessId, EntityEnum.User, model.UserId, CheckBoxListModel.ToPermissionListModel(model.Tools), PermissionTypeEnum.Tool); permissions = CheckBoxListModel.ToPermissionListModel(model.SystemAccesses); // all users have this unset when being created if (IsSet(SystemAccessEnum.AdminAccessRights) && this.Db.Entry(entity).State == EntityState.Added) { UnSet(SystemAccessEnum.AdminAccessRights); } if (entity.IsGroupOwner.HasValue && entity.IsGroupOwner.Value) { CreateOrSet(SystemAccessEnum.ManageGroups); } if (IsSet(SystemAccessEnum.EditUser)) { CreateOrSet(SystemAccessEnum.ViewUsers); } if (IsSet(SystemAccessEnum.UndeleteUser)) { CreateOrSet(SystemAccessEnum.ViewUsers); } if (IsSet(SystemAccessEnum.EditBusiness)) { CreateOrSet(SystemAccessEnum.ViewBusiness); } if (IsSet(SystemAccessEnum.UndeleteBusiness)) { CreateOrSet(SystemAccessEnum.ViewBusiness); } if (IsSet(SystemAccessEnum.EditProject)) { CreateOrSet(SystemAccessEnum.ViewProject); } if (IsSet(SystemAccessEnum.UndeleteProject)) { CreateOrSet(SystemAccessEnum.ViewProject); } //if (IsSet(SystemAccessEnum.ShareProject)) CreateOrSet(SystemAccessEnum.ViewProject); if (IsSet(SystemAccessEnum.TransferProject)) { CreateOrSet(SystemAccessEnum.ViewProject); } Db.PermissionsUpdate(EntityEnum.UserType, (long)entity.UserTypeId, EntityEnum.User, model.UserId, permissions, PermissionTypeEnum.SystemAccess); }
public Business ModelToEntity(UserSessionModel admin, BusinessModel model, bool businessEdit) { var entity = GetEntity(admin, model); if (this.Response.HasError) { return(null); } entity.BusinessName = Utilities.Trim(model.BusinessName); entity.AccountId = Utilities.Trim(model.AccountId); if (model.BusinessTypeId != null) { entity.BusinessTypeId = (BusinessTypeEnum)model.BusinessTypeId; } if (businessEdit) { if (this.Context.Entry(entity).State == EntityState.Added) { if (entity.IsWebServiceImport) { model.Enabled = true; } } entity.ShowPricing = model.ShowPricing; entity.Enabled = model.Enabled; Db.PermissionsUpdate(EntityEnum.CityArea, (long)PermissionTypeEnum.CityArea, EntityEnum.Business, model.BusinessId, CheckBoxListModel.ToPermissionListModel(model.CityAreas), PermissionTypeEnum.CityArea); Db.PermissionsUpdate(EntityEnum.Brand, (long)PermissionTypeEnum.Brand, EntityEnum.Business, model.BusinessId, CheckBoxListModel.ToPermissionListModel(model.Brands), PermissionTypeEnum.Brand); Db.PermissionsUpdate(EntityEnum.ProductFamily, (long)PermissionTypeEnum.ProductFamily, EntityEnum.Business, model.BusinessId, CheckBoxListModel.ToPermissionListModel(model.ProductFamilies), PermissionTypeEnum.ProductFamily); Db.PermissionsUpdate(EntityEnum.Tool, (long)PermissionTypeEnum.Tool, EntityEnum.Business, model.BusinessId, CheckBoxListModel.ToPermissionListModel(model.Tools), PermissionTypeEnum.Tool); contactService.BeginPropertyReference(this, "Contact"); entity.Contact = contactService.ModelToEntity(model.Contact); contactService.EndPropertyReference(); if (model.ParentBusinessId != 0 && model.ParentBusinessId != null) { UpdateParentBusiness(model); } } addressService.BeginPropertyReference(this, "Address"); entity.Address = addressService.ModelToEntity(model.Address); addressService.EndPropertyReference(); return(entity); }
public CheckBoxListModel CheckBoxListModelUserPermissions(UserSessionModel admin, long businessId, UserTypeEnum?userTypeId, CheckBoxListModel model, PermissionTypeEnum type, bool isEditing = false) { var permissionService = new PermissionServices(this.Context); // Return default permissions with selected items var permissions = permissionService.GetPermissonsForUserType(admin, businessId, userTypeId, type, isEditing); var result = GetCheckBoxListModel(admin, permissions, model); result.EntityReferenceId = GetEntityReferenceByPermissionType(type); return(result); }
private CheckBoxListModel GetCheckBoxListModel(UserSessionModel admin, List <PermissionListModel> permissions, CheckBoxListModel model) { model = model ?? new CheckBoxListModel(); model.List = permissions.Select(p => new CheckBoxModel { Id = p.ReferenceId.ToString(), Name = p.Description }).ToList(); // If a post back no need to look on DB if (model.PostedIds != null) { model.Selected = model.List.Where(l => model.PostedIds.Contains(l.Id)).ToList(); } else { model.Selected = permissions.Where(p => p.IsSelected).Select(p => new CheckBoxModel { Id = p.ReferenceId.ToString(), Name = p.Description }).ToList(); } model.PostedIds = (model == null) ? null : model.PostedIds; return(model); }