增加菜单项与验证
parent
3b0763eec7
commit
944b273bbb
226
README.md
226
README.md
|
@ -1,5 +1,5 @@
|
|||
# goweb-gin-demo
|
||||
go web脚手架
|
||||
go web脚手架, [数据库及表结构](./resource/sql/weekly_report.sql)
|
||||
|
||||
# [web框架gin](https://gin-gonic.com/zh-cn/docs/introduction/)
|
||||
## 特性
|
||||
|
@ -75,6 +75,7 @@ func main() {
|
|||
|
||||
# 通过Swagger测试接口
|
||||
[官方地址](https://github.com/swaggo) ,其中包含`swag`可执行程序和`gin-swagger`go web模块, [使用手册](https://github.com/swaggo/gin-swagger)
|
||||
查看地址为: **http://IP:8888/swagger/index.html**
|
||||
|
||||
```
|
||||
// @BasePath /api/v1
|
||||
|
@ -200,6 +201,18 @@ docs/
|
|||
}
|
||||
```
|
||||
|
||||
jwt token
|
||||
<br>
|
||||
<div align=center>
|
||||
<img src="./resource/md_res/jwt.png" width="60%" height="60%" title="JWT Token"></img>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
**用户-角色权限-菜单项|API|资源对应关系图**
|
||||
<br>
|
||||
|
||||

|
||||
|
||||
|
||||
# 获取菜单项
|
||||
api接口`/api/menu/getMenu`
|
||||
|
@ -235,11 +248,6 @@ x-user-id: 1
|
|||
+---------------------+---------------------+------------+--------------+----------------+-----------+----------------+
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
返回数据样本
|
||||
```
|
||||
{
|
||||
|
@ -248,67 +256,212 @@ x-user-id: 1
|
|||
"menus":[
|
||||
{
|
||||
"ID":1,
|
||||
"CreatedAt":"2021-10-25T14:53:31Z",
|
||||
"UpdatedAt":"2021-10-25T14:53:31Z",
|
||||
"CreatedAt":"2021-11-01T11:14:12Z",
|
||||
"UpdatedAt":"2021-11-01T11:14:14Z",
|
||||
"parentId":"0",
|
||||
"path":"dashboard",
|
||||
"name":"dashboard",
|
||||
"path":"",
|
||||
"name":"周报",
|
||||
"hidden":false,
|
||||
"component":"view/dashboard/index.vue",
|
||||
"component":"",
|
||||
"sort":1,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"仪表盘",
|
||||
"icon":"setting",
|
||||
"title":"周报",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"1",
|
||||
"children":null,
|
||||
"children":[
|
||||
{
|
||||
"ID":2,
|
||||
"CreatedAt":"2021-11-01T11:16:40Z",
|
||||
"UpdatedAt":"2021-11-01T11:16:43Z",
|
||||
"parentId":"1",
|
||||
"path":"",
|
||||
"name":"查看周报",
|
||||
"hidden":false,
|
||||
"component":"",
|
||||
"sort":1,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"查看周报",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"2",
|
||||
"children":null,
|
||||
"parameters":[
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"ID":3,
|
||||
"CreatedAt":"2021-11-01T11:16:40Z",
|
||||
"UpdatedAt":"2021-11-01T11:16:43Z",
|
||||
"parentId":"1",
|
||||
"path":"",
|
||||
"name":"写周报",
|
||||
"hidden":false,
|
||||
"component":"",
|
||||
"sort":2,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"写周报",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"3",
|
||||
"children":null,
|
||||
"parameters":[
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"ID":4,
|
||||
"CreatedAt":"2021-11-01T11:16:40Z",
|
||||
"UpdatedAt":"2021-11-01T11:16:43Z",
|
||||
"parentId":"1",
|
||||
"path":"",
|
||||
"name":"统计导出",
|
||||
"hidden":false,
|
||||
"component":"",
|
||||
"sort":3,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"统计导出",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"4",
|
||||
"children":null,
|
||||
"parameters":[
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"ID":5,
|
||||
"CreatedAt":"2021-11-01T11:16:40Z",
|
||||
"UpdatedAt":"2021-11-01T11:16:43Z",
|
||||
"parentId":"1",
|
||||
"path":"",
|
||||
"name":"模板编辑",
|
||||
"hidden":false,
|
||||
"component":"",
|
||||
"sort":4,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"模板编辑",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"5",
|
||||
"children":null,
|
||||
"parameters":[
|
||||
|
||||
]
|
||||
}
|
||||
],
|
||||
"parameters":[
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"ID":3,
|
||||
"CreatedAt":"2021-10-25T14:53:31Z",
|
||||
"UpdatedAt":"2021-10-25T14:53:31Z",
|
||||
"ID":6,
|
||||
"CreatedAt":"2021-11-01T11:16:40Z",
|
||||
"UpdatedAt":"2021-11-01T11:16:43Z",
|
||||
"parentId":"0",
|
||||
"path":"admin",
|
||||
"name":"superAdmin",
|
||||
"path":"",
|
||||
"name":"设置",
|
||||
"hidden":false,
|
||||
"component":"view/superAdmin/index.vue",
|
||||
"sort":3,
|
||||
"component":"",
|
||||
"sort":2,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"超级管理员",
|
||||
"icon":"user-solid",
|
||||
"title":"设置",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"3",
|
||||
"menuId":"6",
|
||||
"children":[
|
||||
{
|
||||
"ID":4,
|
||||
"CreatedAt":"2021-10-25T14:53:31Z",
|
||||
"UpdatedAt":"2021-10-25T14:53:31Z",
|
||||
"parentId":"3",
|
||||
"path":"authority",
|
||||
"name":"authority",
|
||||
"ID":7,
|
||||
"CreatedAt":"2021-11-01T11:16:40Z",
|
||||
"UpdatedAt":"2021-11-01T11:16:43Z",
|
||||
"parentId":"6",
|
||||
"path":"",
|
||||
"name":"用户密码",
|
||||
"hidden":false,
|
||||
"component":"view/superAdmin/authority/authority.vue",
|
||||
"component":"",
|
||||
"sort":1,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"角色管理",
|
||||
"icon":"s-custom",
|
||||
"title":"用户密码",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"4",
|
||||
"menuId":"7",
|
||||
"children":null,
|
||||
"parameters":[
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"ID":8,
|
||||
"CreatedAt":"2021-11-01T11:16:40Z",
|
||||
"UpdatedAt":"2021-11-01T11:16:43Z",
|
||||
"parentId":"6",
|
||||
"path":"",
|
||||
"name":"统计规则",
|
||||
"hidden":false,
|
||||
"component":"",
|
||||
"sort":2,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"统计规则",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"8",
|
||||
"children":null,
|
||||
"parameters":[
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
"ID":9,
|
||||
"CreatedAt":"2021-11-01T11:16:40Z",
|
||||
"UpdatedAt":"2021-11-01T11:16:43Z",
|
||||
"parentId":"6",
|
||||
"path":"",
|
||||
"name":"用户管理",
|
||||
"hidden":false,
|
||||
"component":"",
|
||||
"sort":3,
|
||||
"meta":{
|
||||
"keepAlive":false,
|
||||
"defaultMenu":false,
|
||||
"title":"用户管理",
|
||||
"icon":"",
|
||||
"closeTab":false
|
||||
},
|
||||
"authoritys":null,
|
||||
"menuId":"9",
|
||||
"children":null,
|
||||
"parameters":[
|
||||
|
||||
|
@ -365,10 +518,7 @@ if ok == true {
|
|||
results, err := e.BatchEnforce([][]interface{}{{"alice", "data1", "read"}, {"bob", "data2", "write"}, {"jack", "data3", "read"}})
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
f
|
||||
# 文件上传及下载
|
||||
|
||||
# 反射reflect
|
||||
|
|
|
@ -28,7 +28,7 @@ casbin:
|
|||
|
||||
# system configuration
|
||||
system:
|
||||
env: 'public' # Change to "develop" to skip authentication for development mode
|
||||
env: 'develop' # Change to "develop" to skip authentication for development mode # public
|
||||
addr: 8888
|
||||
db-type: 'mysql'
|
||||
oss-type: 'local' # 控制oss选择走本期还是 七牛等其他仓 自行增加其他oss仓可以在 server/utils/upload/upload.go 中 NewOss函数配置
|
||||
|
@ -41,11 +41,10 @@ captcha:
|
|||
img-height: 80
|
||||
|
||||
# mysql connect configuration
|
||||
# 未初始化之前请勿手动修改数据库信息!!!如果一定要手动初始化请看(https://www.github.com/flipped-aurora/gin-vue-admin/server.com/docs/first)
|
||||
mysql:
|
||||
path: ''
|
||||
path: '10.25.17.236:3306'
|
||||
config: 'parseTime=true'
|
||||
db-name: 'gva'
|
||||
db-name: 'weekly_report'
|
||||
username: 'root'
|
||||
password: 'root'
|
||||
max-idle-conns: 10
|
||||
|
|
|
@ -1 +1 @@
|
|||
log/2021-10-29.log
|
||||
log/2021-11-01.log
|
|
@ -0,0 +1,40 @@
|
|||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:35:15.728 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:35:15.730 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:37:50.685 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:37:56.723 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:37:56.729 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:39:24.549 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:39:27.841 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:39:27.842 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:39:40.386 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:39:43.200 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:39:43.201 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:43:00.886 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:43:05.782 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:43:05.783 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:44:39.572 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:44:43.674 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:44:43.675 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:53:20.469 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:53:26.535 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:53:26.537 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:57:11.338 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:57:16.622 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:57:16.631 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:57:56.918 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:58:10.380 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 11:58:10.381 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 12:00:42.239 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 12:00:42.240 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 12:18:01.957 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 12:18:01.961 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 12:18:12.715 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/api/web/menu.go:28 获取失败! {"err": "Error 1146: Table 'weekly_report.authority_menu' doesn't exist"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 13:12:08.274 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 13:59:12.657 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 13:59:12.660 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 18:07:17.857 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 18:07:17.858 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 18:12:46.454 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 18:12:49.860 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/initialize/router.go:43 router register success
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 18:12:49.861 [34minfo[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:31 server run success on {"address": ":8888"}
|
||||
[github.com/flipped-aurora/gin-vue-admin/server]2021/11/01 - 18:13:19.271 [31merror[0m /Users/zero/work/mygithub/goweb-gin-demo/core/server.go:38 accept tcp [::]:8888: use of closed network connection
|
|
@ -22,7 +22,7 @@ func CasbinHandler() gin.HandlerFunc {
|
|||
// 获取用户的角色
|
||||
sub := waitUse.AuthorityId
|
||||
e := casbinService.Casbin()
|
||||
// 判断策略中是否存在
|
||||
// 判断策略中是否存在, 查表匹配,比如: sub:100 ,obt:"/menu/getMenu", act:"Post"
|
||||
success, _ := e.Enforce(sub, obj, act)
|
||||
if global.GLOBAL_CONFIG.System.Env == "develop" || success {
|
||||
c.Next()
|
||||
|
|
|
@ -66,6 +66,7 @@ func JWTAuth() gin.HandlerFunc {
|
|||
_ = jwtService.SetRedisJWT(newToken, newClaims.Username)
|
||||
}
|
||||
}
|
||||
|
||||
c.Set("claims", claims)
|
||||
c.Next()
|
||||
}
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 311 KiB |
Binary file not shown.
After Width: | Height: | Size: 280 KiB |
|
@ -0,0 +1,226 @@
|
|||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : g1_mysql
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 50736
|
||||
Source Host : g1:3306
|
||||
Source Schema : weekly_report
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 50736
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 01/11/2021 17:25:45
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for casbin_rule
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `casbin_rule`;
|
||||
CREATE TABLE `casbin_rule` (
|
||||
`p_type` varchar(100) COLLATE utf8_bin DEFAULT NULL,
|
||||
`v0` varchar(100) COLLATE utf8_bin DEFAULT NULL,
|
||||
`v1` varchar(100) COLLATE utf8_bin DEFAULT NULL,
|
||||
`v2` varchar(100) COLLATE utf8_bin DEFAULT NULL,
|
||||
`v3` varchar(100) COLLATE utf8_bin DEFAULT NULL,
|
||||
`v4` varchar(100) COLLATE utf8_bin DEFAULT NULL,
|
||||
`v5` varchar(100) COLLATE utf8_bin DEFAULT NULL,
|
||||
`ptype` varchar(100) COLLATE utf8_bin DEFAULT NULL,
|
||||
UNIQUE KEY `idx_casbin_rule` (`ptype`,`v0`,`v1`,`v2`,`v3`,`v4`,`v5`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of casbin_rule
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '100', '/menu/getMenu', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '100', '/jwt/jsonInBlacklist', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '100', '/base/login', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '100', '/user/register', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '100', '/user/changePassword', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '100', '/user/setUserAuthority', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '100', '/user/setUserInfo', 'PUT', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '100', '/user/getUserInfo', 'GET', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '200', '/menu/getMenu', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '200', '/jwt/jsonInBlacklist', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '200', '/base/login', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '200', '/user/register', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '200', '/user/changePassword', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '200', '/user/setUserAuthority', 'POST', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '200', '/user/setUserInfo', 'PUT', '', '', '', NULL);
|
||||
INSERT INTO `casbin_rule` VALUES ('p', '200', '/user/getUserInfo', 'GET', '', '', '', NULL);
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for jwt_blacklists
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `jwt_blacklists`;
|
||||
CREATE TABLE `jwt_blacklists` (
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`created_at` datetime DEFAULT NULL,
|
||||
`updated_at` datetime DEFAULT NULL,
|
||||
`deleted_at` datetime DEFAULT NULL,
|
||||
`jwt` text COLLATE utf8_bin COMMENT 'jwt',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_jwt_blacklists_deleted_at` (`deleted_at`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of jwt_blacklists
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for sys_authorities
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `sys_authorities`;
|
||||
CREATE TABLE `sys_authorities` (
|
||||
`created_at` datetime DEFAULT NULL,
|
||||
`updated_at` datetime DEFAULT NULL,
|
||||
`deleted_at` datetime DEFAULT NULL,
|
||||
`authority_id` varchar(90) COLLATE utf8_bin NOT NULL COMMENT '角色ID',
|
||||
`authority_name` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '角色名',
|
||||
`parent_id` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '父角色ID',
|
||||
`default_router` varchar(191) COLLATE utf8_bin DEFAULT 'dashboard' COMMENT '默认菜单',
|
||||
PRIMARY KEY (`authority_id`),
|
||||
UNIQUE KEY `authority_id` (`authority_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of sys_authorities
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `sys_authorities` VALUES ('2021-11-01 10:57:52', '2021-11-01 10:57:55', NULL, '100', '管理员', '0', 'dashboard');
|
||||
INSERT INTO `sys_authorities` VALUES ('2021-11-01 11:02:49', '2021-11-01 11:02:51', NULL, '200', '普通用户', '0', 'dashboard');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for sys_authority_menus
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `sys_authority_menus`;
|
||||
CREATE TABLE `sys_authority_menus` (
|
||||
`sys_base_menu_id` bigint(20) unsigned NOT NULL,
|
||||
`sys_authority_authority_id` varchar(90) COLLATE utf8_bin NOT NULL COMMENT '角色ID',
|
||||
PRIMARY KEY (`sys_base_menu_id`,`sys_authority_authority_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of sys_authority_menus
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `sys_authority_menus` VALUES (1, '100');
|
||||
INSERT INTO `sys_authority_menus` VALUES (1, '200');
|
||||
INSERT INTO `sys_authority_menus` VALUES (2, '100');
|
||||
INSERT INTO `sys_authority_menus` VALUES (2, '200');
|
||||
INSERT INTO `sys_authority_menus` VALUES (3, '100');
|
||||
INSERT INTO `sys_authority_menus` VALUES (3, '200');
|
||||
INSERT INTO `sys_authority_menus` VALUES (4, '100');
|
||||
INSERT INTO `sys_authority_menus` VALUES (5, '100');
|
||||
INSERT INTO `sys_authority_menus` VALUES (6, '100');
|
||||
INSERT INTO `sys_authority_menus` VALUES (6, '200');
|
||||
INSERT INTO `sys_authority_menus` VALUES (7, '100');
|
||||
INSERT INTO `sys_authority_menus` VALUES (7, '200');
|
||||
INSERT INTO `sys_authority_menus` VALUES (8, '100');
|
||||
INSERT INTO `sys_authority_menus` VALUES (9, '100');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for sys_base_menus
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `sys_base_menus`;
|
||||
CREATE TABLE `sys_base_menus` (
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`created_at` datetime DEFAULT NULL,
|
||||
`updated_at` datetime DEFAULT NULL,
|
||||
`deleted_at` datetime DEFAULT NULL,
|
||||
`menu_level` bigint(20) unsigned DEFAULT NULL,
|
||||
`parent_id` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '父菜单ID',
|
||||
`path` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '路由path',
|
||||
`name` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '路由name',
|
||||
`hidden` tinyint(1) DEFAULT NULL COMMENT '是否在列表隐藏',
|
||||
`component` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '对应前端文件路径',
|
||||
`sort` bigint(20) DEFAULT NULL COMMENT '排序标记',
|
||||
`keep_alive` tinyint(1) DEFAULT NULL COMMENT '附加属性',
|
||||
`default_menu` tinyint(1) DEFAULT NULL COMMENT '附加属性',
|
||||
`title` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '附加属性',
|
||||
`icon` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '附加属性',
|
||||
`close_tab` tinyint(1) DEFAULT NULL COMMENT '附加属性',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_sys_base_menus_deleted_at` (`deleted_at`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of sys_base_menus
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `sys_base_menus` VALUES (1, '2021-11-01 11:14:12', '2021-11-01 11:14:14', NULL, NULL, '0', NULL, '周报', NULL, NULL, 1, NULL, NULL, '周报', NULL, NULL);
|
||||
INSERT INTO `sys_base_menus` VALUES (2, '2021-11-01 11:16:40', '2021-11-01 11:16:43', NULL, NULL, '1', NULL, '查看周报', NULL, NULL, 1, NULL, NULL, '查看周报', NULL, NULL);
|
||||
INSERT INTO `sys_base_menus` VALUES (3, '2021-11-01 11:16:40', '2021-11-01 11:16:43', NULL, NULL, '1', NULL, '写周报', NULL, NULL, 2, NULL, NULL, '写周报', NULL, NULL);
|
||||
INSERT INTO `sys_base_menus` VALUES (4, '2021-11-01 11:16:40', '2021-11-01 11:16:43', NULL, NULL, '1', NULL, '统计导出', NULL, NULL, 3, NULL, NULL, '统计导出', NULL, NULL);
|
||||
INSERT INTO `sys_base_menus` VALUES (5, '2021-11-01 11:16:40', '2021-11-01 11:16:43', NULL, NULL, '1', NULL, '模板编辑', NULL, NULL, 4, NULL, NULL, '模板编辑', NULL, NULL);
|
||||
INSERT INTO `sys_base_menus` VALUES (6, '2021-11-01 11:16:40', '2021-11-01 11:16:43', NULL, NULL, '0', NULL, '设置', NULL, NULL, 2, NULL, NULL, '设置', NULL, NULL);
|
||||
INSERT INTO `sys_base_menus` VALUES (7, '2021-11-01 11:16:40', '2021-11-01 11:16:43', NULL, NULL, '6', NULL, '用户密码', NULL, NULL, 1, NULL, NULL, '用户密码', NULL, NULL);
|
||||
INSERT INTO `sys_base_menus` VALUES (8, '2021-11-01 11:16:40', '2021-11-01 11:16:43', NULL, NULL, '6', NULL, '统计规则', NULL, NULL, 2, NULL, NULL, '统计规则', NULL, NULL);
|
||||
INSERT INTO `sys_base_menus` VALUES (9, '2021-11-01 11:16:40', '2021-11-01 11:16:43', NULL, NULL, '6', NULL, '用户管理', NULL, NULL, 3, NULL, NULL, '用户管理', NULL, NULL);
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for sys_user_authority
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `sys_user_authority`;
|
||||
CREATE TABLE `sys_user_authority` (
|
||||
`sys_user_id` bigint(20) unsigned NOT NULL,
|
||||
`sys_authority_authority_id` varchar(90) COLLATE utf8_bin NOT NULL COMMENT '角色ID',
|
||||
PRIMARY KEY (`sys_user_id`,`sys_authority_authority_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of sys_user_authority
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `sys_user_authority` VALUES (1, '100');
|
||||
INSERT INTO `sys_user_authority` VALUES (2, '200');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for sys_users
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `sys_users`;
|
||||
CREATE TABLE `sys_users` (
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`created_at` datetime DEFAULT NULL,
|
||||
`updated_at` datetime DEFAULT NULL,
|
||||
`deleted_at` datetime DEFAULT NULL,
|
||||
`uuid` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '用户UUID',
|
||||
`username` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '用户登录名',
|
||||
`password` varchar(191) COLLATE utf8_bin DEFAULT NULL COMMENT '用户登录密码',
|
||||
`nick_name` varchar(191) COLLATE utf8_bin DEFAULT '系统用户' COMMENT '用户昵称',
|
||||
`side_mode` varchar(191) COLLATE utf8_bin DEFAULT 'dark' COMMENT '用户侧边主题',
|
||||
`header_img` varchar(191) COLLATE utf8_bin DEFAULT 'https://qmplusimg.henrongyi.top/gva_header.jpg' COMMENT '用户头像',
|
||||
`base_color` varchar(191) COLLATE utf8_bin DEFAULT '#fff' COMMENT '基础颜色',
|
||||
`active_color` varchar(191) COLLATE utf8_bin DEFAULT '#1890ff' COMMENT '活跃颜色',
|
||||
`authority_id` varchar(90) COLLATE utf8_bin DEFAULT '888' COMMENT '用户角色ID',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_sys_users_deleted_at` (`deleted_at`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of sys_users
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
INSERT INTO `sys_users` VALUES (1, '2021-11-01 14:53:31', '2021-11-01 14:53:31', NULL, '8e600b7f-3297-4979-a445-d218205ef9a6', 'admin', 'e10adc3949ba59abbe56e057f20f883e', '超级管理员', 'dark', '', '#fff', '#1890ff', '100');
|
||||
INSERT INTO `sys_users` VALUES (2, '2021-11-01 14:53:31', '2021-11-01 14:53:31', NULL, '9d9ab82d-81a7-433b-9ea1-bde1c4f1b990', 'user', 'e10adc3949ba59abbe56e057f20f883e', '普通用户', 'dark', '', '#fff', '#1890ff', '200');
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- View structure for authority_menu
|
||||
-- ----------------------------
|
||||
DROP VIEW IF EXISTS `authority_menu`;
|
||||
CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `authority_menu` AS select `sys_base_menus`.`id` AS `id`,`sys_base_menus`.`created_at` AS `created_at`,`sys_base_menus`.`updated_at` AS `updated_at`,`sys_base_menus`.`deleted_at` AS `deleted_at`,`sys_base_menus`.`menu_level` AS `menu_level`,`sys_base_menus`.`parent_id` AS `parent_id`,`sys_base_menus`.`path` AS `path`,`sys_base_menus`.`name` AS `name`,`sys_base_menus`.`hidden` AS `hidden`,`sys_base_menus`.`component` AS `component`,`sys_base_menus`.`title` AS `title`,`sys_base_menus`.`icon` AS `icon`,`sys_base_menus`.`sort` AS `sort`,`sys_authority_menus`.`sys_authority_authority_id` AS `authority_id`,`sys_authority_menus`.`sys_base_menu_id` AS `menu_id`,`sys_base_menus`.`keep_alive` AS `keep_alive`,`sys_base_menus`.`close_tab` AS `close_tab`,`sys_base_menus`.`default_menu` AS `default_menu` from (`sys_authority_menus` join `sys_base_menus` on((`sys_authority_menus`.`sys_base_menu_id` = `sys_base_menus`.`id`)));
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
Loading…
Reference in New Issue