Skip to content

Commit 65d9bae

Browse files
committed
重构调整
1 parent 6a8025b commit 65d9bae

32 files changed

+2006
-1181
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
.idea
2-
*.exe
2+
*.exe
3+
config.yaml

README.md

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,15 @@
1515
- [x] Request表的tag校验
1616
- [x] MUST
1717
- [x] REFUSE
18-
- [ ] 可用的权限方案
18+
- [x] 分页返回total@
1919

20+
- [x] 可用的权限方案
21+
- [x] get只有access中定义的才能访问
22+
- [x] 非get操作则必须与request指定一致才可请求
23+
- [x] 基于角色控制
24+
25+
- [ ] 远程函数
26+
2027
## 查询实现
2128
1. 根据json构造节点树, 并检查节点结构(不符合直接返回)
2229
2. parse 节点树内容, 并分析关联关系(不要求json的key顺序, 因为go的原生map不支持顺序遍历)
@@ -29,20 +36,32 @@
2936
[//]: # (1. page,count 最大值)
3037
- []下只能有一个主查询表 (不依赖于列表中其他表)
3138

39+
# 权限控制方案
40+
##
41+
- get 操作只能访问access中定义的表
42+
- 其他操作需和request中定义的结构一致方可访问
43+
44+
##
45+
- access 中定义各操作的角色权限, 角色有: 未登录用户/登录用户(OWNER/ADMIN/ 其他自定义角色)
46+
- 提供自定义函数 针对不同表不同角色添加 过滤条件
47+
48+
##
49+
- access_ext 中定义各操作的in/out字段列表, 限制各操作字段只能是此处的子集
3250

3351
# 开发指南
3452

3553
1. go >= 1.18
3654
2. 创建mysql数据库
37-
3. 导入test.sql文件
38-
4. 修改配置文件config.yaml中数据库连接
39-
5. 运行go run main.go
40-
6. 查看测试test.http
55+
3. 导入cmd/test.sql文件
56+
4. 从cmd/config.yaml.example 改成 cmd/config.yaml, 然后修改配置文件cmd/config.yaml中数据库连接
57+
5. 在cmd目录运行go run main.go
58+
6. 查看测试 test.http / z_test.go
4159

4260

4361
# 感谢
4462
- [GoFrame](https://github.com/gogf/gf)
4563
- [APIJSON](https://github.com/Tencent/APIJSON)
64+
- [j2go/apijson-go](https://github.com/j2go/apijson-go)
4665

4766
# 参考链接
4867
1. [详细的说明文档.md](https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md)

README.zh-CN.md

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,14 @@
1515
- [x] Request表的tag校验
1616
- [x] MUST
1717
- [x] REFUSE
18-
- [ ] 可用的权限方案
18+
- [x] 分页返回total@
19+
20+
- [x] 可用的权限方案
21+
- [x] get只有access中定义的才能访问
22+
- [x] 非get操作则必须与request指定一致才可请求
23+
- [x] 基于角色控制
24+
25+
- [ ] 远程函数
1926

2027
## 查询实现
2128
1. 根据json构造节点树, 并检查节点结构(不符合直接返回)
@@ -29,20 +36,33 @@
2936
[//]: # (1. page,count 最大值)
3037
- []下只能有一个主查询表 (不依赖于列表中其他表)
3138

39+
# 权限控制方案
40+
##
41+
- get 操作只能访问access中定义的表
42+
- 其他操作需和request中定义的结构一致方可访问
43+
44+
##
45+
- access 中定义各操作的角色权限, 角色有: 未登录用户/登录用户(OWNER/ADMIN/ 其他自定义角色)
46+
- 提供自定义函数 针对不同表不同角色添加 过滤条件
47+
48+
##
49+
- access_ext 中定义各操作的in/out字段列表, 限制各操作字段只能是此处的子集
3250

3351
# 开发指南
3452

3553
1. go >= 1.18
3654
2. 创建mysql数据库
37-
3. 导入test.sql文件
38-
4. 修改配置文件config.yaml中数据库连接
39-
5. 运行go run main.go
40-
6. 查看测试test.http
55+
3. 导入cmd/test.sql文件
56+
4. 从cmd/config.yaml.example 改成 cmd/config.yaml, 然后修改配置文件cmd/config.yaml中数据库连接
57+
5. 在cmd目录运行go run main.go
58+
6. 查看测试 test.http / z_test.go
59+
4160

4261

4362
# 感谢
4463
- [GoFrame](https://gitee.com/johng/gf)
4564
- [APIJSON](https://gitee.com/Tencent/APIJSON)
65+
- [tiangao/apijson-go](https://gitee.com/tiangao/apijson-go)
4666

4767
# 参考链接
4868
1. [详细的说明文档.md](https://github.com/Tencent/APIJSON/blob/master/%E8%AF%A6%E7%BB%86%E7%9A%84%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3.md)

apijson/access.go

Lines changed: 0 additions & 19 deletions
This file was deleted.

apijson/db/data.go

Lines changed: 0 additions & 85 deletions
This file was deleted.

0 commit comments

Comments
 (0)