From cd8201c5d763c9b12c1554b10f9b3fc0f963a4a1 Mon Sep 17 00:00:00 2001 From: Dftre <3066417822@qq.com> Date: Sat, 18 May 2024 23:45:51 +0800 Subject: [PATCH] update --- .../mybatis/annotation/EnableTableMap.java | 14 +++++++++- .../com/ruoyi/mybatis/domain/TableInfo.java | 27 ++++++++++++++++--- 2 files changed, 36 insertions(+), 5 deletions(-) diff --git a/ruoyi-plugins/ruoyi-mybatis-jpa/src/main/java/com/ruoyi/mybatis/annotation/EnableTableMap.java b/ruoyi-plugins/ruoyi-mybatis-jpa/src/main/java/com/ruoyi/mybatis/annotation/EnableTableMap.java index 8e5ed4f..84b81b1 100644 --- a/ruoyi-plugins/ruoyi-mybatis-jpa/src/main/java/com/ruoyi/mybatis/annotation/EnableTableMap.java +++ b/ruoyi-plugins/ruoyi-mybatis-jpa/src/main/java/com/ruoyi/mybatis/annotation/EnableTableMap.java @@ -14,8 +14,20 @@ import java.lang.annotation.Target; @Target(ElementType.TYPE) public @interface EnableTableMap { String name() default "t"; + String dept() default ""; + String user() default ""; - String userOn() default "user_id"; + + String userOn() default ""; + + String userOnLeft() default "create_by"; + + String userOnRight() default "user_name"; + String deptOn() default "dept_id"; + + String deptOnLeft() default ""; + + String deptOnRight() default ""; } diff --git a/ruoyi-plugins/ruoyi-mybatis-jpa/src/main/java/com/ruoyi/mybatis/domain/TableInfo.java b/ruoyi-plugins/ruoyi-mybatis-jpa/src/main/java/com/ruoyi/mybatis/domain/TableInfo.java index d8228c6..000b866 100644 --- a/ruoyi-plugins/ruoyi-mybatis-jpa/src/main/java/com/ruoyi/mybatis/domain/TableInfo.java +++ b/ruoyi-plugins/ruoyi-mybatis-jpa/src/main/java/com/ruoyi/mybatis/domain/TableInfo.java @@ -60,16 +60,35 @@ public class TableInfo { .forEach(joinSql::add); if (this.enableTableMap != null) { if (StringUtils.isNotEmpty(this.enableTableMap.user())) { + String left = ""; + String right = ""; + if (StringUtils.isEmpty(this.enableTableMap.deptOn())) { + left = this.enableTableMap.userOn(); + right = this.enableTableMap.userOn(); + } else { + left = this.enableTableMap.userOnLeft(); + right = this.enableTableMap.userOnRight(); + } this.joinSql.add("sys_user " + this.enableTableMap.user() + " on " - + this.enableTableMap.user() + "." + this.enableTableMap.userOn() + " = " - + this.getTableNameT() + "." + this.enableTableMap.userOn()); + + this.enableTableMap.user() + "." + right + " = " + + this.getTableNameT() + "." + left); this.hasDataScopeValue = true; } if (StringUtils.isNotEmpty(this.enableTableMap.dept())) { + String left = ""; + String right = ""; + if (StringUtils.isEmpty(this.enableTableMap.deptOn())) { + left = this.enableTableMap.deptOn(); + right = this.enableTableMap.deptOn(); + } else { + left = this.enableTableMap.deptOnLeft(); + right = this.enableTableMap.deptOnRight(); + } + this.joinSql.add("sys_dept " + this.enableTableMap.dept() + " on " - + this.enableTableMap.dept() + "." + this.enableTableMap.deptOn() + " = " - + this.getTableNameT() + "." + this.enableTableMap.deptOn()); + + this.enableTableMap.dept() + "." + right + " = " + + this.getTableNameT() + "." + left); this.hasDataScopeValue = true; } }