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 | 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 112 insertions(+), 6 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 03c02d3..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,66 @@ * 閫氱敤宸ュ叿绫� */ 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)); + }); + } + + /** + * 鍗曢�夎〃鏍艰 + * 鏃堕棿鎴虫牸寮忓寲 + */ + static formattedDate(val) { + // 鍒涘缓涓�涓� Date 瀵硅薄 + const date = new Date(val); + + // 鏍煎紡鍖栨椂闂寸殑杈呭姪鍑芥暟 + const formatNumber = (number) => String(number).padStart(2, '0'); + + // 鎻愬彇骞舵牸寮忓寲骞淬�佹湀銆佹棩銆佸皬鏃躲�佸垎閽熷拰绉� + const year = date.getFullYear(); + const month = formatNumber(date.getMonth() + 1); // 鏈堜唤浠�0寮�濮嬶紝闇�瑕�+1 + const day = formatNumber(date.getDate()); + const hours = formatNumber(date.getHours()); + const minutes = formatNumber(date.getMinutes()); + const seconds = formatNumber(date.getSeconds()); + + // 鏍煎紡鍖栦负 YYYY-MM-DD HH:MM:SS + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } /** * 鍗曢�夎〃鏍艰 @@ -15,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); } @@ -68,7 +128,11 @@ */ static isEmptyObject(obj) { - return Object.keys(obj).length === 0; + if (obj) { + return Object.keys(obj).length === 0; + } else { + return true; + } } /** @@ -223,7 +287,7 @@ padding: CryptoJS.pad.Pkcs7 }); return encrypted.toString(); -} + } /** * HmacMD5鍔犲瘑 @@ -233,7 +297,7 @@ * @constructor */ static HmacMD5(message, key) { - const encrypted = CryptoJS.HmacMD5(message,key); + const encrypted = CryptoJS.HmacMD5(message, key); return encrypted.toString(); } @@ -253,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