Bladex工作流插件中WfProcessDefinitionQuery排除多租户过滤

Blade 未结 4 1561
riversky2021
riversky2021 剑圣 2022-04-29 11:57

一、该问题的重现步骤是什么?

1. WfProcessDefinitionQuery查询去除租户过滤条件

2. sql语句仍带上tenant_id作为查询条件

3.

uTools_1651204099674.pnguTools_1651204112772.png

二、你期待的结果是什么?实际看到的又是什么?

WfProcessDefinitionQuery查询忽略租户过滤,即所有组合共享数据

三、你正在使用的是什么产品,什么版本?在什么操作系统上?

boot版本,blade-workflow插件,2.9.0.RELEASE,win10系统

四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

4条回答
  • 2022-04-29 16:41

    已经在调用该方法的controller中加上了@TenantIgnore注解,sql where语句仍然会带上tenantId

    0 讨论(1)
  • 试试在service上加

    @TenantIgnore


    mapper接口上加

    @SqlParser(filter=true)


    如果还是不行只能试着加代码了

    //开启忽略

    BladeTenantHolder.setIgnore(Boolean.TRUE);

    你的查询业务逻辑

    //关闭忽略

    BladeTenantHolder.clear();

    0 讨论(0)
  • 2022-04-29 17:33

    请把你的详细操作步骤再完善一下,然后发到工作流插件群咨询一下

    0 讨论(0)
  • 2022-05-09 22:24

    显式调用BladeTenantHolder的setIgnore方法,在查询时仍会带上tenantId作为查询条件

    0 讨论(0)
提交回复