public RoleMembershipViewModel( IViewModelDependencies appCtx, IZetboxContext dataCtx, ViewModel parent, RoleMembership roleMembership) : base(appCtx, dataCtx, parent, roleMembership) { _roleMembership = roleMembership; _roleMembership.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(_roleMembership_PropertyChanged); }
public RoleModel CreateRoleEntity(RoleMembership model) { RoleModel ety = new RoleModel() { RoleId = model.RoleId, RoleName = model.RoleName, Description = model.Description }; return(ety); }
public RoleMembership CreateRoleModel(RoleModel entity) { RoleMembership model = new RoleMembership() { RoleId = entity.RoleId, RoleName = entity.RoleName, Description = entity.Description }; return(model); }
/// <summary> /// This method configures the database model with EF Core's fluent API /// </summary> protected override void OnModelCreating(ModelBuilder builder) { base.OnModelCreating(builder); string tenantId = "TenantId"; // Measurement Units AddTenantId <MeasurementUnit>(builder); MeasurementUnit.OnModelCreating(builder); // Custodies AddTenantId <Custody>(builder); Custody.OnModelCreating(builder); // Agents : Custodies Agent.OnModelCreating_Agent(builder); // Roles AddTenantId <Role>(builder); Role.OnModelCreating(builder); // Views AddTenantId <View>(builder); View.OnModelCreating(builder); // Local Users AddTenantId <LocalUser>(builder); LocalUser.OnModelCreating(builder); // Role Memberships AddTenantId <RoleMembership>(builder); RoleMembership.OnModelCreating(builder); // Permissions AddTenantId <Permission>(builder); Permission.OnModelCreating(builder); // Settings AddTenantId <Settings>(builder, tenantId); Data.Model.Settings.OnModelCreating(builder); // Blobs AddTenantId <Blob>(builder, nameof(Blob.Id), tenantId); Blob.OnModelCreating(builder); // EF migratios was confused about these for some reason, had to set them manually builder.Entity <Dto.AgentForQuery>().HasOne(e => e.CreatedBy).WithMany().HasForeignKey(e => e.CreatedById); builder.Entity <Dto.AgentForQuery>().HasOne(e => e.ModifiedBy).WithMany().HasForeignKey(e => e.ModifiedById); builder.Entity <Dto.LocalUserForQuery>().HasOne(e => e.Agent).WithMany().HasForeignKey(e => e.AgentId); builder.Entity <Dto.RoleMembershipForQuery>().HasOne(e => e.User).WithMany(e => e.Roles).HasForeignKey(e => e.UserId); builder.Entity <Dto.RoleMembershipForQuery>().HasOne(e => e.CreatedBy).WithMany().HasForeignKey(e => e.CreatedById); builder.Entity <Dto.RoleMembershipForQuery>().HasOne(e => e.ModifiedBy).WithMany().HasForeignKey(e => e.ModifiedById); }
public void AddUserToRole(User user, int roleId) { var role = Context.Roles.Where(r => r.Id == roleId).FirstOrDefault(); if (role != null) { RoleMembership m = new RoleMembership(); m.User = user; m.Role = role; Context.RoleMemberships.Add(m); } }
public void AddRoleToUser(Role role, int userId) { var user = Context.Users.Where(u => u.Id == userId).FirstOrDefault(); if (user != null) { RoleMembership m = new RoleMembership(); m.User = user; m.Role = role; Context.RoleMemberships.Add(m); } }
/// <summary> /// This method configures the database model with EF Core's fluent API /// </summary> protected override void OnModelCreating(ModelBuilder builder) { base.OnModelCreating(builder); string tenantId = "TenantId"; // Measurement Units AddTenantId <MeasurementUnit>(builder); MeasurementUnit.OnModelCreating(builder); // Custodies AddTenantId <Custody>(builder); Custody.OnModelCreating(builder); // Agents : Custodies Agent.OnModelCreating_Agent(builder); // Roles AddTenantId <Role>(builder); Role.OnModelCreating(builder); // Views AddTenantId <View>(builder); View.OnModelCreating(builder); // Local Users AddTenantId <LocalUser>(builder); LocalUser.OnModelCreating(builder); // Role Memberships AddTenantId <RoleMembership>(builder); RoleMembership.OnModelCreating(builder); // Permissions AddTenantId <Permission>(builder); Permission.OnModelCreating(builder); // Settings AddTenantId <Settings>(builder, tenantId); Data.Model.Settings.OnModelCreating(builder); // Blobs AddTenantId <Blob>(builder, nameof(Blob.Id), tenantId); Blob.OnModelCreating(builder); }
/// <summary> /// Gets the menu for user. /// </summary> /// <param name="userId">Name of the user.</param> /// <param name="userCulture">The user culture.</param> /// <returns>MenuContainer.</returns> public MenuContainer GetMenuForUser(string userId, string userCulture = null) { if (String.IsNullOrWhiteSpace(userCulture)) { userCulture = "en-US"; } // first, get all te roles where this user belongs to var lnk = new RoleMembership() { SourceId = userId }; var roleMemberships = EcoSpacePortal .EcoSpace .GetRoleMemberships(userId); var men = RoleMenuLinks.GetMenu(roleMemberships, userCulture); return(Menu.Filter(men)); }
/// <summary> /// Assigns/unassigns security role memebership /// </summary> /// <param name="memberShip"></param> public void EnsureSystemUserRoleMembership(RoleMembership memberShip) { string query = $@"<fetch> <entity name='systemuserroles' > <attribute name='systemuserroleid' /> <filter> <condition attribute='roleid' operator='eq' value='{ memberShip.Role.Id }' /> <condition attribute='systemuserid' operator='eq' value='{ memberShip.User.Id }' /> </filter> </entity> </fetch>"; Guid membershipFromCrm = Helper.FetchRecord(_organizationService, query, "systemuserroleid"); if (memberShip.Assign) { if (membershipFromCrm == Guid.Empty) { _organizationService.Associate("systemuser", memberShip.User.Id, new Relationship("systemuserroles_association"), new EntityReferenceCollection() { new EntityReference("role", memberShip.Role.Id) }); } } else { if (membershipFromCrm != Guid.Empty) { _organizationService.Disassociate("systemuser", memberShip.User.Id, new Relationship("systemuserroles_association"), new EntityReferenceCollection() { new EntityReference("role", memberShip.Role.Id) }); } } }
public static void postSet_Relations(RoleMembership obj) { obj.Recalculate("Description"); }