baomidou / mybatis-plus

An powerful enhanced toolkit of MyBatis for simplify development
https://baomidou.com
Apache License 2.0
16.12k stars 4.26k forks source link

MultiDataPermissionHandler 多表时数据权限插件重复拼接条件语句 #6281

Closed mk5683 closed 2 weeks ago

mk5683 commented 3 weeks ago

1 原sql:SELECT FROM sys_role sr,sys_role_dept srd,sys_user_role sur WHERE sr.role_id = sur.role_id AND sr.role_id = srd.role_id AND sur.user_id = #{userId} 处理后:SELECT FROM sys_role sr, sys_role_dept srd, sys_user_role sur WHERE sr.role_id = sur.role_id AND sr.role_id = srd.role_id AND sur.user_id = ? AND (srd.dept_id = 105) AND (srd.dept_id = 105) AND (srd.dept_id = 105) 2 原sql:SELECT FROM sys_role sr INNER JOIN sys_role_dept srd on sr.role_id = srd.role_id INNER JOIN sys_user_role sur on sr.role_id = sur.role_id WHERE sur.user_id = #{userId} 处理后:SELECT FROM sys_role sr INNER JOIN sys_role_dept srd ON sr.role_id = srd.role_id AND (srd.dept_id = 105) AND (srd.dept_id = 105) INNER JOIN sys_user_role sur ON sr.role_id = sur.role_id AND (srd.dept_id = 105) WHERE sur.user_id = ?

nieqiurong commented 3 weeks ago

详细描述,期望是什么,补充提供复现工程