From d4f427bf7c0ff1cf0ed1ac420bba8a063f9ef840 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期二, 02 七月 2024 17:25:39 +0800
Subject: [PATCH] #

---
 zy-asrs-framework/src/main/java/com/zy/asrs/framework/generators/CoolGenerator.java |   93 +++++++++++++++-------------------------------
 1 files changed, 30 insertions(+), 63 deletions(-)

diff --git a/zy-asrs-framework/src/main/java/com/zy/asrs/framework/generators/CoolGenerator.java b/zy-asrs-framework/src/main/java/com/zy/asrs/framework/generators/CoolGenerator.java
index e131455..58637da 100644
--- a/zy-asrs-framework/src/main/java/com/zy/asrs/framework/generators/CoolGenerator.java
+++ b/zy-asrs-framework/src/main/java/com/zy/asrs/framework/generators/CoolGenerator.java
@@ -49,10 +49,11 @@
     public boolean entity = true;
     public boolean xml = true;
     public boolean html = true;
-    public boolean htmlDetail = false;
     public boolean js = true;
     public boolean sql = true;
     public SqlOsType sqlOsType;
+    public String backendPrefixPath;
+    public String frontendPrefixPath;
 
     private List<Column> columns = new ArrayList<>();
     private String fullEntityName;
@@ -70,6 +71,7 @@
     private String majorColumn;
     private String systemPackagePath;
     private String systemPackage;
+    private String itemName;
 
     public void build() throws Exception {
         init();
@@ -82,48 +84,49 @@
             switch (template){
                 case "Controller":
                     pass = controller;
-                    directory = JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
+                    directory = backendPrefixPath + JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
                     fileName = fullEntityName+template+".java";
                     break;
                 case "Service":
                     pass = service;
-                    directory = JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
+                    directory = backendPrefixPath + JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
                     fileName = fullEntityName+template+".java";
                     break;
                 case "ServiceImpl":
                     pass = service;
-                    directory = JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
+                    directory = backendPrefixPath + JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
                     fileName = fullEntityName+template+".java";
                     break;
                 case "Mapper":
                     pass = mapper;
-                    directory = JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
+                    directory = backendPrefixPath + JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
                     fileName = fullEntityName+template+".java";
                     break;
                 case "Entity":
                     pass = entity;
-                    directory = JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
+                    directory = backendPrefixPath + JAVA_DIR + packagePath.replace(".", "/")+"/"+templatePath+"/";
                     fileName = fullEntityName+".java";
                     break;
                 case "Xml":
                     pass = xml;
-                    directory = XML_DIR;
+                    directory = backendPrefixPath + XML_DIR + itemName + "/";
                     fileName = fullEntityName+"Mapper.xml";
+                    break;
+                case "Sql":
+                    pass = sql;
+                    directory = backendPrefixPath + JAVA_DIR;
+                    fileName = simpleEntityName+".sql";
                     break;
                 case "Html":
                     pass = html;
-                    directory = HTML_DIR + "/views/" + simpleEntityName + "/";
+                    directory = frontendPrefixPath + HTML_DIR + "/views/" + simpleEntityName + "/";
                     fileName = simpleEntityName+".html";
                     break;
                 case "Js":
                     pass = js;
-                    directory = HTML_DIR + "/static/js/" + simpleEntityName + "/";
+                    directory = frontendPrefixPath + HTML_DIR + "/static/js/" + simpleEntityName + "/";
                     fileName = simpleEntityName+".js";
                     break;
-                case "Sql":
-                    pass = sql;
-                    directory = JAVA_DIR;
-                    fileName = simpleEntityName+".sql";
                 default:
                     break;
             }
@@ -138,7 +141,6 @@
         fullEntityName = GeneratorUtils.getNameSpace(table);
         simpleEntityName = fullEntityName.substring(0, 1).toLowerCase()+fullEntityName.substring(1);
         entityContent = createEntityMsg();
-        xmlContent = createXmlMsg();
         htmlContent = createHtmlMsg();
         htmlDialogContent = createHtmlDialogMsg();
         jsTableContent = createJsTableMsg();
@@ -159,8 +161,8 @@
                     systemPackage = systemPackage + split[i-1] + ".";
                 }
             }
-
         }
+        itemName = packagePathSplit[packagePathSplit.length - 1];
     }
 
     private String readFile(String template){
@@ -183,6 +185,7 @@
         if(!codeDirectory.exists()){
             codeDirectory.mkdirs();
         }
+
         File writerFile=new File(directory+fileName);
         if(!writerFile.exists()){
             content=content.
@@ -193,7 +196,8 @@
                     .replaceAll("@\\{SIMPLEENTITYNAME}", simpleEntityName)
                     .replaceAll("@\\{UENTITYNAME}", simpleEntityName)
                     .replaceAll("@\\{COMPANYNAME}",packagePath)
-                    .replaceAll("@\\{XMLCONTENT}", xmlContent)
+                    .replaceAll("@\\{ITEMNAME}",itemName)
+//                    .replaceAll("@\\{XMLCONTENT}", xmlContent)
                     .replaceAll("@\\{HTMLCONTENT}", htmlContent)
                     .replaceAll("@\\{HTMLDIALOGCONTENT}", htmlDialogContent)
                     .replaceAll("@\\{JSTABLECONTENT}", jsTableContent)
@@ -201,7 +205,8 @@
                     .replaceAll("@\\{JSDATECONTENT}", jsDateContent)
                     .replaceAll("@\\{JSPRIMARYKEYDOMS}", jsPrimaryKeyDoms)
                     .replaceAll("@\\{MAJORCOLUMN}", GeneratorUtils.humpToLine(majorColumn))
-                    .replaceAll("@\\{MAJORCOLUMN_UP}", GeneratorUtils.firstCharConvert(GeneratorUtils.humpToLine(majorColumn), false))
+                    .replaceAll("@\\{MAJORCOLUMN0}", GeneratorUtils.firstCharConvert(majorColumn, false))
+                    .replaceAll("@\\{MAJORCOLUMN_UP}", GeneratorUtils.firstCharConvert(majorColumn, false))
                     .replaceAll("@\\{PRIMARYKEYCOLUMN}", GeneratorUtils.firstCharConvert(primaryKeyColumn, false))
                     .replaceAll("@\\{PRIMARYKEYCOLUMN0}", GeneratorUtils.firstCharConvert(primaryKeyColumn, true))
                     .replaceAll("@\\{UPCASEMARJORCOLUMN}", GeneratorUtils.firstCharConvert(primaryKeyColumn, false))
@@ -225,7 +230,7 @@
         }
         switch (this.sqlOsType) {
             case MYSQL:
-                Class.forName("com.mysql.jdbc.Driver").newInstance();
+                Class.forName("com.mysql.cj.jdbc.Driver").newInstance();
                 conn = DriverManager.getConnection("jdbc:mysql://"+url, username, password);
                 this.columns = getMysqlColumns(conn, table, true, sqlOsType);
                 break;
@@ -357,7 +362,7 @@
             return null;
         }
         StringBuilder sb = new StringBuilder();
-        StringBuilder entityIm = new StringBuilder("import com.core.common.Cools;");
+        StringBuilder entityIm = new StringBuilder();
         boolean setTableField = true;
         boolean setTableId = true;
         boolean setDateTimeFormat = true;
@@ -385,11 +390,6 @@
 
             // 涓婚敭淇グ
             if (column.isMainKey()){
-                if (setTableId){
-                    entityIm.append("import com.baomidou.mybatisplus.annotations.TableId;").append("\n")
-                            .append("import com.baomidou.mybatisplus.enums.IdType;").append("\n");
-                    setTableId = false;
-                }
                 if (column.isOnly()){
                     sb.append("    ")
                             .append("@TableId(value = \"")
@@ -406,24 +406,10 @@
 
             }
 
-            // 澶栭敭淇グ
-            if (!Cools.isEmpty(column.getForeignKeyMajor())){
-                entityIm.append("import com.core.common.SpringUtils;\n")
-                        .append("import ").append(SYSTEM_MODEL.contains(column.getForeignKey())?systemPackagePath:packagePath).append(".service.").append(column.getForeignKey()).append("Service;\n")
-                        .append("import ").append(SYSTEM_MODEL.contains(column.getForeignKey())?systemPackagePath:packagePath).append(".entity.").append(column.getForeignKey()).append(";\n");
-            }
-
-            // 鍛藉悕杞崲娉ㄨВ
-            if (!column.getName().equals(column.getHumpName())){
-                if (setTableField){
-                    entityIm.append("import com.baomidou.mybatisplus.annotations.TableField;").append("\n");
-                    setTableField = false;
-                }
+            if (column.getName().equals("deleted")) {
+                entityIm.append("import com.baomidou.mybatisplus.annotation.TableLogic;\n");
                 sb.append("    ")
-                        .append("@TableField(\"")
-                        .append(column.getName())
-                        .append("\")")
-                        .append("\n");
+                        .append("@TableLogic\n");
             }
 
             if ("Date".equals(column.getType())){
@@ -491,7 +477,7 @@
                         .append(column.getHumpName())
                         .append(");\n")
                         .append("    }\n\n");
-            // 鏋氫妇瀛楁澧炲姞$鏍煎紡鍖�
+                // 鏋氫妇瀛楁澧炲姞$鏍煎紡鍖�
             } else if (!Cools.isEmpty(column.getEnums())){
                 sb.append("    public String get")
                         .append(column.getHumpName().substring(0, 1).toUpperCase()).append(column.getHumpName().substring(1))
@@ -516,7 +502,7 @@
                 sb.append("    public String get").append(column.getHumpName().substring(0, 1).toUpperCase()).append(column.getHumpName().substring(1)).append("\\$").append("(){\n")
                         .append("        ").append(column.getForeignKey()).append("Service service = SpringUtils.getBean(").append(column.getForeignKey()).append("Service.class);\n")
                         .append("        ").append(column.getForeignKey()).append(" ").append(GeneratorUtils.firstCharConvert(column.getForeignKey()))
-                        .append(" = service.selectById(this.").append(column.getHumpName()).append(");\n")
+                        .append(" = service.getById(this.").append(column.getHumpName()).append(");\n")
                         .append("        if (!Cools.isEmpty(").append(GeneratorUtils.firstCharConvert(column.getForeignKey())).append(")){\n")
                         .append("            return String.valueOf(").append(GeneratorUtils.firstCharConvert(column.getForeignKey())).append(".get").append(column.getForeignKeyMajor()).append("());\n")
                         .append("        }\n")
@@ -563,25 +549,6 @@
             }
         }
         return defaultMajor;
-    }
-
-    /**********************************************************************************************/
-    /*************************************** Xml鍔ㄦ�佸瓧娈� ********************************************/
-    /**********************************************************************************************/
-
-    private String createXmlMsg(){
-        StringBuilder sb = new StringBuilder();
-        for (Column column : columns){
-            sb.append("        ")
-                    .append("<")
-                    .append(column.isOnly()?"id":"result")
-                    .append(" column=\"")
-                    .append(column.getName())
-                    .append("\" property=\"")
-                    .append(column.getHumpName())
-                    .append("\" />\n");
-        }
-        return sb.toString();
     }
 
     /**********************************************************************************************/
@@ -762,7 +729,7 @@
                 sb.append("            layDate.render({\n")
                         .append("                elem: '#").append(column.getHumpName()).append("\\\\\\\\\\$',\n")
                         .append("                type: 'datetime',\n")
-                        .append("                value: data!==undefined?data['").append(column.getHumpName()).append("$'").append("]:null\n")
+                        .append("                value: data!==undefined?data['").append(column.getHumpName()).append("\\$'").append("]:null\n")
                         .append("            });\n");
             }
         }

--
Gitblit v1.9.1