From 5dfc234ab0d4cefc6602ce49745f9a63b8af7ddb Mon Sep 17 00:00:00 2001
From: wangxiangwen4 <1906413238@qq.com>
Date: Mon, 21 Jul 2025 13:59:21 +0800
Subject: [PATCH] =?UTF-8?q?=E4=B8=AD=E5=A5=96+=E6=B4=BB=E5=8A=A8=E6=8C=81?=
=?UTF-8?q?=E4=B9=85=E5=8C=96+=E5=AF=BC=E5=87=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
activitylink/src/api/manage/win.js | 10 ++
activitylink/src/stone/winStone.js | 48 +++++++++
.../src/views/zhongchou/activity/detail/index.vue | 15 ++-
.../src/views/zhongchou/activity/index.vue | 3 -
activitylink/src/views/zhongchou/winning/index.vue | 109 ++++++++++++++++-----
5 files changed, 155 insertions(+), 30 deletions(-)
create mode 100644 activitylink/src/stone/winStone.js
diff --git a/activitylink/src/api/manage/win.js b/activitylink/src/api/manage/win.js
index 813e78d..a62d6fb 100644
--- a/activitylink/src/api/manage/win.js
+++ b/activitylink/src/api/manage/win.js
@@ -24,4 +24,14 @@ export function getWinLevelList(){
url: '/admin/grade/allGradeName',
method: 'post',
})
+}
+
+export function exportWinExcel(data)
+{
+ return request({
+ url: '/admin/win/export',
+ method: 'post',
+ data,
+ responseType: 'blob'
+ })
}
\ No newline at end of file
diff --git a/activitylink/src/stone/winStone.js b/activitylink/src/stone/winStone.js
new file mode 100644
index 0000000..d7defb1
--- /dev/null
+++ b/activitylink/src/stone/winStone.js
@@ -0,0 +1,48 @@
+import { defineStore } from "pinia";
+import { ref } from 'vue';
+import localforage from 'localforage';
+
+// 创建本地存储实例
+const winStorage = localforage.createInstance({
+ name: 'winStore',
+ storeName: 'winData'
+});
+
+export const useWinStone = defineStore('winStone', () => {
+ // 持久化参数:searchgradeId
+ const searchgradeId = ref(localStorage.getItem('searchgradeId') || '');
+
+ // 设置 searchgradeId 并持久化
+ const setSearchgradeId = (value) => {
+ searchgradeId.value = value;
+ localStorage.setItem('searchgradeId', value);
+ winStorage.setItem('searchgradeId', value).catch((err) => {
+ console.error('保存 searchgradeId 到 localforage 失败:', err);
+ });
+ };
+
+ // 初始化恢复数据
+ const initialize = async () => {
+ try {
+ const storedgradeId = await winStorage.getItem('searchgradeId');
+ if (storedgradeId !== null) {
+ searchgradeId.value = storedgradeId;
+ }
+ } catch (error) {
+ console.warn('从 localforage 恢复失败,尝试从 localStorage 恢复');
+ const localStoragegradeId = localStorage.getItem('searchgradeId');
+ if (localStoragegradeId !== null) {
+ searchgradeId.value = localStoragegradeId;
+ }
+ }
+ };
+
+ // 初始化时恢复数据
+ initialize();
+
+ // 暴露出去
+ return {
+ searchgradeId,
+ setSearchgradeId,
+ };
+});
\ No newline at end of file
diff --git a/activitylink/src/views/zhongchou/activity/detail/index.vue b/activitylink/src/views/zhongchou/activity/detail/index.vue
index b23e502..5f60233 100644
--- a/activitylink/src/views/zhongchou/activity/detail/index.vue
+++ b/activitylink/src/views/zhongchou/activity/detail/index.vue
@@ -70,7 +70,7 @@