From ffd0af47ee31a9592cfab56a907e9841a9113c52 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 20 七月 2023 10:37:17 +0800
Subject: [PATCH] 代码提交,前端代码打包

---
 Source/UBCS-WEB/dist/src/util/store.js |  121 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 121 insertions(+), 0 deletions(-)

diff --git a/Source/UBCS-WEB/dist/src/util/store.js b/Source/UBCS-WEB/dist/src/util/store.js
new file mode 100644
index 0000000..6388ec2
--- /dev/null
+++ b/Source/UBCS-WEB/dist/src/util/store.js
@@ -0,0 +1,121 @@
+import {
+    validatenull
+} from '@/util/validate';
+import website from '@/config/website'
+
+const keyName = website.key + '-';
+/**
+ * 瀛樺偍localStorage
+ */
+export const setStore = (params = {}) => {
+    let {
+        name,
+        content,
+        type,
+    } = params;
+    name = keyName + name
+    let obj = {
+        dataType: typeof (content),
+        content: content,
+        type: type,
+        datetime: new Date().getTime()
+    }
+    if (type) window.sessionStorage.setItem(name, JSON.stringify(obj));
+    else window.localStorage.setItem(name, JSON.stringify(obj));
+}
+/**
+ * 鑾峰彇localStorage
+ */
+
+export const getStore = (params = {}) => {
+    let {
+        name,
+        debug
+    } = params;
+    name = keyName + name
+    let obj = {},
+        content;
+    obj = window.sessionStorage.getItem(name);
+    if (validatenull(obj)) obj = window.localStorage.getItem(name);
+    if (validatenull(obj)) return;
+    try {
+        obj = JSON.parse(obj);
+    } catch{
+        return obj;
+    }
+    if (debug) {
+        return obj;
+    }
+    if (obj.dataType == 'string') {
+        content = obj.content;
+    } else if (obj.dataType == 'number') {
+        content = Number(obj.content);
+    } else if (obj.dataType == 'boolean') {
+        content = eval(obj.content);
+    } else if (obj.dataType == 'object') {
+        content = obj.content;
+    }
+    return content;
+}
+/**
+ * 鍒犻櫎localStorage
+ */
+export const removeStore = (params = {}) => {
+    let {
+        name,
+        type
+    } = params;
+    name = keyName + name
+    if (type) {
+        window.sessionStorage.removeItem(name);
+    } else {
+        window.localStorage.removeItem(name);
+    }
+
+}
+
+/**
+ * 鑾峰彇鍏ㄩ儴localStorage
+ */
+export const getAllStore = (params = {}) => {
+    let list = [];
+    let {
+        type
+    } = params;
+    if (type) {
+        for (let i = 0; i <= window.sessionStorage.length; i++) {
+            list.push({
+                name: window.sessionStorage.key(i),
+                content: getStore({
+                    name: window.sessionStorage.key(i),
+                    type: 'session'
+                })
+            })
+        }
+    } else {
+        for (let i = 0; i <= window.localStorage.length; i++) {
+            list.push({
+                name: window.localStorage.key(i),
+                content: getStore({
+                    name: window.localStorage.key(i),
+                })
+            })
+
+        }
+    }
+    return list;
+
+}
+
+/**
+ * 娓呯┖鍏ㄩ儴localStorage
+ */
+export const clearStore = (params = {}) => {
+    let { type } = params;
+    if (type) {
+        window.sessionStorage.clear();
+    } else {
+        window.localStorage.clear()
+    }
+
+}
\ No newline at end of file

--
Gitblit v1.9.3