diff --git a/.idea/templateLanguages.xml b/.idea/templateLanguages.xml
new file mode 100644
index 0000000..69f885d
--- /dev/null
+++ b/.idea/templateLanguages.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.intellijPlatform/coroutines-javaagent-legacy.jar b/.intellijPlatform/coroutines-javaagent-legacy.jar
index caebd13..972e7d7 100644
Binary files a/.intellijPlatform/coroutines-javaagent-legacy.jar and b/.intellijPlatform/coroutines-javaagent-legacy.jar differ
diff --git a/build.gradle.kts b/build.gradle.kts
index 18c4c43..a46d8c3 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -5,7 +5,7 @@ plugins {
}
group = "com.sdk.generators.actionmodels"
-version = "1.1.0"
+version = "1.1.2"
repositories {
mavenCentral()
@@ -39,6 +39,15 @@ intellijPlatform {
changeNotes = """
## Release Notes
+ ## [1.1.2]
+ fix: Update plugin version display
+ Corrected the plugin version display in the IDE.
+
+ ## [1.1.1]
+ fix: Correctly generate primary keys
+ The generator was failing to identify primary key columns, resulting in generated beans without them. This has been fixed by updating the code to use the `getColumnsRef()` method, which correctly retrieves the column names for the primary key.
+
+ ## [1.1.0]
### New Features and Enhancements
* **DTO Generation:** Introduced new functionality to generate Data Transfer Object (DTO) classes alongside ActionBeans. This includes new FreeMarker templates (`actionDTO.ftl`, `actionDTO.extend.ftl`) and updated logic in `GeneratorServices.java`.
@@ -49,7 +58,7 @@ intellijPlatform {
* **Project Structure Refactoring:** The project structure has been reorganized. Generator-related classes were moved to a new package (`com.sdk.generators.actionmodels`), and template directory names were standardized to `src/main/resources/templates`.
* **Build System Updates:** Updated `build.gradle.kts`, `plugin.xml`, and Gradle wrapper files to reflect the structural and functional enhancements.
- """.trimIndent()
+ """
}
}
diff --git a/src/main/java/com/sdk/generators/GUtils.java b/src/main/java/com/sdk/generators/GUtils.java
index 57bf5b8..babae8d 100644
--- a/src/main/java/com/sdk/generators/GUtils.java
+++ b/src/main/java/com/sdk/generators/GUtils.java
@@ -1,6 +1,7 @@
package com.sdk.generators;
import com.intellij.database.model.DasColumn;
+import com.intellij.database.model.DasObject;
import com.intellij.database.model.ObjectKind;
import com.intellij.database.psi.DbObject;
import com.intellij.database.psi.DbTable;
@@ -63,15 +64,18 @@ public class GUtils {
public static void createUserDefineType(DbTable table) {
String schemaName = table.getParent() != null ? table.getParent().getName() : "";
- DasUtil.getCatalogObject(table).getDasChildren(ObjectKind.SCHEMA).forEach(schema -> {
- if (schema.getName().equals("public") || schema.getName().equals(schemaName)) {
- schema.getDasChildren(ObjectKind.OBJECT_TYPE).forEach(domain -> {
- String domainName = domain.getName();
- String domainScript = ((DbObject) domain).getText();
- userDefType.put(domainName, getRawType(domainScript));
- });
- }
- });
+ DasObject objCatalog = DasUtil.getCatalogObject(table);
+ if (objCatalog != null) {
+ objCatalog.getDasChildren(ObjectKind.SCHEMA).forEach(schema -> {
+ if (schema.getName().equals("public") || schema.getName().equals(schemaName)) {
+ schema.getDasChildren(ObjectKind.OBJECT_TYPE).forEach(domain -> {
+ String domainName = domain.getName();
+ String domainScript = ((DbObject) domain).getText();
+ userDefType.put(domainName, getRawType(domainScript));
+ });
+ }
+ });
+ }
}
public static String getFieldType(DasColumn column) {
diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml
index 8db3015..fcf3e2c 100644
--- a/src/main/resources/META-INF/plugin.xml
+++ b/src/main/resources/META-INF/plugin.xml
@@ -10,6 +10,29 @@
Right-click on a package and select "Generate Database Action Models" to start.
]]>
+
+
com.intellij.modules.platform
com.intellij.modules.java
com.intellij.database