AntMgr https://github.com/yuzd/AntMgr <https://github.com/yuzd/AntMgr>

基于netcore2.0 mvc 开发的 快速搭建具有如下特色的后台管理系统

特色:

* 用户管理
* 菜单管理
* 角色管理
* 权限管理[精确到按钮])
* 代码生成器
如何使用

代码克隆到本地 用vs2017或以上版本 打开工程。

项目结构如下:



找到DbModel下面的初始化db脚本



里面包含4张表的schema和初始化数据,你可以新建一个db,也可以导入到你现有的db

* system_users 系统用户表
* system_menu 系统菜单表
* system_role 系统角色表
* system_page_action 按钮权限表


导入db成功后在项目配置文件里面修改成正确的db链接字符串



F5启动应用 会进入登录页面



如果是按照上面初始化db脚本的话 初始化的登录名 zdyu 密码 123456

登录成功如下图:

首页



菜单管理



权限管理



角色管理



系统用户



代码自动生成



权限如何设计的

* 一个菜单(system_menu)对应一个view页面【1:1】
* 一个用户(system_user)只能有一个角色(system_role)【1:1】
* 一个角色(system_role)可以配置多个菜单权限(view页面) 和view页面里面的功能模块(ru按钮) 【1:N】
* 每个菜单(view页面)下的功能模块(如按钮)配置实际该功能用到的接口【1:N】
约定>配置 权限设计其实很简单

权限主要拦截器代码实现在:

用户登录态是记录在cookie的 默认的keyName:cbeid 可以在这个里面更改

约定一

具有权限拦截的Controller类上面统一打上[API("controller作用描述")] 方法上面打上 [API("方法作用描述")]





 

约定二

在页面里面写需要权限控制的按钮的时候
<button type="button" action-id="role-add" action-name="新增角色" style="display:
none" >新增角色</button>
标签名称含义
action-id 表示这个权限按钮的id 在当前view唯一
action-name 权限按钮的作用描述
display 默认使用 none 隐藏
有了这个标签 在配置权限的时候会解析页面自动拿到需要权限拦截的功能按钮!

只要遵守如上2个约定开发好页面和controller后,按照如下步骤进行配置权限

* 在菜单管理加入新增的页面
* 在权限管理配置功能按钮对应用到的接口
* 在角色管理修改对应的角色
使用本后台的前提条件

* 你有过开发mvc系统的经验 最起码你得知道controller view Filter 是什么东西。
* 有用过orm的经验,比如EF之类的。 (虽然本后台用的是AntData这个ORM框架,但是该ORM使用上采用的是原生Linq To
SQL的模式和EF差不多,但是比EF轻量级)https://github.com/yuzd/AntData.ORM
<https://github.com/yuzd/AntData.ORM>
* 有用过Autofac这款DI容器, https://github.com/autofac/Autofac
<https://github.com/autofac/Autofac>
 Autofac.Annotation是我针对Autofc写一个开源扩展,目的是能够像java的Spring框架一样,用标签来控制注入,
摆脱写把很多注入配置代码 https://github.com/yuzd/Autofac.Annotation
<https://github.com/yuzd/Autofac.Annotation>
* 有用过AutoMapper这个组件,没有的话 稍微看下官方文档就好了 https://github.com/AutoMapper/AutoMapper
<https://github.com/AutoMapper/AutoMapper>
* 前端采用的是VUE,所以你得会用vue。

<https://github.com/yuzd/AntMgr/wiki#%E4%BD%BF%E7%94%A8%E6%9C%AC%E5%90%8E%E5%8F%B0%E8%83%BD%E8%BE%BE%E5%88%B0%E4%BB%80%E4%B9%88%E6%95%88%E6%9E%9C>
使用本后台能达到什么效果

* 开发的页面具体完全的权限拦截功能,不需要复杂的配置按照约定的2点,就可以让开发出来的页面 完全实现某个角色
支持配置你想让它有哪些菜单,页面展示哪些按钮。
* 掌握基于最新的netcore技术
* 对于一个表的CRUD用代码自动生成功能后稍微加点业务逻辑代码,5分钟内可以开发完成

<https://github.com/yuzd/AntMgr/wiki#%E6%88%91%E7%9A%84%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83>
我的开发环境

*
vs 2017 或以上版本

*
安装了配合ORM框架的vs一键生成dbmodel 插件:

https://marketplace.visualstudio.com/items?itemName=nainaigu.AntDataVS
<https://marketplace.visualstudio.com/items?itemName=nainaigu.AntDataVS>

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信