• Stars
    star
    295
  • Rank 140,902 (Top 3 %)
  • Language
    JavaScript
  • License
    Apache License 2.0
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

netcore+vue mvc role management 快速开发系统(菜单,角色,权限[精确到按钮])

AntMgr

基于netcore2.0 mvc 开发的 快速搭建具有如下特色的后台管理系统 最新版已升级到net6.0

特色:

  1. 用户管理
  2. 菜单管理
  3. 角色管理
  4. 权限管理[精确到按钮])
  5. 代码生成器(一键生成CRUD前后端代码 增+删+改+查【分页】导入+导出)
  6. SQL工具(智能字段提示)
  7. 约定大于配置,开发简单效率高,权限配置友好不复杂
  8. 支持mysql和sqlserver两种数据库。切换数据库不用改任何代码

角色支持遗传,比如 :共有ABCD四个功能权限,分配了 A B 2个权限给 超级管理员角色的用户,支持让超级管理员用户还能自己创建角色。但是只能选择 A B 2个。无法看到 C D!

遇到问题可有加群咨询

image

如何使用 wiki:https://github.com/yuzd/AntMgr/wiki

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

项目结构如下:

image image

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

  • mysql数据库的初始化脚本
  • sqlserver数据库的初始化脚本(我测试用的是2012)

image

以下教程采用的是mysql数据库,如果您是用MSSQL的话请看wiki里面有专门介绍注意点。

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

  1. system_users 系统用户表
  2. system_menu 系统菜单表
  3. system_role 系统角色表
  4. system_page_action 按钮权限表

image

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

image

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

image

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

登录成功如下图:

首页

image

菜单管理

image

权限管理

image

角色管理

image image

系统用户

image

代码自动生成

image image

SQL工具(智能字段提示,写sql再也不用担心忘记字段名称了)

image

权限如何设计的

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

约定>配置 权限设计其实很简单

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

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

约定一

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

约定二

在页面里面写需要权限控制的按钮的时候

<button type="button" class="authorization" action-id="role-add" action-name="新增角色" style="display: none" >新增角色</button>

标签名称 含义
action-id 表示这个权限按钮的id 在当前view唯一
action-name 权限按钮的作用描述
display 默认使用 none 隐藏
class 必须有 authorization

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

  1. 在菜单管理加入新增的页面
  2. 在权限管理配置功能按钮对应用到的接口
  3. 在角色管理修改对应的角色

其他说明

后台用到了的Orm框架:

https://github.com/yuzd/AntData.ORM

配合ORM框架的vs一键生成dbmodel 插件 wiki有插件使用教程

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

配合ORM框架的rider一键生成dbmodel 插件 wiki有插件使用教程

https://plugins.jetbrains.com/plugin/14033

WIKI有更详细的教程

https://github.com/yuzd/AntMgr/wiki

More Repositories

1

AntDeploy

Tools to deploy applications to remote server(iis,windowsService,linuxService,docker) support netframework and dotnetcore,support rollback and increment deploy
C#
877
star
2

Hangfire.HttpJob

httpjob for Hangfire,restful api for Hangfire,job调度与业务分离
C#
566
star
3

AntData.ORM

特色:vs插件或者t4一键生成entity 支持配置非物理外键。分离linq转sql引擎(原生linq非扩展)和执行dal功能,支持异步,支持netcore2.0
C#
434
star
4

AntDeployAgent

Tools to deploy applications to remote server(iis,windowsService,docker) support netframwork and dotnetcore,support rollback and increment deploy
340
star
5

coding.net

coding.net project webhook plugin for jenkins
Java
219
star
6

Hangfire.Core.Extend

在1.6.5基础上给dashbord增加了搜索功能,增加在dashbord上手动添加job,提供对外SDK添加job
C#
208
star
7

Autofac.Annotation

DI容器,依赖注入,AOP,动态代理等用注解来load autofac 摆脱代码或者xml配置和java的spring的注解注入一样的体验
C#
194
star
8

Swashbuckle

Swashbuckle自定义修改 汉化 使用jsonedior schema校验
JavaScript
194
star
9

DingtalkChatbotSdk

钉钉群机器人(.net跨平台)
C#
185
star
10

swagger2pdf

ant soa框架的swagger api文档生成(html or pdf)
JavaScript
185
star
11

OwinDog

Owin Web Server(base on libuv) for asp.net or netcore
C#
121
star
12

microsoft_ai

人工智能实战微信小程序demo
JavaScript
114
star
13

HttpClientFactory

safe HttpClient For netcore And netframework
C#
71
star
14

wechatmac

微信mac协议机器人
Objective-C
69
star
15

Hangfire.Dashboard.BasicAuthorization

Hangfire.Dashboard.BasicAuthorization for .netcore
C#
44
star
16

CanalSync

canal middleware for netcore
C#
22
star
17

Spa

单页面应用容器,netcore前后端分离,前端快速部署&回滚,会js就能写服务端脚本方案,用spa前端容器会js就是可以无所不能
JavaScript
21
star
18

ktormgen

dbmodels code gen for ktorm
Kotlin
17
star
19

maui_chatgpt

maui study
C#
17
star
20

ja3-csharp

tls指纹http2指纹获取中间件(反爬虫) https://kawayiyi.com/tls
C#
15
star
21

WindowsExplorerExtensions

动态配置右键菜单
C#
11
star
22

OpenQA.Selenium.Chrome.Fiddler

Extensions for ChromeOptions (Selenium Driver)支持配置拦截或转发指定请求(正则)
C#
10
star
23

AppendFileVersion

VSIX 统一修改 html or cshtml 中的 css标签和script标签添加统一版本号 来防止缓存
C#
9
star
24

Exporter

export csv/json/list/datatable to excel
C#
8
star
25

Spring.EL

Spring.EL on csharp
C#
7
star
26

jib

Build container images for your any applications.
6
star
27

Hangfire.Mysql.Extend

配合修改增加dashbord的搜索功能并修改了配合使用hangfire.console的Bug
C#
6
star
28

FastExpressionEngine

字符串解析表达式引擎
C#
4
star
29

ace_clickhouse

ace editor for clickhouse with autocomplete
JavaScript
3
star
30

yuzd

my
3
star
31

protocodegen

proto3 codegen plugin for idea
Kotlin
2
star
32

asyncawait_helper

project for convert async await by csharp nomarl code
C#
1
star
33

springboot_staticmock

Java
1
star
34

Ant.soa

ant soa framework
1
star
35

Autofac.Configuration.Core

Autofac.Configuration.Core With Interceptors
C#
1
star