权限管理----模块与页面关系
把控制的页面分类,即以模块来分类,如同角色所拥有页面一样,最终我们只为用户分配某一模块,来控制到用户只能访问相关的页面。
asp.net前端介面:
在数据库,表[ModulePages]结构如下,代码参考角色与页面关系表结构一样:
实现为模块分配页面的事件,还得写分配事件的存储过程:
代码
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[usp_ModulePages_AssignPagesAction]
(
@ModuleId smallint,
@PagesId int,
@IsEnable bit
)
AS
BEGIN TRANSACTION
DECLARE @err int
IF (SELECT count(*) FROM [ModulePages] WHERE [ModuleId] = @ModuleId AND [PagesId] = @PagesId )>0
BEGIN
UPDATE [ModulePages] SET [IsEnable]=@IsEnable WHERE [ModuleId] = @ModuleId AND [PagesId] = @PagesId
SET @err=@@ERROR
IF @err<>0
ROLLBACK TRANSACTION
END
ELSE
BEGIN
INSERT INTO [ModulePages] ([ModuleId],[PagesId] ,[IsEnable] ) VALUES (@ModuleId ,@PagesId ,@IsEnable)
SET @err=@@ERROR
IF @err<>0
ROLLBACK TRANSACTION
END
COMMIT TRANSACTION
GO
共同学习,写下你的评论
评论加载中...
作者其他优质文章