From d8a687741273d121586b83745280c57f7e9d3297 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期一, 07 八月 2023 17:51:28 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/yuanchu_code/lims-management-system

---
 sys/src/main/java/com/yuanchu/limslaboratory/CodeGenerator.java |   83 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 83 insertions(+), 0 deletions(-)

diff --git a/sys/src/main/java/com/yuanchu/limslaboratory/CodeGenerator.java b/sys/src/main/java/com/yuanchu/limslaboratory/CodeGenerator.java
new file mode 100644
index 0000000..0807851
--- /dev/null
+++ b/sys/src/main/java/com/yuanchu/limslaboratory/CodeGenerator.java
@@ -0,0 +1,83 @@
+package com.yuanchu.limslaboratory;
+
+import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.generator.FastAutoGenerator;
+import com.baomidou.mybatisplus.generator.config.*;
+import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
+
+import java.util.Collections;
+import java.util.Scanner;
+
+// 婕旂ず渚嬪瓙锛屾墽琛� main 鏂规硶鎺у埗鍙拌緭鍏ユā鍧楄〃鍚嶅洖杞﹁嚜鍔ㄧ敓鎴愬搴旈」鐩洰褰曚腑
+public class CodeGenerator {
+
+    public static String database_url = "jdbc:mysql://localhost:3306/mom_ocean?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
+    public static String database_username = "root";
+    public static String database_password= "123456";
+    public static String author = "姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃";
+    public static String model_name = "/inspect-server"; // 濡傛灉涓哄垎甯冨紡濉瓙妯″潡鍚嶇О锛屽鏋滀笉鏄垎甯冨紡涓虹┖鍗冲彲
+    public static String setParent = "com.yuanchu.mom"; // 鍖呰矾寰�
+    public static void main(String[] args) {
+        String projectPath = System.getProperty("user.dir");
+        System.out.println(projectPath+"===================");
+        FastAutoGenerator.create(database_url, database_username, database_password)
+                // 鍏ㄥ眬閰嶇疆
+                .globalConfig(builder -> {
+                    builder.author(author) // 璁剧疆浣滆��
+                            .commentDate("yyyy-MM-dd hh:mm:ss")   //娉ㄩ噴鏃ユ湡
+                            .outputDir(projectPath + model_name + "/src/main/java") // 鎸囧畾杈撳嚭鐩綍
+                            .disableOpenDir() //绂佹鎵撳紑杈撳嚭鐩綍锛岄粯璁ゆ墦寮�
+                    ;
+                })
+                // 鍖呴厤缃�
+                .packageConfig(builder -> {
+                    builder.entity("pojo");
+                    builder.parent(setParent) // 璁剧疆鐖跺寘鍚�
+                            .pathInfo(Collections.singletonMap(OutputFile.xml, projectPath + model_name +  "/src/main/resources/mapper")); // 璁剧疆mapperXml鐢熸垚璺緞
+                })
+                // 绛栫暐閰嶇疆
+                .strategyConfig(builder -> {
+                    builder.addInclude(scanner("琛ㄥ悕锛屽涓┖鏍煎垎鍓�").split(" ")) // 璁剧疆闇�瑕佺敓鎴愮殑琛ㄥ悕
+                            .addTablePrefix("sys_") // 璁剧疆杩囨护琛ㄥ墠缂�
+                            // Entity 绛栫暐閰嶇疆
+                            .entityBuilder()
+                            .enableLombok() //寮�鍚� Lombok
+                            .naming(NamingStrategy.underline_to_camel)  //鏁版嵁搴撹〃鏄犲皠鍒板疄浣撶殑鍛藉悕绛栫暐锛氫笅鍒掔嚎杞┘宄板懡
+                            .columnNaming(NamingStrategy.underline_to_camel)    //鏁版嵁搴撹〃瀛楁鏄犲皠鍒板疄浣撶殑鍛藉悕绛栫暐锛氫笅鍒掔嚎杞┘宄板懡
+                            // Mapper 绛栫暐閰嶇疆
+                            .mapperBuilder()
+                            .enableFileOverride() // 瑕嗙洊宸茬敓鎴愭枃浠�
+                            // Service 绛栫暐閰嶇疆
+                            .serviceBuilder()
+                            .enableFileOverride() // 瑕嗙洊宸茬敓鎴愭枃浠�
+                            .formatServiceFileName("%sService") //鏍煎紡鍖� service 鎺ュ彛鏂囦欢鍚嶇О锛�%s杩涜鍖归厤琛ㄥ悕锛屽 UserService
+                            .formatServiceImplFileName("%sServiceImpl") //鏍煎紡鍖� service 瀹炵幇绫绘枃浠跺悕绉帮紝%s杩涜鍖归厤琛ㄥ悕锛屽 UserServiceImpl
+                            // Controller 绛栫暐閰嶇疆
+                            .controllerBuilder()
+                            .enableFileOverride() // 瑕嗙洊宸茬敓鎴愭枃浠�
+                    ;
+                })
+                .execute();
+    }
+
+    /**
+     * <p>
+     * 璇诲彇鎺у埗鍙板唴瀹�
+     * </p>
+     */
+    public static String scanner(String tip) {
+        Scanner scanner = new Scanner(System.in);
+        StringBuilder help = new StringBuilder();
+        help.append("璇疯緭鍏�" + tip + "锛�");
+        System.out.println(help.toString());
+        if (scanner.hasNext()) {
+            String ipt = scanner.next();
+
+            if (StringUtils.isNotBlank(ipt)) {
+                return ipt;
+            }
+        }
+        throw new MybatisPlusException("璇疯緭鍏ユ纭殑" + tip + "锛�");
+    }
+}

--
Gitblit v1.9.3