【JEECG技术博文】简单实例讲解JEECG ONLINE表单权限控制(jeecg3.6)

2023-11-18

简单实例讲解JEECGONLINE表单权限控制(jeecg3.6)

文:http://blog.itpub.net/30066956/viewspace-1872409/

相关博文:http://blog.itpub.net/30066956/viewspace-1868754/

者:许国杰

一、业务背景

某公司要实现一个日志系统,用来了解员工的工作量饱和情况。

二、需求

1、角色分为:员工、经理两种。

2、员工每天在日志系统中填报工作总结,然后经理进行点评。

3、表单内容包含:姓名、日期、工作总结、个人笔记、日志点评。

三、业务权限描述

1、员工可以进行日志填报、查看操作。(按钮控件权限)

2、经理可以进行日志点评、查看操作。(按钮控件权限)

3、个人笔记内容只对填报本人可见,经理不能看到个人笔记内容。(表单字段权限)

4、经理只可以编辑日志点评字段。(表单字段权限)

5、员工查询出的数据列表列为

姓名、日期、个人笔记、日志点评(数据列权限)

6、经理查询出的数据列表列为

姓名、日期、日志点评(数据列权限)

7、员工只可以看到自己填报的日志记录。(数据行权限)

四、开发过程

1、创建表单


2、编辑页面属性


3、同步数据库


4、功能测试查看列表及表单内容如下


5、使用自定义表单模板,改变页面样式

注意下图按钮文字


按需求我们需要两个功能日志填报,日志点评。那我们使用自定义表单样式,复制一个系统默认模板,把”录入”改为”日志填报”,”编辑”改为”日志点评”。把”批量删除”去掉。

Aonline开发—>online表单样式-à录入

注:上传模板格式要求使用zip压缩。压缩包中目录格式如下。页面模板放在html文件夹中。

B、新建一个文件夹t_buss_daily_log(自已定义),在其中建立csshtmlimagesjs目录(这四个目录必须一致)


C、找到系统中的autolist.ftl、jform.ftl两个模板文件,copyhtml目录下。Myeclipse中使用ctrl+shift+R输入文件名定位文件位置。


D、修改autolist.ftl。

1)把录入改为:日志填报、把编辑改为:日志点评。


修改后如下


2)修改弹出页面的窗口标题


修改后如下:


E、使用zip格式压缩,并上传


F、编辑表单、自定义表单风格选择刚刚新增的样式


G、测试修改前后比对

使用默认样式


使用自定义样式后如下,已经改成我们需要的样式了。


6、新建两个角色:员工、经理;新建三个用户:员工小A,员工小B,王经理。并分配对应的角色。


7、配置菜单




8、给员工与经理角色分配菜单


使用王经理登录,测试可以看到工作日志菜单了。但要求的权限还没有进行控制。

到此准备工作完成。下面进行权限控制。

五、权限配置

权限描述如下

1、员工仅可以进行日志填报、查看操作。

2、经理可以进行日志点评、查看操作。

配置日志点评按钮可见,并只对员工角色起作用。

A、在菜单管理中,为工作日志菜单加控件权限:显示日志填报、显示日志点评



注意,对于此处起的名称为:显示日志填报,这是因为对于按钮控制,当控件使用权限控制后,不勾选则代表不可见。勾选代码可见。

C、在角色管理中,员工角色使用显示日志填报、经理角色使用显示日志点评。


D、测试,可以发现使用员工A和王经理登录。



3、员工查询出的数据列表列为

姓名、日期、个人笔记、日志点评

经理查询出的数据列表列为

姓名、日期、日志点评(数据列权限)

配置个人笔记列隐藏,并对经理角色起作用。

A、在员工日志下新增控件权限。


B、对经理角色使用此权限

C、测试如下,王经理登录已经看不到个人笔记一列了

个人笔记隐藏对经理角色使用前

个人笔记隐藏对经理角色使用后:发现已经看不到”个人笔记”列了。


4、员工只可以看到自己填报的日志记录。(数据行权限)

配置datagrid操作createBy=#{sysUserCode}

A、新增访问类型的菜单。注意:一定要是访问类型。

路径格式为:cgAutoListController.do?datagrid&configId=t_buss_daily_log


B、对新加的访问类型菜单增加数据权限。



C、对员工角色使用此数据权限


D、分别使用员工A、员工B录入数据。测试每个人只可以看到自己录入的数据。

小A登录,只可以看到小A的数据。


小B登录,只可以看小B的数据。


王经理登录,可以看到小A与小B的数据。


5、个人笔记内容只对填报员工可见,经理不能看到个人笔记内容。(表单字段权限)

配置个人笔记表单字段不可见,并对经理角色起作用。

A、新增访问类型的菜单表单控件权限控制。注意:一定要是访问类型。

url格式为:cgFormBuildController.do?ftlForm&tableName=t_buss_daily_log


B、新增访问类型的菜单。注意:一定要是访问类型。


B、对新增加的菜单增加控制权限


B、对员工角色使用该权限控制。


C、测试一下,发现日志点评在日志填报页面已经没有了。


6、日志点评页面,经理只可以编辑日志点评字段,并且不可以看到个人笔记内容。

A、为表单控件权限控制菜单增加控件权限。日期禁用,工作日志禁用,个人笔记不可见。


B、并对经理角色使用这三个控件权限。


C、使用王经理登录进行日志点评。测试可以发现现在经理角色只可以编辑日志点评字段,并且个人笔记不可见。



完成

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【JEECG技术博文】简单实例讲解JEECG ONLINE表单权限控制(jeecg3.6) 的相关文章

  • 网课-cnn

    图像识别中遇到的问题可能有图片特征的纬度过高 1000 1000像素的图片 特征维度是1000 1000 3 如果你要输入3百万的数据量就意味着特征向量的维度高达三百万 也许有1000个隐藏单元 而所有的权值组成的矩阵W 1 如果使用标准的
  • git第一次配置ssh key,clone代码出错解决方法

    错误 The authenticity of host can t be established ED25519 key fingerprint is SHA256 k4ViHJBFryacGI BqHphyjDBaRLwt5eSGRMJG

随机推荐

  • vue table合并行 动态列名

    需求 1 合并行 相同数据合并 2 根据后端返回数据动态显示列名 我这个业务需求是 每年增加一列 也就是列名不是固定的 后端返回数据每年会多一条数据 根据返回数据显示列名 实现 html
  • 论文阅读 StyleCLIP:《StyleCLIP: Text-Driven Manipulation of StyleGAN Imagery》

    论文地址 https arxiv org pdf 2103 17249 pdf 文章目录 摘要 1 介绍 2 相关工作 2 1 视觉与语言 2 2 潜空间图像处理 3 StyleCLIP文本驱动操作 4 潜在优化 5 潜在映射 6 全局方向
  • 解密蓝牙mesh系列

    转载自 蓝牙技术联盟 蓝牙mesh网络 友谊篇 低功耗蓝牙 Bluetooth Low Energy 是全球最具节能性的短距离无线通信技术之一 其低功耗的特性广受开发者和消费者赞誉 随着蓝牙mesh网络的推出 开发者可能想知道蓝牙mesh网
  • Python3 如何优雅地使用正则表达式(详解五)

    非捕获组命名组 精心设计的正则表达式可能会划分很多组 这些组不仅可以匹配相关的子串 还能够对正则表达式本身进行分组和结构化 在复杂的正则表达式中 由于有太多的组 因此通过组的序号来跟踪和使用会变得困难 有两个新的功能可以帮你解决这个问题 非
  • 线性稳压器基础知识

    1 1 什么是线性稳压器 线性稳压器的工作原理是 采用一个压控电流源以强制在稳压器输出端上产生一个固定 电压 控制电路连续监视 检测 输出电压 并调节电流源 根据负载的需求 以把输 出电压保持在期望的数值 电流源的设计极限限定了稳压器在仍然
  • C++输入输出(一)

    C 并没有专门的输入输出函数 他们都存在于库中 如果要使用cout cin和getline 需要导入iostream库 如果要是用其他的输入输出方式 需要导入cstdio库 一 cout流输出 这个输出方式我们很早就学过了 他的使用方式如下
  • Home Assistant 南方电网 计算电费

    目录 1 China Southern Power Grid Statistics集成 2 获取当月用电情况 3 计算电费然后在UI上显示 3 效果 1 China Southern Power Grid Statistics集成 链接 2
  • ANSYS WORKBENCH 后处理 之 提取截面查看云图

    这是一个结果的云图 现在想要查看管道某横截面的云图 步骤1右键coordinate systems 创建一个坐标系步骤2更改新建坐标轴属性 步骤3新建一个surface 定义中选择刚才创建的坐标系步骤4右键solution 选择刚才创建的面
  • c++的char[]和char*的区别

    大家先来看这道测试题 char str1 abc char str2 abc const char str3 abc const char str4 abc const char str5 abc const char str6 abc c
  • docker命令自动补全

    很多命令都会提供一个bash complete的脚本 在执行该命令时 敲tab可以自动补全参数 会极大提高生产效率 docker亦如此 如 yum install docker后 会有一个文件 usr share bash completi
  • Linux搭建gitlab以及汉化

    注 请使用管理员权限的用户 执行如下操作 文章目录 GitLab搭建 一 安装并配置必要的依赖关系 1 安装ssh 3 启动SSH服务 4 安装防火墙 如果已经安装了防火墙并且已经在运行状态 则可直接进行第6步 5 开启防火墙 6 添加ht
  • 【OpenGL学习】Shader和Shader类的抽象

    Shader 本节学习OpenGL中Shader的使用并将其抽象为类 简要介绍OpenGL所使用的着色器语言GLSL 一 什么是Shader 参考维基百科中对Shader的定义 着色器 维基百科 自由的百科全书 wikipedia org
  • 【终极版】java连接oracle数据库三种方式(上篇)

    很多小伙伴都对java连接oracle数据库的操作弄的稀里糊涂 今天我就贴出终极版 一举解决所有的连接方式 上篇主要是解决利用驱动连接的方式 我是小順 请大家关注我 我会给大家发更多的工具 JAR包 import java sql Conn
  • Mac 电脑python 升级3.7版本

    转自 https www jianshu com p 5f55997ab719 官网下载python3 7 并且安装https www python org downloads mac osx 本人电脑有多个版本的python 为了体验新版
  • ffmpeg推流参考文章

    https www cnblogs com leisure chn p 10623968 html https www bilibili com read cv12294853 基于M3568平台移植nginx https z zlg cn
  • Docker笔记:基本概念、镜像、容器、仓库以及数据卷的使用

    什么是docker docker 是一个开源的应用容器引擎 可以使用docker将应用程序和依赖打包到一个镜像之中 可以非常方便的移植到其他机器上运行 使用docker构建打包我们的应用 build 之后可以像集装箱一样很方便的传输到别的机
  • 【Learning PGM in R】第一章 概率推理

    目录 1 1机器学习 1 1 1监督学习 1 1 2无监督学习和强化学习 1 2概率表示 1 2 1概率计算和随机变量 1 2 2条件概率 联合概率分布和边缘分布 1 3贝叶斯规则 1 4概率图模型基础 1 4 1概率图模型基础理论 1 4
  • 使用Kalman滤波器做目标跟踪

    https www mathworks com help vision examples using kalman filter for object tracking html 由该例整理而来 1 前言 2 介绍 3 目标跟踪的挑战 4
  • Vue2屎山代码大盘点

    前言 相比其他的框架来说 Vue中更容易产出屎山代码 因为Vue中的options就是一个大对象 导致js本身的很多检测都失效了 比如一个函数没有用到的话会 变灰 template中代码提示比较少 较多的mixins等等 遇到屎山代码 大多
  • 【JEECG技术博文】简单实例讲解JEECG ONLINE表单权限控制(jeecg3.6)

    简单实例讲解JEECGONLINE表单权限控制 jeecg3 6 原文 http blog itpub net 30066956 viewspace 1872409 相关博文 http blog itpub net 30066956 vie