fix liverequest sort

This commit is contained in:
2024-04-15 23:02:58 +08:00
parent 9a44b5e89c
commit 3e192eaaae
2 changed files with 29 additions and 5 deletions

View File

@@ -40,7 +40,9 @@ const songs = computed(() => {
break break
} }
case QueueSortType.GuardFirst: { 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 break
} }
case QueueSortType.PaymentFist: { case QueueSortType.PaymentFist: {

View File

@@ -164,14 +164,15 @@ const songs = computed(() => {
break break
} }
case QueueSortType.GuardFirst: { 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 break
} }
case QueueSortType.PaymentFist: { case QueueSortType.PaymentFist: {
result = result.OrderByDescending((q) => q.price ?? 0).ThenBy((q) => q.createAt) result = result.OrderByDescending((q) => q.price ?? 0).ThenBy((q) => q.createAt)
} }
} }
console.log(settings.value.sortType)
if (configCanEdit.value ? settings.value.isReverse : isReverse.value) { if (configCanEdit.value ? settings.value.isReverse : isReverse.value) {
return result.Reverse().ToArray() return result.Reverse().ToArray()
} else { } 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 newSongName = ref('')
const filterSongName = ref('') const filterSongName = ref('')
const filterSongNameContains = ref(false) const filterSongNameContains = ref(false)
@@ -837,7 +859,7 @@ onUnmounted(() => {
<NInput placeholder="手动添加" v-model:value="newSongName" /> <NInput placeholder="手动添加" v-model:value="newSongName" />
<NButton type="primary" @click="addSongManual"> 添加 </NButton> <NButton type="primary" @click="addSongManual"> 添加 </NButton>
</NInputGroup> </NInputGroup>
<!-- <NRadioGroup <NRadioGroup
v-model:value="settings.sortType" v-model:value="settings.sortType"
:disabled="!configCanEdit" :disabled="!configCanEdit"
@update:value="updateSettings" @update:value="updateSettings"
@@ -846,7 +868,7 @@ onUnmounted(() => {
<NRadioButton :value="QueueSortType.TimeFirst"> 加入时间优先 </NRadioButton> <NRadioButton :value="QueueSortType.TimeFirst"> 加入时间优先 </NRadioButton>
<NRadioButton :value="QueueSortType.PaymentFist"> 付费价格优先 </NRadioButton> <NRadioButton :value="QueueSortType.PaymentFist"> 付费价格优先 </NRadioButton>
<NRadioButton :value="QueueSortType.GuardFirst"> 舰长优先 (按等级) </NRadioButton> <NRadioButton :value="QueueSortType.GuardFirst"> 舰长优先 (按等级) </NRadioButton>
</NRadioGroup> --> </NRadioGroup>
<NCheckbox v-if="configCanEdit" v-model:checked="settings.isReverse" @update:checked="updateSettings"> <NCheckbox v-if="configCanEdit" v-model:checked="settings.isReverse" @update:checked="updateSettings">
倒序 倒序
</NCheckbox> </NCheckbox>