From 7577e0d40354021d70b78d58b712ff8c2e8ad485 Mon Sep 17 00:00:00 2001
From: ludc <ludc@vci-tech.com>
Date: 星期五, 03 一月 2025 10:47:33 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/plt-web/plt-web-ui/src/util/func.js |   92 ++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 88 insertions(+), 4 deletions(-)

diff --git a/Source/plt-web/plt-web-ui/src/util/func.js b/Source/plt-web/plt-web-ui/src/util/func.js
index e342467..aa606d5 100644
--- a/Source/plt-web/plt-web-ui/src/util/func.js
+++ b/Source/plt-web/plt-web-ui/src/util/func.js
@@ -2,8 +2,44 @@
  * 閫氱敤宸ュ叿绫�
  */
 import CryptoJS from 'crypto-js'
+import {validatenull} from "@/util/validate";
+import {getStore} from "@/util/store";
+import {getIcons} from "@/api/UI/Icons";
+import store from "@/store/index"
 
 export default class func {
+
+  static getSvgList() {
+    const fs = require('fs');
+    const path = require('path');
+
+    // 鎸囧畾鏂囦欢澶硅矾寰�
+    const directoryPath = "../config/svg"; // 淇敼涓轰綘鐨勬枃浠跺す璺緞
+
+    // 瀛樺偍 .svg 鏂囦欢璺緞鐨勬暟缁�
+    let svgFiles = [];
+
+    // 璇诲彇鏂囦欢澶�
+    fs.readdir(directoryPath, (err, files) => {
+      if (err) {
+        return console.error('鏃犳硶璇诲彇鐩綍: ' + err);
+      }
+
+      // 閬嶅巻鏂囦欢
+      files.forEach(file => {
+        // 妫�鏌ユ枃浠跺悗缂�鍚�
+        if (path.extname(file).toLowerCase() === '.svg') {
+          // 鏋勫缓鏂囦欢鐨勫畬鏁磋矾寰�
+          const filePath = path.join(directoryPath, file);
+          svgFiles.push(filePath);
+        }
+      });
+
+      // 杈撳嚭缁撴灉
+      console.log(JSON.stringify(svgFiles, null, 2));
+    });
+  }
+
   /**
    * 鍗曢�夎〃鏍艰
    * 鏃堕棿鎴虫牸寮忓寲
@@ -37,15 +73,17 @@
    */
 
   static rowClickHandler(row, CrudRef, lastIndex, setLastIndex, setSelectList) {
-    if (lastIndex === row.$index) {
+    /*if (lastIndex === row.$index) {
       setSelectList();
       CrudRef.clearSelection();
     } else {
       setSelectList();
       CrudRef.clearSelection();
       CrudRef.toggleRowSelection(row);
-    }
-
+    }*/
+    setSelectList();
+    CrudRef.toggleSelection();
+    CrudRef.toggleRowSelection(row);//閫変腑褰撳墠琛�
     setLastIndex(row.$index);
   }
 
@@ -90,7 +128,11 @@
    */
 
   static isEmptyObject(obj) {
-    return Object.keys(obj).length === 0;
+    if (obj) {
+      return Object.keys(obj).length === 0;
+    } else {
+      return true;
+    }
   }
 
   /**
@@ -275,6 +317,48 @@
     });
     return encrypted.toString();
   }
+
+  /* 鏍规嵁name鑾峰彇svg鍥炬爣
+  * @param name
+  * @returns {string}
+  */
+  static getSVGByName(name) {
+    let svgHtml = '';
+    if(name && name.indexOf(':')!=-1) {
+      let iconList = getStore({name: 'icons'});
+      if (iconList && iconList.length > 0) {
+        let libName = name.split(':')[0];
+        let currentLic = iconList.find(item => item.lable == libName);
+        if (currentLic && currentLic.list) {
+          currentLic.list.find(item => {
+            if (item.name == name) {
+              svgHtml = item.content;
+            }
+            return item.name == name;
+          })
+        }
+      }else {
+        getIcons().then(res => {
+          store.dispatch("setIcons", res.data.data);
+          let iconList = res.data.data;
+          if (iconList && iconList.length > 0) {
+            let libName = name.split(':')[0];
+            let currentLic = iconList.find(item => item.lable == libName);
+            if (currentLic.list) {
+              currentLic.list.find(item => {
+                if (item.name == name) {
+                  svgHtml = item.content;
+                }
+                return item.name == name;
+              })
+            }
+          }
+          return svgHtml;
+        })
+      }
+    }
+    return svgHtml;
+  }
 }
 
 

--
Gitblit v1.9.3