From 4ab1f6da4f22861e59eef9a5823b2988a4cfa994 Mon Sep 17 00:00:00 2001 From: Megghy Date: Mon, 11 Dec 2023 13:41:29 +0800 Subject: [PATCH] update song options --- src/components/SongList.vue | 2 +- src/views/manage/SongListManageView.vue | 27 ++++++++++++++++++++++++- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/src/components/SongList.vue b/src/components/SongList.vue index b17a6af..542ad84 100644 --- a/src/components/SongList.vue +++ b/src/components/SongList.vue @@ -482,7 +482,7 @@ onMounted(() => { - + diff --git a/src/views/manage/SongListManageView.vue b/src/views/manage/SongListManageView.vue index c9c3784..440e735 100644 --- a/src/views/manage/SongListManageView.vue +++ b/src/views/manage/SongListManageView.vue @@ -36,6 +36,7 @@ import { Option } from 'naive-ui/es/transfer/src/interface' import { computed, onMounted, ref } from 'vue' import { saveAs } from 'file-saver' import { format } from 'date-fns' +import { List } from 'linqts' const message = useMessage() const accountInfo = useAccount() @@ -78,6 +79,27 @@ const fivesingCurrentPage = ref(1) const isGettingFivesingSongPlayUrl = ref(0) +const authors = computed(() => { + return new List(songs.value) + .SelectMany((s) => new List(s?.author)) + .Distinct() + .ToArray() + .map((t) => ({ + label: t, + value: t, + })) +}) +const tags = computed(() => { + return new List(songs.value) + .SelectMany((s) => new List(s?.tags)) + .Distinct() + .ToArray() + .map((t) => ({ + label: t, + value: t, + })) +}) + const formRef = ref(null) const addSongModel = ref({} as SongsInfo) const addSongRules: FormRules = { @@ -392,7 +414,7 @@ onMounted(async () => { - + @@ -400,6 +422,9 @@ onMounted(async () => { + + +