From ff7a1e0a1a3f37b1e7f1bc221b7d41939337b4ac Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 15 八月 2024 17:44:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/plt-web/plt-web-ui/src/util/func.js | 78 +++++++++++++++++++++++++++++++++++++++
1 files changed, 78 insertions(+), 0 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 9c9f00d..03c02d3 100644
--- a/Source/plt-web/plt-web-ui/src/util/func.js
+++ b/Source/plt-web/plt-web-ui/src/util/func.js
@@ -1,7 +1,32 @@
/**
* 閫氱敤宸ュ叿绫�
*/
+import CryptoJS from 'crypto-js'
+
export default class func {
+
+ /**
+ * 鍗曢�夎〃鏍艰
+ * 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);
+ }
+
+ setLastIndex(row.$index);
+ }
+
/**
* 涓嶄负绌�
* @param val
@@ -36,6 +61,14 @@
return true;
}
return false;
+ }
+
+ /**
+ * 鍒ゆ柇瀵硅薄涓虹┖
+ */
+
+ static isEmptyObject(obj) {
+ return Object.keys(obj).length === 0;
}
/**
@@ -176,5 +209,50 @@
return item[attr] !== array[0][attr];
});
}
+
+ /**
+ * 3des鍔犲瘑
+ * @param message
+ * @param key
+ * @returns {string}
+ */
+ encryptByDES(message, key) {
+ const keyHex = CryptoJS.enc.Utf8.parse(key);
+ const encrypted = CryptoJS.DES.encrypt(message, keyHex, {
+ mode: CryptoJS.mode.ECB,
+ padding: CryptoJS.pad.Pkcs7
+ });
+ return encrypted.toString();
}
+ /**
+ * HmacMD5鍔犲瘑
+ * @param message
+ * @param key
+ * @returns {string}
+ * @constructor
+ */
+ static HmacMD5(message, key) {
+ const encrypted = CryptoJS.HmacMD5(message,key);
+ return encrypted.toString();
+ }
+
+ /**
+ * aes鍔犲瘑
+ * @param data
+ * @param secretKey
+ * @returns {string}
+ */
+ static encryptData(data, secretKey) {
+ const key = CryptoJS.enc.Utf8.parse(secretKey);
+ const iv = CryptoJS.enc.Utf8.parse(secretKey.substr(0, 16)); // AES block size is 128 bits (16 bytes)
+ const encrypted = CryptoJS.AES.encrypt(data, key, {
+ iv: iv,
+ mode: CryptoJS.mode.CBC,
+ padding: CryptoJS.pad.Pkcs7
+ });
+ return encrypted.toString();
+ }
+}
+
+
--
Gitblit v1.9.3