Skip to content

APIJSON/apijson-ruoyi

 
 

Repository files navigation

Description

功能点

  • apijson和若依框架整合
  • 导入数据库表,生成apijson配置
  • 页面模板,无需任何后台开发,即可使用
  • 编辑表配置,生成apijson配置(在线初始化,增量和全量)
  • 执行sql生成菜单
  • 将模板生成前端页面拷贝进项目
  • 管理员测试新增功能 增删改查
  • 鉴权 给普通用户分配查询权限 测试是否存在越权 给普通用户分配新增、修改、删除权限,测试功能是否正常
  • 必传参数、字段类型、字段校验、前置后置函数等
  • json、sql、function 生成url
  • apijson底层 接口、数据库表操作鉴权 已经将apijson和若依鉴权认证完全打通, 通过菜单配置权限即可。
  • 数据操作人 场景:比如订单, 用户只能查询自己拥有的订单, 管理员在后管可以查询所有的订单
  • 假删除 自动将删除语句替换为修改字段状态

功能使用说明

使用数据库表模板,生成apijson配置

代码生成

image

选择您要导入的数据库表

image

编辑表配置

image image 选择 页面存放菜单位置 image

生成apijson配置

image

执行sql语句,生成菜单

image

拷贝前端页面

image image

管理员增删改查测试

image

鉴权

给普通用户分配查询权限

测试普通用户是否能够插入数据 image image 退出登录,切换普通用户 image 普通用户只有查询权限 image 测试是否存在越权 postman 使用普通用户的token,模拟请求, 测试是否可以插入数据 http://localhost:8080/forms/api/gen/Post1692343037000

{
    "postId": null,
    "postCode": "23",
    "postName": "23",
    "postSort": "23",
    "status": "0",
    "createBy": null,
    "createTime": null,
    "updateBy": null,
    "updateTime": null,
    "remark": "32"
}
image apijson已经将鉴权和若依框架整合。 给普通用户分配新增、修改、删除权限 image image

必传参数、字段类型、字段校验、前置后置函数等

具体使用请参照apijson官网, 非常简单,配置即可。 可以在线配置,初始化生效,无需重启服务 image 必传参数 image 前置后置函数(自定义校验方式) image 校验(可自己扩展) image

json 生成url

比如统计报表,多表关联查询等场景。 image 数据库表模板生成json, 后台也是同样的实现方式。 用postman进行功能测试, 也可以用官网的autoapi image

sql 生成url

用于复杂统计,不愿意用apijson实现。 image 可以使用postman进行测试 后续如果有需要, json格式扩展实现@combine条件

Function 生成url

function实现业务逻辑方法, 在线生成接口 新增远程函数 image 在线生成接口 image image 调用 image image

代码添加鉴权 image 如果想使用权限注解, 等我后面有空把若依注解扫描改造一下,目前若依 注解 只支持controller 方法。 添加按钮菜单权限 image 给需要的角色分配按钮权限 image Function 参数校验等 参照json生成url。 将function函数生成独立url。

接口、数据库表操作鉴权 已经将apijson和若依鉴权认证完全打通, 通过菜单配置权限即可。 apijson鉴权配置参见: image

数据操作人

配置 image 场景 比如订单, 用户只能查询自己拥有的订单, 管理员在后管可以查询所有的订单

{
    "id@-()": "getCurrentUserIdOrAdmin(id@-(),Ordermaster:rows[].Ordermaster.customerNo@)",
    "Ordermaster:rows[]": {
        "query": 2,
        "page": 0,
        "count": 10,
        "Ordermaster": {
            "customerNo@": "id",
            "@column": "orderNo:orderNo,customerNo:customerNo,salerNo:salerNo,orderDate:orderDate,orderSum:orderSum,invoiceNo:invoiceNo,",
            "@combine": "customerNo:1=1 & salerNo:1=1 & orderDate:1=1 & invoiceNo:1=1"
        }
    },
    "total@": "/Ordermaster:rows[]/total",
    "format": true,
    "@explain": true
}

经测试,完全能实现, 普通用户查询自己的数据,管理员查询所有数据 image

假删除

Access配置假删除的 deletedKey,deletedValue,notDeletedValue 框架会自动将delete语句转换为update,修改假删除字段的值。 image

About

存档

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 48.1%
  • PLpgSQL 28.6%
  • Vue 17.6%
  • JavaScript 4.4%
  • HTML 0.8%
  • SCSS 0.5%