feat: 添加签到功能及相关设置

- 更新 .gitignore,添加 SpecStory 说明文件
- 在 App.vue 中引入 NGlobalStyle 组件
- 更新 api-models.ts,添加签到相关数据模型
- 在 CheckInSettings.vue 中实现签到功能的配置界面
- 添加签到排行榜功能,允许用户查看签到情况
- 更新 PointHistoryCard.vue,增加签到记录显示
- 在 PointSettings.vue 中添加签到相关设置项
- 更新路由,添加签到排行页面
This commit is contained in:
2025-05-01 08:18:58 +08:00
parent 6160c89c68
commit f525bbb759
20 changed files with 1479 additions and 761 deletions

View File

@@ -12,6 +12,7 @@
Person48Filled,
VideoAdd20Filled,
WindowWrench20Filled,
CheckmarkCircle24Filled,
} from '@vicons/fluent';
import { BrowsersOutline, Chatbox, Home, Moon, MusicalNote, Sunny } from '@vicons/ionicons5';
import { useElementSize, useStorage } from '@vueuse/core';
@@ -117,6 +118,11 @@
key: 'user-goods', icon: renderIcon(BookCoins20Filled),
show: userInfo.value?.extra?.enableFunctions.includes(FunctionTypes.Point)
},
{
label: () => h(RouterLink, { to: { name: 'user-checkin' } }, { default: () => '签到排行' }),
key: 'user-checkin', icon: renderIcon(CheckmarkCircle24Filled),
show: userInfo.value?.extra?.allowCheckInRanking
},
].filter(option => option.show !== false) as MenuOption[]; // 过滤掉 show 为 false 的菜单项
}