From 3e192eaaae8082392b775d2910c6a74678d9e293 Mon Sep 17 00:00:00 2001 From: Megghy Date: Mon, 15 Apr 2024 23:02:58 +0800 Subject: [PATCH] fix liverequest sort --- src/views/obs/LiveRequestOBS.vue | 4 +++- src/views/open_live/LiveRequest.vue | 30 +++++++++++++++++++++++++---- 2 files changed, 29 insertions(+), 5 deletions(-) diff --git a/src/views/obs/LiveRequestOBS.vue b/src/views/obs/LiveRequestOBS.vue index b5eb1ee..86c0093 100644 --- a/src/views/obs/LiveRequestOBS.vue +++ b/src/views/obs/LiveRequestOBS.vue @@ -40,7 +40,9 @@ const songs = computed(() => { break } case QueueSortType.GuardFirst: { - result = result.OrderBy((q) => q.user?.guard_level).ThenBy((q) => q.createAt) + result = result + .OrderBy((q) => (q.user?.guard_level == 0 || q.user?.guard_level == null ? 4 : q.user.guard_level)) + .ThenBy((q) => q.createAt) break } case QueueSortType.PaymentFist: { diff --git a/src/views/open_live/LiveRequest.vue b/src/views/open_live/LiveRequest.vue index 7176d6b..4e67e56 100644 --- a/src/views/open_live/LiveRequest.vue +++ b/src/views/open_live/LiveRequest.vue @@ -164,14 +164,15 @@ const songs = computed(() => { break } case QueueSortType.GuardFirst: { - result = result.OrderBy((q) => q.user?.guard_level).ThenBy((q) => q.createAt) + result = result + .OrderBy((q) => (q.user?.guard_level == 0 || q.user?.guard_level == null ? 4 : q.user.guard_level)) + .ThenBy((q) => q.createAt) break } case QueueSortType.PaymentFist: { result = result.OrderByDescending((q) => q.price ?? 0).ThenBy((q) => q.createAt) } } - console.log(settings.value.sortType) if (configCanEdit.value ? settings.value.isReverse : isReverse.value) { return result.Reverse().ToArray() } else { @@ -193,6 +194,27 @@ const historySongs = computed(() => { }) }) +function sortSongs(songs: SongRequestInfo[]) { + let result = new List(songs) + switch (settings.value.sortType) { + case QueueSortType.TimeFirst: { + result = result.ThenBy((q) => q.createAt) + break + } + case QueueSortType.GuardFirst: { + result = result.OrderBy((q) => q.user?.guard_level).ThenBy((q) => q.createAt) + break + } + case QueueSortType.PaymentFist: { + result = result.OrderByDescending((q) => q.price ?? 0).ThenBy((q) => q.createAt) + } + } + if (configCanEdit.value ? settings.value.isReverse : isReverse.value) { + return result.Reverse().ToArray() + } + return result.ToArray() +} + const newSongName = ref('') const filterSongName = ref('') const filterSongNameContains = ref(false) @@ -837,7 +859,7 @@ onUnmounted(() => { 添加 - + 倒序