Jeecg框架的权限处理(后端、前端)

后端处理

比如要增加审核、重置审核动作,要求有授权才能执行

1、建立权限标识并给角色授权

在这里插入图片描述
给admin授权
在这里插入图片描述

2、后端业务编辑

需要加上@RequiresPermissions进行鉴权

@RequiresPermissions("smp:appr")
	 @PostMapping(value = "/resetAppr")
	 @ApiOperation("重置版单状态")
	 public Result<Boolean> resetAppr(@RequestBody SmpOrderMain smpOrderMain) {
			smpOrderMainService.resetAppr(smpOrderMain.getId());
			return Result.ok("重置成功");
	 }
	 @RequiresPermissions("smp:appr")
	 @PostMapping(value = "/appr")
	 @ApiOperation("审批版单")
	 public Result<Boolean> appr(@RequestBody SmpOrderMain smpOrderMain) {
		 smpOrderMainService.appr(smpOrderMain.getId());
		 return Result.ok("审批成功");
	 }
	...

前端处理

1、根据授权及记录状态显示相关菜单

v-has判断是否有授权
v-if 满足条件才渲染

              <a-menu-item v-has="'smp:appr'" v-if="record.approved==2" >
                <a-popconfirm title="确定审核吗?" @confirm="()=>handleAppr(record)">
                    <a>审批</a>
                </a-popconfirm>
              </a-menu-item>

因为v-if是有渲染或没渲染,有时候需要用显示、不显示(主要是要保证位置不要变),则需要用到style动态控制 :

<a @click="handleEdit(record)" v-bind:style="{visibility:record.approved==1?'hidden':'visible'}">编辑</a>

另外要在methods加上审核调用:

handleAppr(record){
        let that=this
        postAction("/smp/smpOrderMain/appr", {id: record.id}).then((res) => {
          if (res.success) {
            that.$message.success(res.message)
            that.loadData()
            that.onClearSelected()
          } else {
            that.$message.error(res.message)
          }
        })
      },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值