jxTMS设计思想之入口

jxTMS是以低成本快速定制为核心诉求的、SaaS模式的二次开发平台,详见:jxTMS简介。本文是讲述jxTMS平台中入口部分是如何设计的,整个系列请访问:jxTMS设计思想

入口是jxTMS中的五个基本定制内容之一,从本质上来说,入口就是一个json描述,web界面用之生成一个按钮、工具条、快捷栏项等可点击动作部件。当用户点击后,前端用这些json中的信息向jxTMS发出一个请求,可以打开一个界面或触发一个动作事件。

入口主要有两种定义方式:

  • 在op.py中以回调函数的方式进行定义,这主要是快捷栏、菜单、主界面工具条栏中的工具条的定义

  • 在web界面中作为控件定义,这主要是用户界面中的按钮、工具条的定义

依据jxTMS的基本理念:尽可能的静态定义、尽量少的动态编程。但为什么主要的入口会在op.py中以回调函数的编程方式进行定义,而不是在op文件中用文本进行定义呢?!

这主要是jxTMS中的capa既有java编写的也有python编写的,而且一开始的、用于组织管理的如人员管理、角色管理等基本的几个capa都是java编写的,而这些java编写的capa除了web界面其它部件都是用java实现的。所以入口就采用了编程的方式来设置,等后期逐步将数据类、数据源都改为文本定义后,由于入口定义的太多,也非常简单,所以就没有改为文本定义了。

入口主要有四种:

  • 菜单项

  • 快捷栏

  • 主界面中动态在工具条栏中添加的工具条

  • web界面中静态定义的按钮或工具条

其中前三者都定义在op.py中,后者为便利考虑,直接以控件形式定义在web界面中。

一个入口就代表着一个功能,或是显示一个操作界面向用户显示业务信息,或是执行一个用户指定的操作。

那么,功能就存在权限问题,即当前用户是否有足够的权力来访问该功能。在jxTMS中,用户能否访问某个功能包括两个层面:

1、是否有权力访问

这需要解决的职权问题。即当前用户从组织的职务、职权方面来看,其是否有执行该功能的权力。

在jxTMS中,这主要是通过角色指定来完成。

2、在当前状态下,是否可以访问

这需要解决的是业务匹配问题。如任务管理都必须有【终止任务】的功能,但一个任务如果已经被终止了,那显然是不需要也不应该被再次终止的。

在jxTMS中,这主要是通过业务状态检查来实现的。

请参考:jxTMS在线编程手册之工具条的动态显示规则语法

注:只有op.py中定义的入口才可以设置角色;只有动态显示于工具条栏中的工具条才需要设置业务状态检查

目前jxTMS已经开放个人注册试用,欢迎大家注册试用:

注册到jxTMS

下面的系列文章讲述了如何用jxTMS开发一个实用的业务功能:

如何用jxTMS开发一个功能

下面的系列文章讲述了jxTMS的一些基本功能:

jxTMS的HelloWorld

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值