diff --git a/src/App.vue b/src/App.vue
index 5916eaa..4497bf4 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,30 +1,32 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
+
+
+
- {{ goods.name }}
+
+ {{ goods.name }}
+
+
+
+
+ {{ goods.description }}
+
+
+
+ 库存:
+
+ {{ goods.count }}
+
+ 不限
+
+
+
+
+
diff --git a/src/data/constants.ts b/src/data/constants.ts
index c60ef0c..e693dc7 100644
--- a/src/data/constants.ts
+++ b/src/data/constants.ts
@@ -8,6 +8,8 @@ const failoverAPI = `https://failover-api.vtsuru.suki.club/api/`
export const isBackendUsable = ref(true)
export const AVATAR_URL = 'https://workers.vrp.moe/api/bilibili/avatar/'
+export const FILE_BASE_URL = 'https://files.vtsuru.live'
+export const IMGUR_URL = FILE_BASE_URL + '/imgur/'
export const apiFail = ref(false)
export const BASE_API = () => (process.env.NODE_ENV === 'development' ? debugAPI : apiFail.value ? failoverAPI : releseAPI)
diff --git a/src/router/user.ts b/src/router/user.ts
index 9bb7cad..b10c1de 100644
--- a/src/router/user.ts
+++ b/src/router/user.ts
@@ -37,6 +37,15 @@ export default {
title: '日程',
keepAlive: true,
},
+ children: [
+ {
+ path: 'ics',
+ beforeEnter(to: any) {
+ // 直接重定向到外部 URL
+ window.location.href = 'https://vtsuru.live/api/schedule/get-ics?id=' + to.query.id
+ },
+ },
+ ],
},
],
}
diff --git a/src/store/useMusicRequest.ts b/src/store/useMusicRequest.ts
index 007dcf0..d325317 100644
--- a/src/store/useMusicRequest.ts
+++ b/src/store/useMusicRequest.ts
@@ -66,18 +66,21 @@ export const useMusicRequestProvider = defineStore('MusicRequest', () => {
const message = useMessage()
function addWaitingMusic(info: WaitMusicInfo) {
+ console.log(settings.value.orderMusicFirst + ' ' + isPlayingOrderMusic.value)
if ((settings.value.orderMusicFirst && !isPlayingOrderMusic.value) || aplayerRef.value?.audio.paused == true) {
playMusic(info.music)
+ isPlayingOrderMusic.value = true
console.log(`正在播放 [${info.from.name}] 点的 ${info.music.name} - ${info.music.author?.join('/')}`)
+ message.success(`正在播放 [${info.from.name}] 点的 ${info.music.name} - ${info.music.author?.join('/')}`)
} else {
waitingMusics.value.push(info)
message.success(`[${info.from.name}] 点了一首 ${info.music.name} - ${info.music.author?.join('/')}`)
}
}
function onMusicEnd() {
+ isPlayingOrderMusic.value = false
if (!playWaitingMusic()) {
- isPlayingOrderMusic.value = false
- if (currentOriginMusic) {
+ if (currentOriginMusic.value) {
currentOriginMusic.value = undefined
}
setTimeout(() => {
@@ -139,6 +142,14 @@ export const useMusicRequestProvider = defineStore('MusicRequest', () => {
message.error('设置音频输出设备失败: ' + err)
}
}
+ function nextMusic() {
+ if (waitingMusics.value.length > 0) {
+ onMusicEnd()
+ } else {
+ isPlayingOrderMusic.value = false
+ aplayerRef.value?.onAudioEnded()
+ }
+ }
return {
waitingMusics,
@@ -155,6 +166,7 @@ export const useMusicRequestProvider = defineStore('MusicRequest', () => {
onMusicEnd,
onMusicPlay,
pauseMusic,
+ nextMusic,
aplayerRef,
}
})
diff --git a/src/views/BiliAuthView.vue b/src/views/BiliAuthView.vue
index c4064aa..6048879 100644
--- a/src/views/BiliAuthView.vue
+++ b/src/views/BiliAuthView.vue
@@ -42,6 +42,8 @@ function onStartVerify() {
currentStep.value = 1
timer.value = setInterval(checkStatus, 2500)
startModel.value = data.data
+ } else {
+ message.error('无法开启认证流程: ' + data.message)
}
})
}
@@ -154,7 +156,7 @@ onMounted(async () => {
你的登陆链接为:
- 复制登陆链接
+ 复制登陆链接
前往个人中心
diff --git a/src/views/ManageLayout.vue b/src/views/ManageLayout.vue
index 49bb108..d91b8cc 100644
--- a/src/views/ManageLayout.vue
+++ b/src/views/ManageLayout.vue
@@ -409,6 +409,9 @@ function logout() {
cookie.value = undefined
window.location.reload()
}
+function onNextMusic() {
+ musicRquestStore.nextMusic();
+}
onMounted(() => {
if (accountInfo.value?.isEmailVerified == false) {
@@ -532,7 +535,7 @@ onMounted(() => {
/>
队列: {{ musicRquestStore.waitingMusics.length }}
- 0 ? musicRquestStore.onMusicEnd() : musicRquestStore.aplayerRef?.onAudioEnded()"> 下一首
+ 下一首
@@ -550,7 +553,7 @@ onMounted(() => {
- 正在请求账户数据...
+ 正在请求账户数据...
diff --git a/src/views/manage/PointManage.vue b/src/views/manage/PointManage.vue
index 2bb77aa..ab208c3 100644
--- a/src/views/manage/PointManage.vue
+++ b/src/views/manage/PointManage.vue
@@ -1,10 +1,11 @@
@@ -172,25 +259,44 @@ function OnFileListChange(files: UploadFileInfo[]) {
添加礼物
+
+
+
+
+ dropDownActions[v].action(item)">
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
+
+ 当前封面:
+
+
- + 上传图片
+ + {{ currentGoodsModel.cover ? '更换' : '上传' }}封面
-
+
虚拟礼物
实体礼物
-
+
- (addGoodsModel.collectUrl = v == 1 ? '' : undefined)">
+ (currentGoodsModel.collectUrl = v == 1 ? '' : undefined)">
通过本站收集收货地址
使用站外链接收集地址
@@ -225,12 +331,12 @@ function OnFileListChange(files: UploadFileInfo[]) {
-
+
-
+
- 尝试将收集链接嵌入到网页中
+ 尝试将收集链接嵌入到网页中
@@ -240,20 +346,20 @@ function OnFileListChange(files: UploadFileInfo[]) {
-
-
+
+
+ 礼物内容
+
+
+
+
+ 虚拟礼物的具体内容, 网盘链接什么之类的
+
+
+
- 添加
+ 添加