From 2ebf0d9c4f4024d363f7e26c3847a3280cb22b43 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期五, 12 九月 2025 11:55:28 +0800
Subject: [PATCH] 脚本打包配置

---
 multiple/assets/logo/南通云从工业互联网有限公司.png  |    0 
 multiple/config.json                    |   34 +++++++++++
 multiple/multiple-build.js              |   86 ++++++++++++++++++++++++++++
 multiple/assets/favicon/ZQHXico.ico     |    0 
 multiple/assets/screen/ZQHXView.png     |    0 
 multiple/assets/logo/HYSNLogo.png       |    0 
 multiple/assets/favicon/HYSNico.ico     |    0 
 multiple/assets/logo/新缆(江苏)数字科技有限公司.png |    0 
 multiple/assets/favicon/WDSYico.ico     |    0 
 multiple/assets/favicon/favicon.ico     |    0 
 multiple/assets/logo/logo.png           |    0 
 src/main.js                             |    2 
 index.html                              |    4 
 multiple/assets/logo/芯导软件(江苏)有限公司.png   |    0 
 multiple/assets/screen/WDSYView.png     |    0 
 package.json                            |    4 
 multiple/assets/screen/HYSNView.png     |    0 
 vite.config.js                          |   10 ++-
 multiple/assets/favicon/JZYJico.ico     |    0 
 multiple/assets/screen/JZYJView.png     |    0 
 20 files changed, 131 insertions(+), 9 deletions(-)

diff --git a/index.html b/index.html
index d14eb4b..a684690 100644
--- a/index.html
+++ b/index.html
@@ -8,8 +8,8 @@
       name="viewport"
       content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
     />
-    <link rel="icon" href="/ZQHXico.ico" />
-    <title>娴嬭瘯杩涢攢瀛樼鐞嗙郴缁�</title>
+    <link rel="icon" href="/favicon.ico" />
+    <title>%VITE_APP_TITLE%</title>
     <!--[if lt IE 11
       ]><script>
         window.location.href = "/html/ie.html";
diff --git a/multiple/assets/favicon/HYSNico.ico b/multiple/assets/favicon/HYSNico.ico
new file mode 100644
index 0000000..70148cc
--- /dev/null
+++ b/multiple/assets/favicon/HYSNico.ico
Binary files differ
diff --git a/multiple/assets/favicon/JZYJico.ico b/multiple/assets/favicon/JZYJico.ico
new file mode 100644
index 0000000..f5a7820
--- /dev/null
+++ b/multiple/assets/favicon/JZYJico.ico
Binary files differ
diff --git a/multiple/assets/favicon/WDSYico.ico b/multiple/assets/favicon/WDSYico.ico
new file mode 100644
index 0000000..bfad99c
--- /dev/null
+++ b/multiple/assets/favicon/WDSYico.ico
Binary files differ
diff --git a/multiple/assets/favicon/ZQHXico.ico b/multiple/assets/favicon/ZQHXico.ico
new file mode 100644
index 0000000..748238e
--- /dev/null
+++ b/multiple/assets/favicon/ZQHXico.ico
Binary files differ
diff --git a/multiple/assets/favicon/favicon.ico b/multiple/assets/favicon/favicon.ico
new file mode 100644
index 0000000..e263760
--- /dev/null
+++ b/multiple/assets/favicon/favicon.ico
Binary files differ
diff --git a/multiple/assets/logo/HYSNLogo.png b/multiple/assets/logo/HYSNLogo.png
new file mode 100644
index 0000000..70148cc
--- /dev/null
+++ b/multiple/assets/logo/HYSNLogo.png
Binary files differ
diff --git a/multiple/assets/logo/logo.png b/multiple/assets/logo/logo.png
new file mode 100644
index 0000000..e263760
--- /dev/null
+++ b/multiple/assets/logo/logo.png
Binary files differ
diff --git "a/multiple/assets/logo/\345\215\227\351\200\232\344\272\221\344\273\216\345\267\245\344\270\232\344\272\222\350\201\224\347\275\221\346\234\211\351\231\220\345\205\254\345\217\270.png" "b/multiple/assets/logo/\345\215\227\351\200\232\344\272\221\344\273\216\345\267\245\344\270\232\344\272\222\350\201\224\347\275\221\346\234\211\351\231\220\345\205\254\345\217\270.png"
new file mode 100644
index 0000000..d7ecf59
--- /dev/null
+++ "b/multiple/assets/logo/\345\215\227\351\200\232\344\272\221\344\273\216\345\267\245\344\270\232\344\272\222\350\201\224\347\275\221\346\234\211\351\231\220\345\205\254\345\217\270.png"
Binary files differ
diff --git "a/multiple/assets/logo/\346\226\260\347\274\206\357\274\210\346\261\237\350\213\217\357\274\211\346\225\260\345\255\227\347\247\221\346\212\200\346\234\211\351\231\220\345\205\254\345\217\270.png" "b/multiple/assets/logo/\346\226\260\347\274\206\357\274\210\346\261\237\350\213\217\357\274\211\346\225\260\345\255\227\347\247\221\346\212\200\346\234\211\351\231\220\345\205\254\345\217\270.png"
new file mode 100644
index 0000000..4481de2
--- /dev/null
+++ "b/multiple/assets/logo/\346\226\260\347\274\206\357\274\210\346\261\237\350\213\217\357\274\211\346\225\260\345\255\227\347\247\221\346\212\200\346\234\211\351\231\220\345\205\254\345\217\270.png"
Binary files differ
diff --git "a/multiple/assets/logo/\350\212\257\345\257\274\350\275\257\344\273\266\357\274\210\346\261\237\350\213\217\357\274\211\346\234\211\351\231\220\345\205\254\345\217\270.png" "b/multiple/assets/logo/\350\212\257\345\257\274\350\275\257\344\273\266\357\274\210\346\261\237\350\213\217\357\274\211\346\234\211\351\231\220\345\205\254\345\217\270.png"
new file mode 100644
index 0000000..5b49e96
--- /dev/null
+++ "b/multiple/assets/logo/\350\212\257\345\257\274\350\275\257\344\273\266\357\274\210\346\261\237\350\213\217\357\274\211\346\234\211\351\231\220\345\205\254\345\217\270.png"
Binary files differ
diff --git a/multiple/assets/screen/HYSNView.png b/multiple/assets/screen/HYSNView.png
new file mode 100644
index 0000000..ccd5fcc
--- /dev/null
+++ b/multiple/assets/screen/HYSNView.png
Binary files differ
diff --git a/multiple/assets/screen/JZYJView.png b/multiple/assets/screen/JZYJView.png
new file mode 100644
index 0000000..f64d46b
--- /dev/null
+++ b/multiple/assets/screen/JZYJView.png
Binary files differ
diff --git a/multiple/assets/screen/WDSYView.png b/multiple/assets/screen/WDSYView.png
new file mode 100644
index 0000000..19ec19d
--- /dev/null
+++ b/multiple/assets/screen/WDSYView.png
Binary files differ
diff --git a/multiple/assets/screen/ZQHXView.png b/multiple/assets/screen/ZQHXView.png
new file mode 100644
index 0000000..1830213
--- /dev/null
+++ b/multiple/assets/screen/ZQHXView.png
Binary files differ
diff --git a/multiple/config.json b/multiple/config.json
new file mode 100644
index 0000000..cca2b5c
--- /dev/null
+++ b/multiple/config.json
@@ -0,0 +1,34 @@
+{
+  "default": {
+    "env": {
+      "VITE_APP_TITLE": "鑺浜戯紙绠$悊淇℃伅绯荤粺锛�"
+    },
+    "screen": "screen/JZYJView.png",
+    "logo": "logo/HYSNLogo.png",
+    "favicon": "favicon/HYSNico.ico"
+  },
+  "AAA": {
+    "env": {
+      "VITE_APP_TITLE": "闈栬竟鍘夸紵寰峰疄涓氭湁闄愬叕鍙�",
+      "VITE_BASE_API": "http://127.0.0.1:9036"
+    },
+    "screen": "screen/HYSNView.png",
+    "logo": "logo/鍗楅�氫簯浠庡伐涓氫簰鑱旂綉鏈夐檺鍏徃.png",
+    "favicon": "favicon/WDSYico.ico"
+  },
+  "BBB": {
+    "env": {
+      "VITE_APP_TITLE": "闈栬竟鍘夸腑寮烘亽鍏寸幆淇濈鎶�鏈夐檺鍏徃",
+      "VITE_BASE_API": "http://127.0.0.1:9036"
+    },
+    "screen": "screen/ZQHXView.png",
+    "logo": "logo/鏂扮紗锛堟睙鑻忥級鏁板瓧绉戞妧鏈夐檺鍏徃.png",
+    "favicon": "favicon/HYSNico.ico"
+  },
+
+
+
+  "screen": "/src/assets/images/login-background.png",
+  "logo": "/src/assets/logo/logo.png",
+  "favicon": "/public/favicon.ico"
+}
diff --git a/multiple/multiple-build.js b/multiple/multiple-build.js
new file mode 100644
index 0000000..8e078e1
--- /dev/null
+++ b/multiple/multiple-build.js
@@ -0,0 +1,86 @@
+import fs from 'fs/promises';
+import fsSync from 'fs';
+import path from 'path';
+import { fileURLToPath } from 'url';
+import { execSync } from "child_process";
+
+// 鑾峰彇 __dirname
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+
+// 璇诲彇 JSON 閰嶇疆
+const data = await fs.readFile(path.join(__dirname, 'config.json'), 'utf-8');
+const config = JSON.parse(data);
+
+// 椤圭洰璺緞
+const rootPath = path.resolve(__dirname, '..');
+const resourcePath = path.join(rootPath, 'multiple', 'assets');
+const replacePath = path.join(rootPath, 'replace');
+
+// 鑾峰彇鍛戒护琛屽弬鏁�
+const params = parseArgs(process.argv);
+const company = params["company"] ?? "default";
+const companyMap = config[company];
+
+const envFilePath = path.join(process.cwd(), '.env.production.local');
+
+try {
+    // 1锔忊儯 鐢熸垚 .env
+    console.log("=======鐢熸垚.env=======");
+    const envContent = Object.entries(companyMap.env)
+        .map(([key, value]) => `${key}='${value}'`)
+        .join('\n') + '\n';
+    await fs.writeFile(envFilePath, envContent, 'utf-8');
+
+    // 2锔忊儯 澶囦唤鍘熷璧勬簮骞舵浛鎹�
+    console.log("=======淇敼璧勬簮=======");
+    for (const [key, value] of Object.entries(companyMap)) {
+        if (key === 'env') continue;
+
+        const originFile = path.join(rootPath, config[key]);
+        const backupFile = path.join(replacePath, config[key]);
+        const replaceFile = path.join(resourcePath, companyMap[key]);
+
+        await fs.mkdir(path.dirname(backupFile), { recursive: true });
+        await fs.copyFile(originFile, backupFile);
+        await fs.copyFile(replaceFile, originFile);
+    }
+
+    console.log("=====寮�濮嬫墦鍖�======");
+    execSync("vite build", { stdio: "inherit" });
+    console.log("=====鎵撳寘瀹屾垚======");
+} finally {
+    console.log("=====鎭㈠璧勬簮======");
+
+    // 鍒犻櫎涓存椂 .env 鏂囦欢
+    if (fsSync.existsSync(envFilePath)) {
+        await fs.unlink(envFilePath);
+        console.log(`馃棏锔� 宸插垹闄� ${envFilePath}`);
+    }
+
+    // 鎭㈠璧勬簮鏂囦欢
+    if (fsSync.existsSync(replacePath)) {
+        for (const [key, value] of Object.entries(companyMap)) {
+            if (key === 'env') continue;
+
+            const originFile = path.join(rootPath, config[key]);
+            const backupFile = path.join(replacePath, config[key]);
+
+            await fs.copyFile(backupFile, originFile);
+        }
+        await fs.rm(replacePath, { recursive: true, force: true });
+        console.log(`馃棏锔� 宸插垹闄� ${replacePath}`);
+    }
+}
+
+// 绠�鍗曞懡浠よ鍙傛暟瑙f瀽
+function parseArgs(argv) {
+    const params = {};
+    for (const arg of argv.slice(2)) {
+        if (arg.startsWith('--')) {
+            const [key, value] = arg.slice(2).split('=');
+            params[key] = value ?? true;
+        }
+    }
+    return params;
+}
diff --git a/package.json b/package.json
index 9f1dc17..b57034d 100644
--- a/package.json
+++ b/package.json
@@ -1,13 +1,13 @@
 {
   "name": "ruoyi",
   "version": "3.8.9",
-  "description": "娴嬭瘯杩涢攢瀛樼鐞嗙郴缁�",
+  "description": "涓皬浼佷笟鏁板瓧鍖栬浆鍨嬩簩绾у椁愬寘",
   "author": "鑻ヤ緷",
   "license": "MIT",
   "type": "module",
   "scripts": {
     "dev": "vite",
-    "build:prod": "vite build",
+    "build:prod": "node multiple/multiple-build.js",
     "build:stage": "vite build --mode staging",
     "preview": "vite preview"
   },
diff --git a/src/main.js b/src/main.js
index da4c54d..abaac2e 100644
--- a/src/main.js
+++ b/src/main.js
@@ -76,7 +76,7 @@
 app.config.globalProperties.addDateRange = addDateRange;
 app.config.globalProperties.selectDictLabel = selectDictLabel;
 app.config.globalProperties.selectDictLabels = selectDictLabels;
-app.config.globalProperties.javaApi = "http://114.132.189.42:9037";
+app.config.globalProperties.javaApi = __BASE_API__;
 app.config.globalProperties.HaveJson = (val) => {
   return JSON.parse(JSON.stringify(val));
 };
diff --git a/vite.config.js b/vite.config.js
index b4b6129..c548178 100644
--- a/vite.config.js
+++ b/vite.config.js
@@ -7,11 +7,13 @@
   const env = loadEnv(mode, process.cwd());
   const { VITE_APP_ENV } = env;
   const baseUrl =
-    VITE_APP_ENV == "development"
-      ? "http://114.132.189.42:9036" // 寮�鍙戠幆澧冨悗绔帴鍙�
-      : "http://114.132.189.42:9036"; // 鐢熶骇鐜鍚庣鎺ュ彛
-
+      env.VITE_APP_ENV === "development"
+          ? "http://127.0.0.1:9036"
+          : env.VITE_BASE_API;
   return {
+    define:{
+      __BASE_API__: JSON.stringify(baseUrl)
+    },
     // 閮ㄧ讲鐢熶骇鐜鍜屽紑鍙戠幆澧冧笅鐨刄RL銆�
     // 榛樿鎯呭喌涓嬶紝vite 浼氬亣璁句綘鐨勫簲鐢ㄦ槸琚儴缃插湪涓�涓煙鍚嶇殑鏍硅矾寰勪笂
     // 渚嬪 https://www.ruoyi.vip/銆傚鏋滃簲鐢ㄨ閮ㄧ讲鍦ㄤ竴涓瓙璺緞涓婏紝浣犲氨闇�瑕佺敤杩欎釜閫夐」鎸囧畾杩欎釜瀛愯矾寰勩�備緥濡傦紝濡傛灉浣犵殑搴旂敤琚儴缃插湪 https://www.ruoyi.vip/admin/锛屽垯璁剧疆 baseUrl 涓� /admin/銆�

--
Gitblit v1.9.3