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 () => {
+
+
+