模块管理常规功能自己定义系统的设计与实现(31–第三阶段 权限设计[1])

模块管理常规功能自己定义系统的设计与实现(31–第三阶段 权限设计[1])

大家好,又见面了,我是全栈君。

系统的各种权限设计(1)

视频解说在线观看:视频解说链接
 http://i.youku.com/jfok1972


       本系统的如今已能够设计的权限一共同拥有四种类型。

        1、模块的操作权限:包含可浏览,增改删,附件的CRUD操作,审核。审批,附加功能的操作(这个前面忘了介绍了,在以下会介绍一下)。

        2、模块记录的可视权限:通俗的讲,就是哪些记录你能看,哪些记录你不能看。

        3、字段的仅仅读权限:对于具有可新增和可改动权限的人。进一步限制哪些字段是仅仅读的。

        4、字段的可视权限:哪些字段你不能看到。


        以上4种权限也都是在前台系统里直接配置就可以生效。

以下来分别简介一下各个权限设计和实现过程。


一、模块的操作权限:在前面的模块设计过程中已经有了此权限的介绍。一个模块增加系统后,须要在角色中设置此模块的权限。包含:可浏览、可新增、可改动、可删除、附加浏览、附件新增、附件改动、附件删除、可审核、可审批、可直接改动,另外还包含了每个附加功能的可运行权限。

下面即为还有一系统的一个权限设置界面:

模块管理常规功能自己定义系统的设计与实现(31--第三阶段 权限设计[1])


可浏览假设没有选中。表示该操作员不能查看此模块。

反应在前台就是在菜单项里没有该模块的菜单。

可新增。可改动,可删除等表示为模块的toolbar中有对应的button。附件操作的权限也是每一个模块单独设置的,能够让不同人去分别管理不同模块的附件。以下来看看截图:

模块管理常规功能自己定义系统的设计与实现(31--第三阶段 权限设计[1])


以下来看看附加功能是怎样加进去的。在系统的管理模块中,有一个模块附加功能的管理模块。该模块定义了全部的系统中使用到的附加功能,包含系统模块使用到的。

前面看见过一个就是“模块”管理中的“导入模块”这个button。就是一个附加功能。

有的附加功能还能够创建一个窗体进行操作后再进行提交数据。就象前面介绍的对模块设置“附加字段”的功能。


模块管理常规功能自己定义系统的设计与实现(31--第三阶段 权限设计[1])

       

每一个模块功能的字段包含:

        

模块管理常规功能自己定义系统的设计与实现(31--第三阶段 权限设计[1])


对于上图中合同付款计划的8个附加功能,来看看放在什么地方:


模块管理常规功能自己定义系统的设计与实现(31--第三阶段 权限设计[1])


对于附加权限的运行,是一定要手工编码的了,通常是发送一个ajax请求到server端去处理,前台会由extjs mvc来捕获菜单点击事件来运行。比如对于“自己主动计划”这个附加功能。将会运行以下的js代码:

	AgreementPlanAutoCreate : function(agreementId, grid) {
		Ext.Ajax.request({
					url : 'agreementplan/autocreate.do',
					params : {
						agreementId : agreementId
					},
					success : function(response) {
						var message = Ext.decode(response.responseText);
						if (message.success == false)
							Jfok.system.warnInfo(message.msg);
						else
							Jfok.system.smileInfo('此合同的付款计划已自己主动生成!');
						grid.store.reload();
					},
					failure : function(response) {
						window.alert('又一次生成合同付款计划失败!');
					}
				})

	}

后台会由spring mvc来处理这个请求,完毕对应的操作,并返回操作结果。

	/**
	 * 自己主动建立合同付款计划
	 * @param agreementId  当前选中合同的id号
	 * @param request
	 * @return
	 */
	@RequestMapping("/autocreate.do")
	public @ResponseBody
	ActionResult AutoCreate(String agreementId, HttpServletRequest request) {
		ActionResult result = new ActionResult();
		String r = agreementPlanService.AutoCreateAgreementPlan(Integer.parseInt(agreementId), request);
		if (r == null)
			;
		else {
			result.setSuccess(false);
			result.setMsg(r);
		}
		return result;
	}

}

对于模块审批权限的各级部门和审批人员的定义,样例模块中没实用到,不作介绍了。


这样的权限的设置是全部系统都会有的。设计的方法也有多种,仅仅要能完毕功能就能够了。




版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116122.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月25日 下午8:00
下一篇 2022年1月25日 下午8:00


相关推荐

  • 浅谈MFCC

    MFCC(Mel-frequencycepstralcoefficients):梅尔频率倒谱系数。梅尔频率是基于人耳听觉特性提出来的,它与Hz频率成非线性对应关系。梅尔频率倒谱系数(MFCC)则是利用它们之间的这种关系,计算得到的Hz频谱特征。主要用于语音数据特征提取和降低运算维度。例如:对于一帧有512维(采样点)数据,经过MFCC后可以提取出最重要的40维(一般而言)数据同时也达到了将维

    2022年4月4日
    262
  • java bean的作用_java bean的作用是什么[通俗易懂]

    java bean的作用_java bean的作用是什么[通俗易懂]JavaBean是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,set和get方法获取。众所周知,属性名称符合这种模式,其他Java类可以通过自省机制(反射机制)发现和操作这些JavaBean的属性。javabean的作用JavaBean的一些具体的主要设计…

    2022年7月7日
    31
  • 程序员垃圾简历长什么样?

    程序员垃圾简历长什么样?已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份这篇文章会用实例告诉你,什么是差的程序员简历!疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》一石激起千层浪,三天收到两百多封简历。花光了两个星期的所有空闲时…

    2022年5月21日
    42
  • 比 file_get_contents() 更优的 cURL 详解(附实例)「建议收藏」

    比 file_get_contents() 更优的 cURL 详解(附实例)

    2022年2月9日
    54
  • Python中三维数组位置详解

    Python中三维数组位置详解图示效果图 nbsp nbsp 直接贴代码 deftest3D nbsp nbsp importnumpya nbsp nbsp data array np zeros 3 5 6 dtype np int nbsp nbsp data array 1 2 2 1 nbsp nbsp nbsp print data array nbsp nbsp 介绍 通过 np zeros 创建一个 3 行 5 列 6 个通道的三维数组 并给第二

    2026年3月16日
    2
  • 嗅探工具 — wireshark、tcpdump、dsniff、ettercap、bettercap、netsniff-ng、cain

    嗅探工具 — wireshark、tcpdump、dsniff、ettercap、bettercap、netsniff-ng、cain嗅探 wireshark tcpdump dsniff Ettercap netsniff ng

    2026年3月18日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号