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 | 135 ++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 132 insertions(+), 3 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 32bf2bd..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,91 @@ * 閫氱敤宸ュ叿绫� */ 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}`; + } + + /** + * 鍗曢�夎〃鏍艰 + * row 褰撳墠琛屾暟鎹� + * CrudRef 琛ㄦ牸ref缁戝畾鍊� + * lastIndex 鍒ゆ柇浜屾鐐瑰嚮index鏄惁鍜岀涓�娆$偣鍑讳竴鑷� + * setLastIndex 鏇存柊lastIndex鍊� + * setSelectList 灏嗕笅鎷夋淇濆瓨鏁扮粍缃┖ + */ + + static rowClickHandler(row, CrudRef, lastIndex, setLastIndex, setSelectList) { + /*if (lastIndex === row.$index) { + setSelectList(); + CrudRef.clearSelection(); + } else { + setSelectList(); + CrudRef.clearSelection(); + CrudRef.toggleRowSelection(row); + }*/ + setSelectList(); + CrudRef.toggleSelection(); + CrudRef.toggleRowSelection(row);//閫変腑褰撳墠琛� + setLastIndex(row.$index); + } + /** * 涓嶄负绌� * @param val @@ -45,7 +128,11 @@ */ static isEmptyObject(obj) { - return Object.keys(obj).length === 0; + if (obj) { + return Object.keys(obj).length === 0; + } else { + return true; + } } /** @@ -200,7 +287,7 @@ padding: CryptoJS.pad.Pkcs7 }); return encrypted.toString(); -} + } /** * HmacMD5鍔犲瘑 @@ -210,7 +297,7 @@ * @constructor */ static HmacMD5(message, key) { - const encrypted = CryptoJS.HmacMD5(message,key); + const encrypted = CryptoJS.HmacMD5(message, key); return encrypted.toString(); } @@ -230,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