Foxtable(狐表)用户栏目项目发布 → 少量代码,实现简单用户管理和权限管理(2013.1.21小更新)


  共有36982人关注过本帖树形打印复制链接

主题:少量代码,实现简单用户管理和权限管理(2013.1.21小更新)

帅哥哟,离线,有人找我吗?
lin_hailun
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
少量代码,实现简单用户管理和权限管理(2013.1.21小更新)  发帖心情 Post By:2012/9/25 17:51:00 [只看该作者]

 
 今天上班比较有空,就用狐表做了个简单的用户授权管理,发觉还挺实用,就分享一下。

 喜欢的朋友,若不想重造轮子,可以拿来自由扩展!不涉及版权!图片点击可在新窗口打开查看

 用户名:admin   密码:admin

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:权限管理_小例.table


-------------------

注意,本小例于2013.1.21小更新,希望可以填补之前的缺陷。
[此贴子已经被作者于2013-1-21 18:30:19编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/25 17:56:00 [只看该作者]

 up,自己顶顶,留着以后快速构建系统。

 回到顶部
帅哥哟,离线,有人找我吗?
wki
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:3 积分:87 威望:0 精华:0 注册:2012/9/27 10:35:00
  发帖心情 Post By:2012/9/27 11:58:00 [只看该作者]

顶,参观学习一下

 回到顶部
帅哥哟,离线,有人找我吗?
shenyl0211
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:977 积分:6835 威望:0 精华:0 注册:2012/4/2 21:49:00
  发帖心情 Post By:2012/9/28 21:38:00 [只看该作者]

顶一下。

个人认为:

1、同步表列的代码可以放在MainTableChanged事件中,点击表名“表列”,即可自动完成。

2、状态列就没意义了,不需要的删除就行。对于用户,可以删除,或给个最小的权限;对于角色,数量有限,随时可改,不启用自然没有对应角色的用户。

3、下列语句带X的行应该删除,和帮助文件的例子一样。否则,如果true就没法改false了。

4、下列语句前应该增加与帮助文件一样的全部表和列都可见和可编辑的语句。道理同上。

5、下列语句应该放在登录窗口中,否则,切换用户必须改为重新打开项目,但这显然是很浪费时间的。

6、权限表中角色名应为多值字段,这样可以减少很多行,于是in应该改为like,外套一个for循环,其它代码作相应的调整。

For Each dr As DataRow In drs
    If dr.IsNull("列名") Then
   X     If Tables(dr("表名")).Visible = False Then
            Tables(dr("表名")).Visible = dr("可见")
   X     End If
   X     If Tables(dr("表名")).AllowEdit = False Then
            Tables(dr("表名")).AllowEdit = dr("可编辑")
   X     End If
    Else
   X     If Tables(dr("表名")).Cols(dr("列名")).Visible = False Then
            Tables(dr("表名")).Cols(dr("列名")).Visible = dr("可见")
   X     End If
   X     If Tables(dr("表名")).Cols(dr("列名")).AllowEdit = False Then
            Tables(dr("表名")).Cols(dr("列名")).AllowEdit  = dr("可编辑")
   X     End If
    End If
Next

 

[此贴子已经被作者于2012-9-29 15:53:34编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/3 12:36:00 [只看该作者]

 呵呵,谢谢楼上的指导。

第一个问题,这个建议不错。

第二个问题,状态列确实没有太大的用处……

第三个问题,之所以这样写,是为了权限的最大化,免得后面的false影响到前面的true,因为存在有多个权限的人,而权限的设置有可能不同。

第四个问题,全部表列可见可编辑,可以给用户添加所有的角色。显然你的做法更合理。

第五个问题,说得实在。

第六个问题,说得也对!这个建议很好。

 楼上高手,受教了……


[此贴子已经被作者于2012-10-3 12:41:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
shenyl0211
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:977 积分:6835 威望:0 精华:0 注册:2012/4/2 21:49:00
  发帖心情 Post By:2012/10/6 11:21:00 [只看该作者]

楼主客气了,正是因为您的启发,再研究您和帮助文档的代码,让我极大地改进了我自己开发的项目,仅仅增加两张简单的表(角色表为字典表中的一列,新增的表列表一点也不用管理,新增的权限表简单明了),不仅减少了大量难以理清、修改费时、容易出错和遗漏的条件代码,还便于管理者以后简单、动态地管理用户的权限,理论上无需修改代码。现在,只需在长文本编辑(权限管理无法控制...按钮,这是狐表需要完善的地方)和密码管理等方面补充简单的权限管理代码。

 回到顶部
帅哥哟,离线,有人找我吗?
sunbrain
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:383 积分:2439 威望:0 精华:0 注册:2011/12/3 22:19:00
  发帖心情 Post By:2012/10/22 23:41:00 [只看该作者]

以下是引用lin_hailun在2012-9-25 17:56:00的发言:
 up,自己顶顶,留着以后快速构建系统。

老师您好,我下载的这个部分权限不起作用,不知道是不是您的代码有问题,还是其他原因,用普通用户user2登录,权限里明明设置的只可见,不可编辑,但是进入后仍然可以编辑,还不是很懂,特意向您请教一下


 回到顶部
帅哥哟,离线,有人找我吗?
zerov
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
  发帖心情 Post By:2012/12/4 15:25:00 [只看该作者]

楼主不知更新了没?

 回到顶部
帅哥哟,离线,有人找我吗?
hanxuntx
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2609 积分:16926 威望:0 精华:11 注册:2011/9/20 16:13:00
  发帖心情 Post By:2012/12/4 15:58:00 [只看该作者]

谢谢下载学习

 回到顶部
帅哥哟,离线,有人找我吗?
1350734981
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:3 积分:87 威望:0 精华:0 注册:2012/12/4 16:42:00
  发帖心情 Post By:2012/12/4 16:46:00 [只看该作者]

先收下學習,非常感謝


 回到顶部
总数 57 1 2 3 4 5 6 下一页