From def805685fd63259cf43f9cfaeb5f954b4fa3214 Mon Sep 17 00:00:00 2001 From: wangbing Date: Sun, 26 Apr 2020 17:41:30 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81SpringBoot=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Former-commit-id: f0a4ea1f95bf01bc8373295e79100f48067e590b --- .../manger/callable/SpringBootCallable.java | 2 +- .../xyz/wbsite/dbtool/javafx/po/Table.java | 23 ++- .../java/module/mpr/MySQL_NSYS_mapper.xml | 176 +++++------------- .../java/module/mpr/MySQL_mapper.xml | 139 +++++++------- .../java/module/mpr/Oracle_NSYS_mapper.xml | 174 +++++------------ .../java/module/mpr/Oracle_mapper.xml | 114 ++++++------ .../java/module/mpr/SQLite_NSYS_mapper.xml | 174 +++++------------ .../java/module/mpr/SQLite_mapper.xml | 115 ++++++------ .../module/system/mpr/SQLite_ResMapper.xml | 18 ++ .../module/system/req/UserCreateRequest.java | 4 +- .../templates/screen/module/system/user.ftl | 13 +- .../modules/SpringBoot/test/TestConfig.ftl | 16 +- .../SpringBoot/test/datainit/DictInit.java | 4 + .../SpringBoot/test/datainit/RoleInit.java | 173 +++++++++++++++++ .../java/module/mpr/MySQL_NSYS_mapper.xml | 4 +- 15 files changed, 581 insertions(+), 568 deletions(-) create mode 100644 src/main/resources/modules/SpringBoot/test/datainit/RoleInit.java diff --git a/src/main/java/xyz/wbsite/dbtool/javafx/manger/callable/SpringBootCallable.java b/src/main/java/xyz/wbsite/dbtool/javafx/manger/callable/SpringBootCallable.java index f44d642a..125b8bda 100644 --- a/src/main/java/xyz/wbsite/dbtool/javafx/manger/callable/SpringBootCallable.java +++ b/src/main/java/xyz/wbsite/dbtool/javafx/manger/callable/SpringBootCallable.java @@ -691,7 +691,7 @@ public class SpringBootCallable implements Callable { continue; } for (File file : fileModule.listFiles()) { - if (!file.getName().startsWith("SQLite_ALL_") && file.getName().endsWith(".sql")) { + if (file.getName().startsWith("SQLite_") && !file.getName().startsWith("SQLite_ALL_") && file.getName().endsWith(".sql")) { statement = connection.createStatement(); String sql = FileUtil.readFileToString(file); statement.execute(sql); diff --git a/src/main/java/xyz/wbsite/dbtool/javafx/po/Table.java b/src/main/java/xyz/wbsite/dbtool/javafx/po/Table.java index e148903c..77d29ee1 100644 --- a/src/main/java/xyz/wbsite/dbtool/javafx/po/Table.java +++ b/src/main/java/xyz/wbsite/dbtool/javafx/po/Table.java @@ -207,7 +207,28 @@ public class Table extends TreeItem { } return false; } - public boolean hasSeachKey() { + + public List primaryKeyList() { + ArrayList list = new ArrayList<>(); + for (Field field : this.fields) { + if (field.getIsPrimaryKey()) { + list.add(field); + } + } + return list; + } + + public List searchKeyList() { + ArrayList list = new ArrayList<>(); + for (Field field : this.fields) { + if (field.getIsSearch()) { + list.add(field); + } + } + return list; + } + + public boolean hasSearchKey() { for (Field field : fields) { if (field.getIsSearch()) { return true; diff --git a/src/main/resources/modules/SpringBoot/java/module/mpr/MySQL_NSYS_mapper.xml b/src/main/resources/modules/SpringBoot/java/module/mpr/MySQL_NSYS_mapper.xml index 1c318324..9d0c6988 100644 --- a/src/main/resources/modules/SpringBoot/java/module/mpr/MySQL_NSYS_mapper.xml +++ b/src/main/resources/modules/SpringBoot/java/module/mpr/MySQL_NSYS_mapper.xml @@ -4,24 +4,15 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - -<#if dataBase == 'Oracle'> - "${module.modulePrefix?default("")}${table.tableName}" -<#elseif dataBase='MySQL'> `${module.modulePrefix?default("")}${table.tableName}` - - <#if dataBase == 'Oracle'> - <#list table.fields as f>"${f.fieldName}"<#if f_has_next>, - <#elseif dataBase='MySQL'> - <#list table.fields as f>`${f.fieldName}`<#if f_has_next>, - + <#list table.fields as field>`${field.fieldName}`<#if field_has_next>, - <#list table.fields as f> - + <#list table.fields as field> + @@ -31,33 +22,19 @@ FROM WHERE - 1 = 1 -<#list table.fields as f> -<#if f.isQuery> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + 1 = 1 +<#list table.fields as field> + <#if field.isQuery> + <#if field.fieldType.javaType() == "String"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#elseif field.fieldType.javaType() == "Boolean"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - - - + + @@ -66,26 +43,21 @@ FROM +<#if table.hasSearchKey()> + <#list table.searchKeyList() as field> + <#if field_index = 0> WHERE - 1 = 1 -<#if table.hasSeachKey()> - - 1 = 1 -<#list table.fields as f> -<#if f.isQuery> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - OR "${f.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - OR `${f.fieldName}` LIKE CONCAT(CONCAT('%',${r"#{"}request.keyword}),'%') - - - - + ( + `${field.fieldName}` LIKE CONCAT(CONCAT('%',${r"#{"}request.keyword}),'%') + <#else> + OR `${field.fieldName}` LIKE CONCAT(CONCAT('%',${r"#{"}request.keyword}),'%') + + <#if !field_has_next> + ) + + <#else> - 1 = 2 + WHERE 1 = 2 @@ -97,8 +69,8 @@ ) VALUES ( - <#list table.fields as f> - ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, + <#list table.fields as field> + ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>, ) @@ -106,38 +78,16 @@ DELETE FROM - WHERE <#if table.hasPrimaryKey()> - 1 = 1 -<#list table.fields as f> -<#if f.isPrimaryKey> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - - - - + <#list table.primaryKeyList() as field> + <#if field_index = 0> + WHERE `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} + <#else> + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} + + <#else> - 1 = 2 + WHERE 1 = 2 @@ -145,47 +95,21 @@ UPDATE SET - <#if dataBase == 'Oracle'> - <#list table.fields as f> - "${f.fieldName}" = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, - - <#elseif dataBase='MySQL'> - <#list table.fields as f> - `${f.fieldName}` = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, - - - WHERE -<#if table.hasPrimaryKey()> - 1 = 1 -<#list table.fields as f> -<#if f.isPrimaryKey> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - - - +<#list table.fields as field> + <#if !field.isPrimaryKey> + `${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, + +<#if table.hasPrimaryKey()> + <#list table.primaryKeyList() as field> + <#if field_index = 0> + WHERE `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} + <#else> + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} + + <#else> - 1 = 2 + WHERE 1 = 2 \ No newline at end of file diff --git a/src/main/resources/modules/SpringBoot/java/module/mpr/MySQL_mapper.xml b/src/main/resources/modules/SpringBoot/java/module/mpr/MySQL_mapper.xml index baf379ce..ab085fb2 100644 --- a/src/main/resources/modules/SpringBoot/java/module/mpr/MySQL_mapper.xml +++ b/src/main/resources/modules/SpringBoot/java/module/mpr/MySQL_mapper.xml @@ -7,12 +7,12 @@ `${module.modulePrefix?default("")}${table.tableName}` - <#list table.fields as f>`${f.fieldName}`<#if f_has_next>, + <#list table.fields as field>`${field.fieldName}`<#if field_has_next>, - <#list table.fields as f> - + <#list table.fields as field> + @@ -23,56 +23,56 @@ WHERE `IS_DELETED` = 0 -<#list table.fields as f> -<#if f.isQuery> - <#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} +<#list table.fields as field> +<#if field.isQuery> + <#if field.fieldType.javaType() == "Boolean"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Byte"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Byte"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Short"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Short"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Integer"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Integer"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Long"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Long"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Float"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Float"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Double"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Double"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Character"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Character"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "String"> + + AND `${field.fieldName}` = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Date"> - - AND DATE_FORMAT(`${f.fieldName}`,"%Y-%m-%d %T") = DATE_FORMAT(${r"#{"}request.${f.getFName()}},"%Y-%m-%d %T") + <#if field.fieldType.javaType() == "Date"> + + AND DATE_FORMAT(`${field.fieldName}`,"%Y-%m-%d %T") = DATE_FORMAT(${r"#{"}request.${field.getFName()}},"%Y-%m-%d %T") @@ -86,14 +86,19 @@ WHERE `IS_DELETED` = 0 +<#if table.hasSearchKey()> - 1 = 2 -<#list table.fields as f> -<#if f.isSearch> - OR `${f.fieldName}` LIKE CONCAT('%',${r"#{request.keyword}"},'%') - - + AND ( + <#list table.searchKeyList() as field> + <#if field_index == 0> + `${field.fieldName}` LIKE CONCAT('%',${r"#{request.keyword}"},'%') + <#else> + OR `${field.fieldName}` LIKE CONCAT('%',${r"#{request.keyword}"},'%') + + + ) + @@ -105,9 +110,9 @@ VALUES ( ${r"#{"}request.id}, - <#list table.fields as f> - <#if !f.isSystem> - ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, + <#list table.fields as field> + <#if !field.isSystem> + ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, 0, @@ -126,22 +131,22 @@ ) VALUES - - ( - ${r"#{"}item.id}, - <#list table.fields as f> - <#if !f.isSystem> - ${r"#{"}item.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, - - - 0, - 0, - ${r"#{"}token.userId,jdbcType=NUMERIC}, - sysdate(), - NULL, - NULL - ) - + + ( + ${r"#{"}item.id}, + <#list table.fields as field> + <#if !field.isSystem> + ${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, + + + 0, + 0, + ${r"#{"}token.userId,jdbcType=NUMERIC}, + sysdate(), + NULL, + NULL + ) + @@ -156,18 +161,17 @@ UPDATE SET - <#list table.fields as f> - <#if !f.isPrimaryKey> - <#if !f.isSystem || f.fieldName == 'ID'> - `${f.fieldName}` = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, + <#list table.fields as field> + <#if !field.isPrimaryKey> + <#if !field.isSystem || field.fieldName == 'ID'> + `${field.fieldName}` = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, `ROW_VERSION` = `ROW_VERSION` + 1, `LAST_UPDATE_BY` = ${r"#{"}token.userId}, `LAST_UPDATE_TIME` = sysdate() - WHERE - `IS_DELETED` = 0 + WHERE `IS_DELETED` = 0 AND `ID` = ${r"#{"}request.id} AND `ROW_VERSION` = ${r"#{"}request.rowVersion} @@ -177,8 +181,7 @@ FROM - WHERE - `IS_DELETED` = 0 + WHERE `IS_DELETED` = 0 AND `ID` = ${r"#{request.id}"} \ No newline at end of file diff --git a/src/main/resources/modules/SpringBoot/java/module/mpr/Oracle_NSYS_mapper.xml b/src/main/resources/modules/SpringBoot/java/module/mpr/Oracle_NSYS_mapper.xml index 1c318324..fd10815f 100644 --- a/src/main/resources/modules/SpringBoot/java/module/mpr/Oracle_NSYS_mapper.xml +++ b/src/main/resources/modules/SpringBoot/java/module/mpr/Oracle_NSYS_mapper.xml @@ -4,24 +4,15 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - -<#if dataBase == 'Oracle'> "${module.modulePrefix?default("")}${table.tableName}" -<#elseif dataBase='MySQL'> - `${module.modulePrefix?default("")}${table.tableName}` - - <#if dataBase == 'Oracle'> - <#list table.fields as f>"${f.fieldName}"<#if f_has_next>, - <#elseif dataBase='MySQL'> - <#list table.fields as f>`${f.fieldName}`<#if f_has_next>, - + <#list table.fields as field>"${field.fieldName}"<#if field_has_next>, - <#list table.fields as f> - + <#list table.fields as field> + @@ -32,32 +23,18 @@ WHERE 1 = 1 -<#list table.fields as f> -<#if f.isQuery> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} +<#list table.fields as field> + <#if field.isQuery> + <#if field.fieldType.javaType() == "String"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#elseif field.fieldType.javaType() == "Boolean"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - - - + + @@ -66,26 +43,21 @@ FROM +<#if table.hasSearchKey()> + <#list table.searchKeyList() as field> + <#if field_index = 0> WHERE - 1 = 1 -<#if table.hasSeachKey()> - - 1 = 1 -<#list table.fields as f> -<#if f.isQuery> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - OR "${f.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - OR `${f.fieldName}` LIKE CONCAT(CONCAT('%',${r"#{"}request.keyword}),'%') - - - - + ( + "${field.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' + <#else> + OR "${field.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' + + <#if !field_has_next> + ) + + <#else> - 1 = 2 + WHERE 1 = 2 @@ -97,8 +69,8 @@ ) VALUES ( - <#list table.fields as f> - ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, + <#list table.fields as field> + ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>, ) @@ -106,38 +78,16 @@ DELETE FROM - WHERE <#if table.hasPrimaryKey()> - 1 = 1 -<#list table.fields as f> -<#if f.isPrimaryKey> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - - - - + <#list table.primaryKeyList() as field> + <#if field_index = 0> + WHERE "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} + <#else> + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} + + <#else> - 1 = 2 + WHERE 1 = 2 @@ -145,47 +95,21 @@ UPDATE SET - <#if dataBase == 'Oracle'> - <#list table.fields as f> - "${f.fieldName}" = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, - - <#elseif dataBase='MySQL'> - <#list table.fields as f> - `${f.fieldName}` = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, - - - WHERE -<#if table.hasPrimaryKey()> - 1 = 1 -<#list table.fields as f> -<#if f.isPrimaryKey> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - - - +<#list table.fields as field> + <#if !field.isPrimaryKey> + "${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>, + +<#if table.hasPrimaryKey()> + <#list table.primaryKeyList() as field> + <#if field_index = 0> + WHERE "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} + <#else> + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} + + <#else> - 1 = 2 + WHERE 1 = 2 \ No newline at end of file diff --git a/src/main/resources/modules/SpringBoot/java/module/mpr/Oracle_mapper.xml b/src/main/resources/modules/SpringBoot/java/module/mpr/Oracle_mapper.xml index 3e9bda35..acaf4035 100644 --- a/src/main/resources/modules/SpringBoot/java/module/mpr/Oracle_mapper.xml +++ b/src/main/resources/modules/SpringBoot/java/module/mpr/Oracle_mapper.xml @@ -7,12 +7,12 @@ "${module.modulePrefix?default("")}${table.tableName}" - <#list table.fields as f>"${f.fieldName}"<#if f_has_next>, + <#list table.fields as field>"${field.fieldName}"<#if field_has_next>, - <#list table.fields as f> - + <#list table.fields as field> + @@ -23,56 +23,56 @@ WHERE "IS_DELETED" = 0 -<#list table.fields as f> -<#if f.isQuery> - <#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} +<#list table.fields as field> +<#if field.isQuery> + <#if field.fieldType.javaType() == "Boolean"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Byte"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Byte"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Short"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Short"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Integer"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Integer"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Long"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Long"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Float"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Float"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Double"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Double"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Character"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Character"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "String"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Date"> - - AND to_char("${f.fieldName}",'yyyy-MM-dd HH24:mi:ss') = to_char(${r"#{"}request.${f.getFName()}},'yyyy-MM-dd HH24:mi:ss') + <#if field.fieldType.javaType() == "Date"> + + AND to_char("${field.fieldName}",'yyyy-MM-dd HH24:mi:ss') = to_char(${r"#{"}request.${field.getFName()}},'yyyy-MM-dd HH24:mi:ss') @@ -86,13 +86,19 @@ WHERE "IS_DELETED" = 0 +<#if table.hasSearchKey()> - 1 = 2 -<#list table.fields as f> -<#if f.isSearch> - OR "${f.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' - + AND ( + <#list table.searchKeyList() as field> + <#if field_index == 0> + "${field.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' + <#else> + OR "${field.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' + + + ) + @@ -104,9 +110,9 @@ VALUES ( ${r"#{"}request.id}, - <#list table.fields as f> - <#if !f.isSystem> - ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, + <#list table.fields as field> + <#if !field.isSystem> + ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, 0, @@ -125,12 +131,12 @@ ) VALUES - + ( ${r"#{"}item.id}, - <#list table.fields as f> - <#if !f.isSystem> - ${r"#{"}item.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, + <#list table.fields as field> + <#if !field.isSystem> + ${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, 0, @@ -155,18 +161,17 @@ UPDATE SET - <#list table.fields as f> - <#if !f.isPrimaryKey> - <#if !f.isSystem || f.fieldName == 'ID'> - "${f.fieldName}" = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, + <#list table.fields as field> + <#if !field.isPrimaryKey> + <#if !field.isSystem || field.fieldName == 'ID'> + "${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, "ROW_VERSION" = "ROW_VERSION" + 1, "LAST_UPDATE_BY" = ${r"#{"}token.userId}, "LAST_UPDATE_TIME" = sysdate - WHERE - "IS_DELETED" = 0 + WHERE "IS_DELETED" = 0 AND "ID" = ${r"#{"}request.id} AND "ROW_VERSION" = ${r"#{"}request.rowVersion} @@ -176,8 +181,7 @@ FROM - WHERE - "IS_DELETED" = 0 + WHERE "IS_DELETED" = 0 AND "ID" = ${r"#{request.id}"} \ No newline at end of file diff --git a/src/main/resources/modules/SpringBoot/java/module/mpr/SQLite_NSYS_mapper.xml b/src/main/resources/modules/SpringBoot/java/module/mpr/SQLite_NSYS_mapper.xml index 1c318324..fd10815f 100644 --- a/src/main/resources/modules/SpringBoot/java/module/mpr/SQLite_NSYS_mapper.xml +++ b/src/main/resources/modules/SpringBoot/java/module/mpr/SQLite_NSYS_mapper.xml @@ -4,24 +4,15 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - -<#if dataBase == 'Oracle'> "${module.modulePrefix?default("")}${table.tableName}" -<#elseif dataBase='MySQL'> - `${module.modulePrefix?default("")}${table.tableName}` - - <#if dataBase == 'Oracle'> - <#list table.fields as f>"${f.fieldName}"<#if f_has_next>, - <#elseif dataBase='MySQL'> - <#list table.fields as f>`${f.fieldName}`<#if f_has_next>, - + <#list table.fields as field>"${field.fieldName}"<#if field_has_next>, - <#list table.fields as f> - + <#list table.fields as field> + @@ -32,32 +23,18 @@ WHERE 1 = 1 -<#list table.fields as f> -<#if f.isQuery> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} +<#list table.fields as field> + <#if field.isQuery> + <#if field.fieldType.javaType() == "String"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} + <#elseif field.fieldType.javaType() == "Boolean"> + + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - - - + + @@ -66,26 +43,21 @@ FROM +<#if table.hasSearchKey()> + <#list table.searchKeyList() as field> + <#if field_index = 0> WHERE - 1 = 1 -<#if table.hasSeachKey()> - - 1 = 1 -<#list table.fields as f> -<#if f.isQuery> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - OR "${f.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - OR `${f.fieldName}` LIKE CONCAT(CONCAT('%',${r"#{"}request.keyword}),'%') - - - - + ( + "${field.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' + <#else> + OR "${field.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' + + <#if !field_has_next> + ) + + <#else> - 1 = 2 + WHERE 1 = 2 @@ -97,8 +69,8 @@ ) VALUES ( - <#list table.fields as f> - ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, + <#list table.fields as field> + ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>, ) @@ -106,38 +78,16 @@ DELETE FROM - WHERE <#if table.hasPrimaryKey()> - 1 = 1 -<#list table.fields as f> -<#if f.isPrimaryKey> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - - - - + <#list table.primaryKeyList() as field> + <#if field_index = 0> + WHERE "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} + <#else> + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} + + <#else> - 1 = 2 + WHERE 1 = 2 @@ -145,47 +95,21 @@ UPDATE SET - <#if dataBase == 'Oracle'> - <#list table.fields as f> - "${f.fieldName}" = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, - - <#elseif dataBase='MySQL'> - <#list table.fields as f> - `${f.fieldName}` = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}<#if f_has_next>, - - - WHERE -<#if table.hasPrimaryKey()> - 1 = 1 -<#list table.fields as f> -<#if f.isPrimaryKey> -<#if dataBase == 'Oracle'> -<#if f.fieldType.javaType() == "String"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND "${f.fieldName}" = ${r"#{"}request.${f.getFName()}} - - -<#elseif dataBase='MySQL'> -<#if f.fieldType.javaType() == "String"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - -<#if f.fieldType.javaType() == "Boolean"> - - AND `${f.fieldName}` = ${r"#{"}request.${f.getFName()}} - - - - +<#list table.fields as field> + <#if !field.isPrimaryKey> + "${field.fieldName}" = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}<#if field_has_next>, + +<#if table.hasPrimaryKey()> + <#list table.primaryKeyList() as field> + <#if field_index = 0> + WHERE "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} + <#else> + AND "${field.fieldName}" = ${r"#{"}request.${field.getFName()}} + + <#else> - 1 = 2 + WHERE 1 = 2 \ No newline at end of file diff --git a/src/main/resources/modules/SpringBoot/java/module/mpr/SQLite_mapper.xml b/src/main/resources/modules/SpringBoot/java/module/mpr/SQLite_mapper.xml index 4a13ad74..6922cda1 100644 --- a/src/main/resources/modules/SpringBoot/java/module/mpr/SQLite_mapper.xml +++ b/src/main/resources/modules/SpringBoot/java/module/mpr/SQLite_mapper.xml @@ -7,12 +7,12 @@ "${module.modulePrefix?default("")}${table.tableName}" - <#list table.fields as f>"${f.fieldName}"<#if f_has_next>, + <#list table.fields as field>"${field.fieldName}"<#if field_has_next>, - <#list table.fields as f> - + <#list table.fields as field> + @@ -23,56 +23,56 @@ WHERE "IS_DELETED" = 0 -<#list table.fields as f> -<#if f.isQuery> - <#if f.fieldType.javaType() == "Boolean"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} +<#list table.fields as field> +<#if field.isQuery> + <#if field.fieldType.javaType() == "Boolean"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Byte"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Byte"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Short"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Short"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Integer"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Integer"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Long"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Long"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Float"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Float"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Double"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Double"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Character"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Character"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "String"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "String"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} - <#if f.fieldType.javaType() == "Date"> - - AND ${f.fieldName} = ${r"#{"}request.${f.getFName()}} + <#if field.fieldType.javaType() == "Date"> + + AND ${field.fieldName} = ${r"#{"}request.${field.getFName()}} @@ -86,14 +86,19 @@ WHERE "IS_DELETED" = 0 +<#if table.hasSearchKey()> - 1 = 2 -<#list table.fields as f> -<#if f.isSearch> - OR ${f.fieldName} LIKE CONCAT('%',${r"#{request.keyword}"},'%') - - + AND ( + <#list table.searchKeyList() as field> + <#if field_index == 0> + "${field.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' + <#else> + OR "${field.fieldName}" LIKE '%'||${r"#{"}request.keyword}||'%' + + + ) + @@ -105,9 +110,9 @@ VALUES ( ${r"#{"}request.id}, - <#list table.fields as f> - <#if !f.isSystem> - ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, + <#list table.fields as field> + <#if !field.isSystem> + ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, 0, @@ -126,12 +131,12 @@ ) VALUES - + ( ${r"#{"}item.id}, - <#list table.fields as f> - <#if !f.isSystem> - ${r"#{"}item.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, + <#list table.fields as field> + <#if !field.isSystem> + ${r"#{"}item.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, 0, @@ -156,18 +161,17 @@ UPDATE SET - <#list table.fields as f> - <#if !f.isPrimaryKey> - <#if !f.isSystem || f.fieldName == 'ID'> - ${f.fieldName} = ${r"#{"}request.${f.getFName()},jdbcType=${f.fieldType.jdbcType()}}, + <#list table.fields as field> + <#if !field.isPrimaryKey> + <#if !field.isSystem || field.fieldName == 'ID'> + ${field.fieldName} = ${r"#{"}request.${field.getFName()},jdbcType=${field.fieldType.jdbcType()}}, "ROW_VERSION" = "ROW_VERSION" + 1, "LAST_UPDATE_BY" = ${r"#{"}token.userId}, "LAST_UPDATE_TIME" = datetime('now','localtime') - WHERE - "IS_DELETED" = 0 + WHERE "IS_DELETED" = 0 AND "ID" = ${r"#{"}request.id} AND "ROW_VERSION" = ${r"#{"}request.rowVersion} @@ -177,8 +181,7 @@ FROM - WHERE - IS_DELETED = 0 + WHERE IS_DELETED = 0 AND ID = ${r"#{request.id}"} \ No newline at end of file diff --git a/src/main/resources/modules/SpringBoot/java/module/system/mpr/SQLite_ResMapper.xml b/src/main/resources/modules/SpringBoot/java/module/system/mpr/SQLite_ResMapper.xml index f379843a..47850f14 100644 --- a/src/main/resources/modules/SpringBoot/java/module/system/mpr/SQLite_ResMapper.xml +++ b/src/main/resources/modules/SpringBoot/java/module/system/mpr/SQLite_ResMapper.xml @@ -55,6 +55,24 @@ AND VALID = ${r"#"}{request.valid} + + AND "ID" IN ( + SELECT + t2.RES_ID + FROM + "SYS_USER_ROLE" t1, + "SYS_ROLE_RES" t2 + WHERE t1.ROLE_ID = t2.ROLE_ID + AND t1.IS_DELETED = '0' + AND t2.IS_DELETED = '0' + AND t1.USER_ID = ${r'#'}{request.userId} + ) + + + AND "ID" IN ( + SELECT RES_ID FROM "SYS_ROLE_RES" WHERE ROLE_CODE = ${r'#'}{request.roleCode} + ) +