Browse Source

曲谱播放

liushengqiang 2 years ago
parent
commit
076b835b6c

+ 16 - 5
src/components/TheSearch/index.module.less

@@ -1,7 +1,18 @@
-.TheSearch{
- :global{
-    .n-input-wrapper{
-        padding-right: 4Px;
+.TheSearch {
+    border-radius: 20Px !important;
+
+    :global {
+        .n-input-wrapper {
+            padding-right: 4Px;
+            height: 42Px;
+
+            .n-input__input-el {
+                height: 100%;
+            }
+        }
+
+        .n-button {
+            height: 34Px;
+        }
     }
- }   
 }

+ 1 - 0
src/components/TheSearch/index.tsx

@@ -21,6 +21,7 @@ export default defineComponent({
       <NInput
         class={styles.TheSearch}
         round={props.round}
+        placeholder="请输入搜索关键词"
         v-model={searchData.value}>
         {{
           prefix: () => <img src={icon_search} />,

+ 14 - 1
src/styles/index.less

@@ -1,3 +1,6 @@
+:root{
+  --product-color: #3044ca;
+}
 * {
   padding: 0;
   margin: 0;
@@ -164,4 +167,14 @@ body {
   .n-card__content {
     padding: 0;
   }
-}
+}
+.favitor-enter-active,
+.favitor-leave-active {
+  transition: all 0.5s cubic-bezier(0.18, 0.89, 0, 1.29);
+}
+
+.favitor-enter-from,
+.favitor-leave-to {
+  transform: scale(1.4);
+  opacity: 0.1;
+}

+ 12 - 0
src/utils/index.ts

@@ -265,3 +265,15 @@ export function clearEmtryData(list: any[], key: string) {
   }
   return list;
 }
+
+// 秒转分
+export const getSecondRPM = (second: number, type?: string) => {
+  if (isNaN(second)) return '00:00'
+  const mm = Math.floor(second / 60).toString().padStart(2, '0')
+  const dd = Math.floor(second % 60).toString().padStart(2, '0')
+  if (type === 'cn') {
+    return mm + '分' + dd + '秒'
+  } else {
+    return mm + ':' + dd
+  }
+}

+ 9 - 1
src/views/xiaoku-ai/index.module.less

@@ -58,7 +58,7 @@
         height: 223Px;
         margin: auto;
         background-color: antiquewhite;
-
+        box-shadow: 0 0 10px 4px rgba(27, 35, 55, .1);
 
         :global {
             .n-image {
@@ -66,6 +66,14 @@
                 height: 100%;
             }
         }
+        img {
+            transition: opacity .3s;
+            opacity: 0;
+        }
+
+        img[data-loaded="true"] {
+            opacity: 1;
+        }
     }
 
     .itemName{

+ 3 - 0
src/views/xiaoku-ai/index.tsx

@@ -69,6 +69,9 @@ export default defineComponent({
                         src={getImage(`${_index}.png`)}
                         lazy
                         previewDisabled={true}
+                        onLoad={e => {
+                          (e.target as any).dataset.loaded = 'true';
+                        }}
                       />
                     </div>
                   </div>

+ 155 - 0
src/views/xiaoku-music/component/play-item/index.module.less

@@ -0,0 +1,155 @@
+.container {
+    position: fixed;
+    left: 100px;
+    bottom: 0;
+    right: 0;
+    display: flex;
+    align-items: center;
+    height: 108Px;
+    padding: 0 60Px;
+    background-color: #fff;
+    box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.1);
+    z-index: 10;
+    transition: all .3s;
+}
+
+.hidden {
+    transform: translateY(100%);
+    opacity: 0;
+}
+
+.item {
+    position: relative;
+    display: flex;
+    align-items: center;
+    width: 100%;
+
+    .img {
+        position: relative;
+        width: 64Px;
+        height: 64Px;
+        border-radius: 50%;
+        margin-right: 12Px;
+        background-color: #000;
+        box-shadow: 0 0 10px 4px rgba(27, 35, 55, .1);
+        padding: 8Px;
+        overflow: hidden;
+        flex-shrink: 0;
+
+        :global {
+            .n-image {
+                border-radius: 50%;
+                width: 100%;
+                height: 100%;
+            }
+        }
+
+        img {
+            transition: opacity .3s;
+            opacity: 0;
+            animation: rotateImg 6s linear infinite;
+        }
+
+        img[data-loaded="true"] {
+            opacity: 1;
+        }
+    }
+    .svgcontainer{
+        position: fixed;
+        z-index: -1000;
+        pointer-events: none;
+    }
+    .progress {
+        position: absolute;
+        left: 4Px;
+        top: 4Px;
+        width: 56Px;
+        pointer-events: none;
+        transform: rotate(180deg);
+
+        :global {
+            .n-progress-graph .n-progress-graph-circle .n-progress-graph-circle-fill {
+                stroke: url(#GradientProgress);
+            }
+        }
+    }
+
+    .title {
+        margin-right: 15Px;
+        width: 200Px;
+
+        .titleName {
+            font-size: 16Px;
+            font-weight: 600;
+            color: #131415;
+            line-height: 28Px;
+            white-space: nowrap;
+            max-width: 100%;
+            text-overflow: ellipsis;
+            white-space: nowrap;
+            overflow: hidden;
+        }
+
+        .titleDes {
+            font-size: 14Px;
+            font-weight: 400;
+            color: #777777;
+            line-height: 20Px;
+            white-space: nowrap;
+        }
+    }
+}
+
+@keyframes rotateImg {
+
+    100% {
+        transform: rotate(360deg);
+    }
+}
+
+.playBtns {
+    margin-left: 140px;
+    display: flex;
+    align-items: center;
+
+    :global {
+        .n-button {
+            width: 40Px;
+            height: 40Px;
+
+            img {
+                width: 100%;
+                height: 100%;
+            }
+        }
+    }
+
+    .playBtn {
+        width: 50Px;
+        height: 50Px;
+        margin: 0 48px;
+
+        img {
+            display: block;
+        }
+    }
+}
+
+.timeWrap {
+    flex: 1;
+    display: flex;
+    align-items: center;
+    margin-left: 88px;
+
+    .timeProgress {
+        margin-right: 24px;
+        border-radius: 6Px;
+        --n-rail-height: 8Px !important;
+    }
+
+    .time {
+        width: 90Px;
+        white-space: nowrap;
+        flex-shrink: 0;
+    }
+}

+ 196 - 0
src/views/xiaoku-music/component/play-item/index.tsx

@@ -0,0 +1,196 @@
+import {
+  PropType,
+  Transition,
+  computed,
+  defineComponent,
+  reactive,
+  ref,
+  watch
+} from 'vue';
+import styles from './index.module.less';
+import { NButton, NImage, NProgress, NSlider } from 'naive-ui';
+import { IMusicItem } from '../../type';
+import icon_pre from '../../images/icon_pre.svg';
+import icon_next from '../../images/icon_next.svg';
+import icon_play from '../../images/icon_play.svg';
+import icon_pause from '../../images/icon_pause.svg';
+import { getSecondRPM } from '/src/utils';
+import icon_favitor from '/src/common/images/icon-collect-default.png';
+import icon_favitorActive from '/src/common/images/icon-collect-active.png';
+
+export default defineComponent({
+  name: 'playItem',
+  props: {
+    item: {
+      type: Object as PropType<IMusicItem>,
+      default: () => ({})
+    },
+    show: {
+      type: Boolean,
+      default: false
+    },
+    playState: {
+      type: String as PropType<'play' | 'pause'>,
+      default: 'pause'
+    }
+  },
+  emits: ['change'],
+  setup(props, { emit }) {
+    let timer = null as any;
+    const audioData = reactive({
+      isFirst: true,
+      duration: 0,
+      currentTime: 0
+    });
+    const audioRef = ref();
+    /** 加载成功 */
+    const onLoadedmetadata = () => {
+      audioData.duration = audioRef.value.duration;
+      if (audioData.isFirst) {
+        audioData.isFirst = false;
+        return;
+      }
+      if (props.playState === 'play'){
+          audioRef.value.play();
+      }
+    };
+    /** 改变时间 */
+    const handleChangeTime = (val: number) => {
+      audioRef.value.pause();
+      audioData.currentTime = val;
+      clearTimeout(timer);
+      timer = setTimeout(() => {
+        audioRef.value.currentTime = val;
+        audioRef.value.play();
+        timer = null;
+      }, 300);
+    };
+    const time = computed(() => {
+      return `${getSecondRPM(audioData.currentTime)} / ${getSecondRPM(
+        audioData.duration
+      )}`;
+    });
+
+    watch(
+      () => props.playState,
+      val => {
+        if (val === 'play') {
+          audioRef.value.play();
+        } else {
+          audioRef.value.pause();
+        }
+      }
+    );
+    return () => (
+      <div class={[styles.container, props.show ? styles.show : styles.hidden]}>
+        <div class={[styles.item]}>
+          <div class={styles.img}>
+            <NImage
+              lazy
+              objectFit="cover"
+              previewDisabled={true}
+              src={props.item.titleImg}
+              onLoad={e => {
+                (e.target as any).dataset.loaded = 'true';
+              }}
+            />
+
+            <svg class={styles.svgcontainer}>
+              <defs>
+                <linearGradient id="GradientProgress">
+                  <stop stop-color="#5BECFF" offset="0%" />
+                  <stop stop-color="#259CFE" offset="100%" />
+                </linearGradient>
+              </defs>
+            </svg>
+
+            <NProgress
+              type="circle"
+              class={styles.progress}
+              showIndicator={false}
+              percentage={(audioData.currentTime / audioData.duration) * 100}
+            />
+          </div>
+          <div class={styles.title}>
+            <div class={styles.titleName}>{props.item.musicSheetName}</div>
+            <div class={styles.titleDes}>{props.item.composer}</div>
+          </div>
+
+          <div class={styles.playBtns}>
+            <NButton
+              style={{ marginRight: '15px' }}
+              color="rgba(246,246,246,1)"
+              circle
+              bordered={false}
+              onClick={() => emit('change', 'favitor')}>
+              <Transition name="favitor" mode="out-in">
+                {props.item.delFlag ? (
+                  <img src={icon_favitorActive} key="1" />
+                ) : (
+                  <img src={icon_favitor} key="2" />
+                )}
+              </Transition>
+            </NButton>
+            <NButton
+              color="rgba(246,246,246,1)"
+              circle
+              bordered={false}
+              onClick={() => emit('change', 'pre')}>
+              <img src={icon_pre} />
+            </NButton>
+            <NButton
+              color="rgba(57,130,246,1)"
+              class={styles.playBtn}
+              circle
+              bordered={false}
+              onClick={() =>
+                emit('change', props.playState === 'pause' ? 'play' : 'pause')
+              }>
+              <img
+                style={{
+                  display: props.playState === 'pause' ? '' : 'none',
+                  transform: 'scale(1.5) translateX(1Px)'
+                }}
+                src={icon_play}
+              />
+              <img
+                style={{
+                  display: props.playState === 'play' ? '' : 'none',
+                  transform: 'scale(1.5)'
+                }}
+                src={icon_pause}
+              />
+            </NButton>
+            <NButton
+              color="rgba(246,246,246,1)"
+              circle
+              bordered={false}
+              onClick={() => emit('change', 'next')}>
+              <img src={icon_next} />
+            </NButton>
+          </div>
+
+          <div class={styles.timeWrap}>
+            <NSlider
+              tooltip={false}
+              step={0.01}
+              class={styles.timeProgress}
+              value={audioData.currentTime}
+              max={audioData.duration}
+              onUpdate:value={val => handleChangeTime(val)}
+            />
+            <div class={styles.time}>{time.value}</div>
+            <audio
+              ref={audioRef}
+              src={props.item.audioFileUrl}
+              onLoadedmetadata={onLoadedmetadata}
+              onTimeupdate={() => {
+                if (timer) return;
+                audioData.currentTime = audioRef.value.currentTime;
+              }}></audio>
+          </div>
+        </div>
+      </div>
+    );
+  }
+});

+ 48 - 0
src/views/xiaoku-music/component/play-loading/index.module.less

@@ -0,0 +1,48 @@
+.audioAnimate {
+    position: absolute;
+    left: 0;
+    right: 0;
+    top: 0;
+    bottom: 0;
+    background-color: rgba(0, 0, 0, .6);
+    display: flex;
+    justify-content: center;
+    align-items: flex-end;
+    padding-bottom: 30%;
+
+    div {
+        width: 5px;
+        height: 20px;
+        background: linear-gradient(135deg, #34FFC5 0%, #1BD2FF 100%);
+        transform-origin: bottom;
+        border-radius: 5px 5px 0 0;
+        margin: 0 2px;
+    }
+
+    & div:nth-child(1) {
+        animation: musicWave 0.5s infinite linear both alternate;
+    }
+
+    & div:nth-child(2) {
+        animation: musicWave 0.2s infinite linear both alternate;
+    }
+
+    & div:nth-child(3) {
+        animation: musicWave 0.6s infinite linear both alternate;
+    }
+
+    & div:nth-child(4) {
+        animation: musicWave 0.3s infinite linear both alternate;
+    }
+}
+
+
+@keyframes musicWave {
+    0% {
+        height: 5px;
+    }
+
+    100% {
+        height: 20px;
+    }
+}

+ 16 - 0
src/views/xiaoku-music/component/play-loading/index.tsx

@@ -0,0 +1,16 @@
+import { defineComponent } from 'vue';
+import styles from './index.module.less';
+
+export default defineComponent({
+  name: 'playLoading',
+  setup() {
+    return () => (
+      <div class={styles.audioAnimate}>
+        <div></div>
+        <div></div>
+        <div></div>
+        <div></div>
+      </div>
+    );
+  }
+});

+ 1244 - 0
src/views/xiaoku-music/data.json

@@ -0,0 +1,1244 @@
+{
+    "rows": [
+        {
+            "accompanimentType": "HOMEMODE",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 1,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1667980458689痛苦海岸_伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "彩虹岛",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2022-11-09 16:06:17",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 4417,
+            "firstPassAuditTime": "2022-11-09 16:06:17",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339454417-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339455023-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339455599-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675770786664-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675770786845-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675770787070-3.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22078,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339446389-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339453851-2.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1674617606100_22078.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1674617605192_22078.json\"}",
+            "musicPrice": 9.90,
+            "musicSheetName": "彩虹岛痛苦海岸BGM",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "",
+            "musicTag": "56",
+            "musicTagNames": "动漫",
+            "notation": 1,
+            "paymentType": "VIP,CHARGE",
+            "play": null,
+            "playSpeed": 100,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 0,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/1667981230111OIP-C_\u00282\u0029.jpg",
+            "topFlag": 1,
+            "updateBy": 3459,
+            "updateTime": "2023-01-25 11:33:28",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 4411,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1667983614423痛苦海岸_flute.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 1,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1667307372064彩云追月-伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "龚玥",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2022-11-01 20:56:56",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 4138,
+            "firstPassAuditTime": "2022-11-01 20:56:56",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339176020-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339176523-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339177081-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675839970286-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675839970588-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675839970811-3.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22048,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1674482236215_22048.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1674482235376_22048.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339167616-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339174949-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339175608-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1683014517574_22048.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1683014516523_22048.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "彩云追月",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672542954766_22048.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672542953584_22048.json\"}",
+            "musicTag": "6,82",
+            "musicTagNames": "流行,怀旧",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 88,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 10,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/16673073613921667307286080.jpg",
+            "topFlag": 0,
+            "updateBy": 5659,
+            "updateTime": "2023-05-02 16:01:58",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 4128,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1667307368828彩云追月.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 2,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1666845560256Dont_say-伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "Afterglow",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2022-10-27 12:39:30",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 4454,
+            "firstPassAuditTime": "2022-10-27 12:39:30",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339226137-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339226672-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339227226-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339227750-4.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339228322-5.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820446920-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820447106-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820447282-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820447450-4.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820447613-5.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820447802-6.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22033,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673515654645_22033.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673515653221_22033.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339208419-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339223429-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339224275-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339225103-4.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339225704-5.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673957570719_22033.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673957569484_22033.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "Don't say \"lazy\"-放課後ティータイム",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672392798468_22033.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672392796956_22033.json\"}",
+            "musicTag": "56,6",
+            "musicTagNames": "流行,动漫",
+            "notation": 1,
+            "paymentType": "FREE",
+            "play": null,
+            "playSpeed": 181,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 10,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/16668454558621666691512992.jpg",
+            "topFlag": 0,
+            "updateBy": 1358,
+            "updateTime": "2023-01-17 20:12:52",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 4430,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1666862189974Don't_say.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 1,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1666083038359美国巡逻兵-长笛-伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "FREE",
+            "composer": "弗兰克·米查姆",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2022-10-18 16:51:50",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 3900,
+            "firstPassAuditTime": "2022-10-18 16:51:50",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671344595401-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671344595913-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671344596367-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820457547-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820457758-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820457930-3.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 21317,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675509383584_21317.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675509382092_21317.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671344587815-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671344594707-2.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675412909095_21317.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675412908411_21317.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "美国巡逻兵",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675083177991_21317.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675083177151_21317.json\"}",
+            "musicTag": "71",
+            "musicTagNames": "儿歌",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 100,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 10,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://ks3-cn-beijing.ksyuncs.com/daya/16660830966501666082704213-弗兰克·米查姆.jpg",
+            "topFlag": 0,
+            "updateBy": 3583,
+            "updateTime": "2023-02-04 19:16:28",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 3892,
+            "xmlFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1666083248978美国巡逻兵-长笛.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 3,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1665633608247亲爱的旅人啊-伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "FREE",
+            "composer": "宋梓欣",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2022-10-13 12:00:23",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 4424,
+            "firstPassAuditTime": "2022-10-13 12:00:23",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671795929202-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671795929910-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671795930135-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671795930447-4.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675831481569-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675831481868-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675831482172-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675831482481-4.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 21286,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673250300347_21286.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673250299715_21286.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671795905511-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671795928105-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671795928838-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673249648480_21286.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673249647780_21286.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "亲爱的旅人啊-《千与千寻》",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672626314714_21286.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672626313806_21286.json\"}",
+            "musicTag": "56",
+            "musicTagNames": "动漫",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 112,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 10,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://ks3-cn-beijing.ksyuncs.com/daya/16656336119671665633550691.jpg",
+            "topFlag": 0,
+            "updateBy": 3015,
+            "updateTime": "2023-01-09 15:45:02",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 4382,
+            "xmlFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1665633984593亲爱的旅人啊-长笛.xml"
+        },
+        {
+            "accompanimentType": "HOMEMODE",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 1,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1673943832416祝福你_伴奏~1.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "群星",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2023-01-17 16:24:02",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 1259,
+            "firstPassAuditTime": "2023-01-17 16:24:02",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1673943842580-1.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820541580-1.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22314,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1673943842367-1.png",
+            "musicJSON": "",
+            "musicJianSvg": "",
+            "musicPrice": 0.00,
+            "musicSheetName": "祝福你",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673951734551_22314.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673951733749_22314.json\"}",
+            "musicTag": "82",
+            "musicTagNames": "怀旧",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 75,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 0,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/1673943800099R-C.jpg",
+            "topFlag": 0,
+            "updateBy": 3354,
+            "updateTime": "2023-01-17 18:35:35",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 1258,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1673943805318祝福你_flute.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 0,
+            "albumSortNumber": 0,
+            "audioFileUrl": "",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "FREE",
+            "composer": "123",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2022-12-03 12:59:47",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 0,
+            "firstPassAuditTime": "2022-12-03 12:59:47",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671344955267-1.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675820675451-1.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22145,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671344954819-1.png",
+            "musicJSON": "",
+            "musicJianSvg": "",
+            "musicPrice": 0.00,
+            "musicSheetName": "渐慢测试",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "",
+            "musicTag": "56",
+            "musicTagNames": "动漫",
+            "notation": 1,
+            "paymentType": "FREE",
+            "play": null,
+            "playSpeed": 120,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 0,
+            "sourceType": "PLATFORM",
+            "state": 0,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/16700435699961666252152251.jpg",
+            "topFlag": 0,
+            "updateBy": 11,
+            "updateTime": "2022-12-03 12:59:47",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 0,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1670043575792Title.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 1,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1666163602120云河_伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "邓丽君",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2022-10-19 15:13:07",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 3964,
+            "firstPassAuditTime": "2022-10-19 15:13:07",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671723721761-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671723729601-2.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776259874-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776260411-2.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 21325,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671723720578-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671723721264-2.png",
+            "musicJSON": "",
+            "musicJianSvg": "",
+            "musicPrice": 0.00,
+            "musicSheetName": "云河",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675389478234_21325.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675389477591_21325.json\"}",
+            "musicTag": "82",
+            "musicTagNames": "怀旧",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 78,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 0,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://ks3-cn-beijing.ksyuncs.com/daya/1666163616649R-C_\u00282\u0029.jpg",
+            "topFlag": 0,
+            "updateBy": 3283,
+            "updateTime": "2023-02-03 09:57:59",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 3961,
+            "xmlFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1666163598898云河_flute.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 1,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1666158914299偿还_伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "邓丽君",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2022-10-19 13:55:16",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 3801,
+            "firstPassAuditTime": "2022-10-19 13:55:16",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671723865673-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671723866405-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671723866819-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776271266-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776271673-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776271876-3.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 21323,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671723864134-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671723865200-2.png",
+            "musicJSON": "",
+            "musicJianSvg": "",
+            "musicPrice": 0.00,
+            "musicSheetName": "偿还",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675388767885_21323.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675388767060_21323.json\"}",
+            "musicTag": "82",
+            "musicTagNames": "怀旧",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 112,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 0,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://ks3-cn-beijing.ksyuncs.com/daya/1666158936602R-C_\u00282\u0029.jpg",
+            "topFlag": 0,
+            "updateBy": 3283,
+            "updateTime": "2023-02-03 09:46:08",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 3798,
+            "xmlFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1666158902127偿还_flute.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 0,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1666144791050可可托海的牧羊人_伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "王琪",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2022-10-19 09:59:19",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 4466,
+            "firstPassAuditTime": "2022-10-19 09:59:19",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671724046737-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671724047275-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671724047728-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776283951-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776284321-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776284524-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675776284705-4.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 21321,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671724017509-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671724044392-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671724045051-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "",
+            "musicPrice": 0.00,
+            "musicSheetName": "可可托海的牧羊人",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673583304171_21321.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673583299704_21321.json\"}",
+            "musicTag": "82",
+            "musicTagNames": "怀旧",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 65,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 0,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://ks3-cn-beijing.ksyuncs.com/daya/1666144765824OIP-C_\u00281\u0029.jpg",
+            "topFlag": 0,
+            "updateBy": 162,
+            "updateTime": "2023-01-13 12:15:06",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 4462,
+            "xmlFileUrl": "https://ks3-cn-beijing.ksyuncs.com/cloud-coach/1666143469053可可托海的牧羊人_flute.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 0,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1685678259677光的方向-长笛-伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "张碧晨",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2023-06-02 11:58:12",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 3,
+            "firstPassAuditTime": "2023-06-02 11:58:12",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685678291167-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685678291837-2.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685678291975-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685678292111-2.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22446,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685678290568-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685678290860-2.png",
+            "musicJSON": "",
+            "musicJianSvg": "",
+            "musicPrice": 0.00,
+            "musicSheetName": "光的方向【长歌行】",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685678575993_22446.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685678575702_22446.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 81,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/1685678265034光的方向【长歌行】-张碧晨.jpg",
+            "topFlag": 1,
+            "updateBy": 11,
+            "updateTime": "2023-06-02 12:02:56",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 0,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1685678254771光的方向.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 2,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1685524203026要不然我们就这样一万年-伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "黄霄雲",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2023-05-31 17:10:48",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 2,
+            "firstPassAuditTime": "2023-05-31 17:10:48",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685524246041-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685524246864-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685524247176-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685524247375-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685524247616-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685524247855-3.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22442,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685524244582-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685524245291-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685524245730-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "",
+            "musicPrice": 0.00,
+            "musicSheetName": "要不然我们就这样一万年【长月烬明】",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685524431599_22442.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685524430828_22442.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 70,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/1685524207012要不然我们就这样一万年-黄霄雲.jpg",
+            "topFlag": 1,
+            "updateBy": 11,
+            "updateTime": "2023-05-31 17:13:52",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 0,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1685524197771要不然我们就这样一万年.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 2,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1685434671508黑月光-伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "张碧晨、毛不易",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2023-05-30 16:18:36",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 3,
+            "firstPassAuditTime": "2023-05-30 16:18:36",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685497833183-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685497833396-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685497833704-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685497833829-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685497834059-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685497834318-3.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22439,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685497832305-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685497832596-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685497833006-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685436732836_22439.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685436732270_22439.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "黑月光【长月烬明】",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685434956569_22439.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685434956014_22439.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 93,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/1685434675850黑月光-张碧晨、毛不易.jpg",
+            "topFlag": 1,
+            "updateBy": 11,
+            "updateTime": "2023-05-31 09:50:35",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 0,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1685434663179黑月光.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 1,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1685426860808我会等-伴奏-长笛.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "承桓",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2023-05-30 14:12:51",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 5,
+            "firstPassAuditTime": "2023-05-30 14:12:51",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685427170324-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685427170492-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1685427170652-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685427170804-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685427170944-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685427171111-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1685427171400-4.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22436,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685427169650-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685427170007-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1685427170212-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685427679902_22436.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685427679421_22436.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "我会等",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685427418137_22436.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1685427417728_22436.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 62,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/16854271508421685427126214.jpg",
+            "topFlag": 1,
+            "updateBy": 11,
+            "updateTime": "2023-05-30 14:21:20",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 0,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1685426849147我会等-长笛.xml"
+        },
+        {
+            "accompanimentType": "HOMEMODE",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 0,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1675232426537情歌_伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "梁静茹",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2023-02-01 14:21:03",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 493,
+            "firstPassAuditTime": "2023-02-01 14:21:03",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1675232463488-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1675232463918-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1675232464416-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769284918-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769285348-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769285717-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769286055-4.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22347,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675740961354_22347.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675740961156_22347.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1675232461841-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1675232462484-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1675232463041-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675740950695_22347.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675740950151_22347.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "情歌",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675401448046_22347.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675401447629_22347.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 70,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/1675232417346R-C.jpg",
+            "topFlag": 1,
+            "updateBy": 11,
+            "updateTime": "2023-02-07 11:36:02",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 490,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1675232423791情歌_flute.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 1,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1674979398513是妈妈是女儿-伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "FREE",
+            "composer": "黄绮珊、希林娜依·高",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2023-01-29 16:04:15",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 666,
+            "firstPassAuditTime": "2023-01-29 16:04:15",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1674979453605-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1674979453755-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1674979453911-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1674979454067-4.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1674979454229-5.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769358105-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769358577-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769358808-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769359054-4.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769359372-5.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22326,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1677240329566_22326.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1677240328838_22326.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1674979452679-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1674979453095-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1674979453262-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1674979453461-4.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675003248169_22326.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675003241674_22326.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "是妈妈是女儿",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1674979833938_22326.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1674979833534_22326.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "FREE",
+            "play": null,
+            "playSpeed": 69,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/16749793835851674979330273.jpg",
+            "topFlag": 1,
+            "updateBy": 210,
+            "updateTime": "2023-02-24 20:05:30",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 633,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1674979395465是妈妈是女儿.xml"
+        },
+        {
+            "accompanimentType": "HOMEMODE",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 0,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1673255819745余情_伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "FREE",
+            "composer": "周深",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2023-01-09 17:17:25",
+            "delFlag": false,
+            "exquisiteFlag": 1,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 1435,
+            "firstPassAuditTime": "2023-01-09 17:17:25",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1673255855682-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1673255855883-2.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769381906-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769382278-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769382643-3.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22240,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675322316965_22240.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675322316550_22240.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1673255855176-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1673255855432-2.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673521693996_22240.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673521692802_22240.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "余情 C调",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673747407270_22240.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1673747406653_22240.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "FREE",
+            "play": null,
+            "playSpeed": 66,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/167325580641998ca-ixeeisa1674625.jpg",
+            "topFlag": 1,
+            "updateBy": 11,
+            "updateTime": "2023-02-02 15:18:37",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 1427,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1673255815128余情_flute.xml"
+        },
+        {
+            "accompanimentType": "COMMON",
+            "addName": "乐乐",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1660198049563image.jpeg",
+            "albumNums": 0,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/16729129536401666690216652野蜂飞舞-2.0-钢琴.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "FREE",
+            "composer": "里姆斯基-科萨科夫",
+            "correctTime": null,
+            "createBy": 11,
+            "createTime": "2023-01-05 18:04:17",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 1688,
+            "firstPassAuditTime": "2023-01-05 18:04:17",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913053371-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913053543-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913053718-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913053887-4.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913054066-5.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913054247-6.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913054440-7.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913054632-8.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913054825-9.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672913054986-10.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913055147-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913055316-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913055507-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913055668-4.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913055827-5.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913056009-6.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913056190-7.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913056358-8.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913056542-9.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1672913056711-10.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22212,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672921554369_22212.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672921553491_22212.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672913051876-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672913052269-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672913052445-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672913052633-4.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672913052814-5.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672913053004-6.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672913053191-7.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672982971622_22212.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672982970449_22212.json\"}",
+            "musicPrice": 0.00,
+            "musicSheetName": "野蜂飞舞-年糕版",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672913350556_22212.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672913350116_22212.json\"}",
+            "musicTag": "83,6,4",
+            "musicTagNames": "古典,流行,考级",
+            "notation": 0,
+            "paymentType": "FREE",
+            "play": null,
+            "playSpeed": 160,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/16729129621811672912869813.jpg",
+            "topFlag": 1,
+            "updateBy": 2671,
+            "updateTime": "2023-01-06 13:29:36",
+            "url": "",
+            "userId": 11,
+            "virtualNumber": 1651,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/16729129500051666690211695野蜂飞舞-2.0-长笛.xml"
+        },
+        {
+            "accompanimentType": "HOMEMODE",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 0,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1670225905937无别_伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "张信哲",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2022-12-05 15:42:36",
+            "delFlag": false,
+            "exquisiteFlag": 1,
+            "extConfigJson": "{}",
+            "favorite": 0,
+            "favoriteCount": 3584,
+            "firstPassAuditTime": "2022-12-05 15:42:36",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672714617662-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672714618008-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1672714618361-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769327834-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769328210-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769328530-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769328765-4.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22147,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675756374654_22147.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675756374093_22147.json\"}",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672714616543-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672714617000-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1672714617382-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "",
+            "musicPrice": 0.00,
+            "musicSheetName": "无别(【冥加】会员推荐)",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675755967440_22147.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1675755967104_22147.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "VIP",
+            "play": null,
+            "playSpeed": 72,
+            "reason": "",
+            "remark": "【冥加】会员推荐曲目",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/1670225975561微信截图_20221205153928.png",
+            "topFlag": 1,
+            "updateBy": 11,
+            "updateTime": "2023-02-07 15:52:55",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 3581,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1670226439467无别_Flute.xml"
+        },
+        {
+            "accompanimentType": "HOMEMODE",
+            "addName": "咕噜",
+            "addUserAvatar": "https://ks3-cn-beijing.ksyuncs.com/daya/1659063995379微信截图_20220726155220.png",
+            "albumNums": 0,
+            "albumSortNumber": 0,
+            "audioFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1667389570164逍遥叹_伴奏.mp3",
+            "audioType": "MP3",
+            "auditStatus": "PASS",
+            "auditVersion": 0,
+            "canEvaluate": 1,
+            "chargeType": "VIP",
+            "composer": "胡歌",
+            "correctTime": null,
+            "createBy": 12,
+            "createTime": "2022-11-02 19:46:59",
+            "delFlag": false,
+            "exquisiteFlag": 0,
+            "extConfigJson": "",
+            "favorite": 0,
+            "favoriteCount": 4044,
+            "firstPassAuditTime": "2022-11-02 19:46:59",
+            "firstTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339552340-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339552894-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-first/1671339553492-3.png",
+            "fixedTone": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769550570-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769551340-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769551975-3.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet-fixed/1675769552360-4.png",
+            "hasBeat": null,
+            "hotFlag": null,
+            "id": 22055,
+            "metronomeUrl": "",
+            "midiUrl": "",
+            "mp3Type": "MP3",
+            "musicFirstSvg": "",
+            "musicImg": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339540137-1.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339550855-2.png,https://cloud-coach.ks3-cn-beijing.ksyuncs.com/music-sheet/1671339551806-3.png",
+            "musicJSON": "",
+            "musicJianSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1684660979611_22055.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1684660978281_22055.json\"}",
+            "musicPrice": 9.90,
+            "musicSheetName": "逍遥叹",
+            "musicSheetType": "SINGLE",
+            "musicSubject": "3",
+            "musicSvg": "{\"svg\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672641156352_22055.svg\",\"json\":\"https://daya.ks3-cn-beijing.ksyuncs.com/1672641155495_22055.json\"}",
+            "musicTag": "6",
+            "musicTagNames": "流行",
+            "notation": 1,
+            "paymentType": "VIP,CHARGE",
+            "play": null,
+            "playSpeed": 72,
+            "reason": "",
+            "remark": "",
+            "showFingering": 1,
+            "sortNumber": 100,
+            "sourceType": "PLATFORM",
+            "state": 1,
+            "subjectNames": "长笛",
+            "submitAuditTime": null,
+            "titleImg": "https://daya.ks3-cn-beijing.ksyuncs.com/1667389663785t019e74adca8a83a69b.jpg",
+            "topFlag": 1,
+            "updateBy": 6249,
+            "updateTime": "2023-05-21 17:23:00",
+            "url": "",
+            "userId": 12,
+            "virtualNumber": 4036,
+            "xmlFileUrl": "https://cloud-coach.ks3-cn-beijing.ksyuncs.com/1667389495177逍遥叹flute.xml"
+        }
+    ]
+}

BIN
src/views/xiaoku-music/images/0.png


+ 11 - 0
src/views/xiaoku-music/images/icon_arrow.svg

@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="53px" height="48px" viewBox="0 0 53 48" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>矩形</title>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="68、小酷AI-试听歌曲" transform="translate(-684.000000, -385.000000)" fill="#FFFFFF">
+            <g id="编组-7" transform="translate(681.715729, 245.000000)">
+                <path d="M14.8253899,144.703908 L43.55089,147.79514 C46.2432183,148.084869 48.2842712,150.357349 48.2842712,153.065222 L48.2842712,178.69949 C48.2842712,181.626881 45.9111523,184 42.9837617,184 L17.3494931,184 C14.6416203,184 12.3691398,181.958947 12.0794108,179.266619 L8.98817934,150.541119 C8.67496302,147.630533 10.7805472,145.017124 13.6911333,144.703908 C14.0681305,144.663338 14.4483927,144.663338 14.8253899,144.703908 Z" id="矩形" transform="translate(28.284271, 164.000000) rotate(-45.000000) translate(-28.284271, -164.000000) "></path>
+            </g>
+        </g>
+    </g>
+</svg>

+ 15 - 0
src/views/xiaoku-music/images/icon_back.svg

@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="36px" height="36px" viewBox="0 0 36 36" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>编组 13</title>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="68、小酷AI-试听歌曲" transform="translate(-134.000000, -84.000000)">
+            <g id="编组-13" transform="translate(134.000000, 84.000000)">
+                <circle id="椭圆形" fill="#3044CA" cx="18" cy="18" r="18"></circle>
+                <g id="编组-11" transform="translate(21.150000, 18.450000) rotate(-45.000000) translate(-21.150000, -18.450000) translate(14.400000, 11.700000)" fill="#FFFFFF">
+                    <rect id="矩形" x="8.31500979e-13" y="-2.64537781e-12" width="2.7" height="13.5" rx="1.35"></rect>
+                    <rect id="矩形" transform="translate(6.750000, 1.350000) rotate(90.000000) translate(-6.750000, -1.350000) " x="5.4" y="-5.4" width="2.7" height="13.5" rx="1.35"></rect>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 59 - 0
src/views/xiaoku-music/images/icon_goXiaoku.svg

@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="276px" height="102px" viewBox="0 0 276 102" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>按钮/小按钮/橙</title>
+    <defs>
+        <linearGradient x1="15.3622126%" y1="46.891583%" x2="89.7647319%" y2="53.2822192%" id="linearGradient-1">
+            <stop stop-color="#FF9C63" offset="0%"></stop>
+            <stop stop-color="#FF7144" offset="100%"></stop>
+        </linearGradient>
+        <linearGradient x1="-67.2865798%" y1="54.451743%" x2="100%" y2="50%" id="linearGradient-2">
+            <stop stop-color="#5BECFF" offset="0%"></stop>
+            <stop stop-color="#259CFE" offset="100%"></stop>
+        </linearGradient>
+        <rect id="path-3" x="0" y="0" width="248" height="74" rx="37"></rect>
+        <filter x="-8.9%" y="-27.0%" width="117.7%" height="159.5%" filterUnits="objectBoundingBox" id="filter-4">
+            <feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feGaussianBlur stdDeviation="7" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
+            <feColorMatrix values="0 0 0 0 0.238910061   0 0 0 0 0.667244399   0 0 0 0 1  0 0 0 0.502076049 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
+        </filter>
+        <text id="text-5" font-family="STYuanti-SC-Bold, Yuanti SC" font-size="32" font-weight="bold" letter-spacing="0.888888889" fill="#FFFFFF">
+            <tspan x="84.2222222" y="47">进入曲目</tspan>
+        </text>
+        <filter x="-3.0%" y="-4.4%" width="106.1%" height="117.8%" filterUnits="objectBoundingBox" id="filter-6">
+            <feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feGaussianBlur stdDeviation="1" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
+            <feColorMatrix values="0 0 0 0 0.108514357   0 0 0 0 0.562412481   0 0 0 0 0.907525104  0 0 0 1 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
+        </filter>
+        <linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-7">
+            <stop stop-color="#FCFFFF" offset="0%"></stop>
+            <stop stop-color="#D4F1FF" offset="100%"></stop>
+        </linearGradient>
+        <path d="M19,0 C29.4934102,0 38,8.50658975 38,19 C38,29.4934102 29.4934102,38 19,38 C8.50658975,38 0,29.4934102 0,19 C0,8.50658975 8.50658975,0 19,0 Z M30.1607727,7.86081819 C29.8988467,6.94365249 28.9430732,6.41240945 28.0258637,6.67418182 L28.0258637,6.67418182 L19.3895,9.14245452 C18.8028606,9.30959882 18.3478792,9.77377173 18.1925,10.3636364 L18.1925,10.3636364 L18.1363636,10.3636364 L18.1372273,20.9483636 C16.0002665,19.4599289 13.1502825,19.5072591 11.0639241,21.0658315 C8.9775656,22.6244038 8.1237736,25.3439052 8.94491928,27.8152934 C9.76606496,30.2866815 12.0775833,31.9545455 14.6818182,31.9545455 L14.6818182,31.9545455 L14.8890909,31.9510909 C18.14535,31.8393821 20.7273265,29.1672656 20.7272727,25.9090909 L20.7272727,25.9090909 L20.7272727,15.6680909 L28.975,13.3120909 C29.7160075,13.1001421 30.2269303,12.422905 30.2272728,11.6521818 L30.2272728,11.6521818 L30.2272728,8.33581817 C30.2272728,8.17516271 30.2049217,8.01528842 30.1607727,7.86081819 Z" id="path-8"></path>
+        <filter x="-10.5%" y="-5.3%" width="121.1%" height="121.1%" filterUnits="objectBoundingBox" id="filter-9">
+            <feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feGaussianBlur stdDeviation="1" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
+            <feColorMatrix values="0 0 0 0 0.108514357   0 0 0 0 0.562412481   0 0 0 0 0.907525104  0 0 0 1 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
+        </filter>
+    </defs>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="68、小酷AI-试听歌曲" transform="translate(-1144.000000, -870.000000)">
+            <g id="编组-2" transform="translate(1158.000000, 882.000000)">
+                <g id="button-normal">
+                    <use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"></use>
+                    <use fill="url(#linearGradient-1)" fill-rule="evenodd" xlink:href="#path-3"></use>
+                    <use fill="url(#linearGradient-2)" fill-rule="evenodd" xlink:href="#path-3"></use>
+                </g>
+                <g id="进入曲目" fill-rule="nonzero" fill="#FFFFFF" fill-opacity="1">
+                    <use filter="url(#filter-6)" xlink:href="#text-5"></use>
+                    <use xlink:href="#text-5"></use>
+                </g>
+                <g id="编组" transform="translate(32.000000, 18.000000)" fill-rule="nonzero">
+                    <g id="形状结合">
+                        <use fill="black" fill-opacity="1" filter="url(#filter-9)" xlink:href="#path-8"></use>
+                        <use fill="url(#linearGradient-7)" xlink:href="#path-8"></use>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 17 - 0
src/views/xiaoku-music/images/icon_next.svg

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="40px" height="40px" viewBox="0 0 40 40" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>曲目列表/收藏备份 2</title>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="68、小酷AI-试听歌曲" transform="translate(-827.000000, -1006.000000)">
+            <g id="编组-24" transform="translate(100.000000, 972.000000)">
+                <g id="编组-8" transform="translate(453.000000, 29.000000)">
+                    <g id="shoucang/weidianji备份" transform="translate(274.000000, 5.000000)">
+                        <g id="曲谱列表/下一首备份" transform="translate(11.000000, 11.000000)" fill="#333333">
+                            <path d="M14.5510322,1 C15.3794593,1 16.0510322,1.67157288 16.0510322,2.5 L16.0510322,15.5 C16.0510322,16.3284271 15.3794593,17 14.5510322,17 C13.7226051,17 13.0510322,16.3284271 13.0510322,15.5 L13.051,10.601 L3.90063159,16.4881908 C3.02628247,17.0505706 1.86158358,16.7976694 1.29920381,15.9233203 C1.10386363,15.6196189 1,15.2661404 1,14.9050417 L1,3.08430685 C1,2.04471202 1.84275812,1.2019539 2.88235294,1.2019539 C3.24345169,1.2019539 3.59693022,1.30581754 3.90063159,1.50115771 L13.051,7.387 L13.0510322,2.5 C13.0510322,1.67157288 13.7226051,1 14.5510322,1 Z" id="形状结合"></path>
+                        </g>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 16 - 0
src/views/xiaoku-music/images/icon_pause.svg

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="9px" height="12px" viewBox="0 0 9 12" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>编组 9</title>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="68、小酷AI-试听歌曲" transform="translate(-630.000000, -403.000000)" fill="#FFFFFF">
+            <g id="编组-19" transform="translate(164.000000, 245.000000)">
+                <g id="编组-16" transform="translate(405.000000, 144.000000)">
+                    <g id="编组-9" transform="translate(61.000000, 14.000000)">
+                        <rect id="矩形" x="0" y="0" width="2.5" height="12" rx="1.25"></rect>
+                        <rect id="矩形备份-4" x="6.5" y="0" width="2.5" height="12" rx="1.25"></rect>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 15 - 0
src/views/xiaoku-music/images/icon_play.svg

@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="9px" height="12px" viewBox="0 0 9 12" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>三角形</title>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="68、小酷AI-试听歌曲" transform="translate(-628.000000, -301.000000)" fill="#FFFFFF">
+            <g id="编组-19" transform="translate(164.000000, 245.000000)">
+                <g id="曲目列表" transform="translate(24.000000, 32.000000)">
+                    <g id="编组-16" transform="translate(380.000000, 10.000000)">
+                        <path d="M66.2288479,16.755497 L70.3478645,22.6398065 C70.8229363,23.3184804 70.6578841,24.2537761 69.9792102,24.7288479 C69.7270849,24.9053356 69.4267748,25 69.1190167,25 L60.8809833,25 C60.0525562,25 59.3809833,24.3284271 59.3809833,23.5 C59.3809833,23.1922418 59.4756477,22.8919318 59.6521355,22.6398065 L63.7711521,16.755497 C64.2462239,16.076823 65.1815196,15.9117708 65.8601935,16.3868426 C66.0036555,16.487266 66.1284245,16.612035 66.2288479,16.755497 Z" id="三角形" transform="translate(65.000000, 20.000000) rotate(-270.000000) translate(-65.000000, -20.000000) "></path>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 19 - 0
src/views/xiaoku-music/images/icon_pre.svg

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="40px" height="40px" viewBox="0 0 40 40" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>曲目列表/收藏备份</title>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="68、小酷AI-试听歌曲" transform="translate(-641.000000, -1006.000000)">
+            <g id="编组-24" transform="translate(100.000000, 972.000000)">
+                <g id="编组-8" transform="translate(453.000000, 29.000000)">
+                    <g id="shoucang/weidianji备份" transform="translate(88.000000, 5.000000)">
+                        <g id="编组" transform="translate(11.000000, 11.000000)" fill="#333333">
+                            <g id="曲谱列表/下一首备份" transform="translate(9.000000, 9.000000) scale(-1, 1) translate(-9.000000, -9.000000) ">
+                                <path d="M14.5510322,1 C15.3794593,1 16.0510322,1.67157288 16.0510322,2.5 L16.0510322,15.5 C16.0510322,16.3284271 15.3794593,17 14.5510322,17 C13.7226051,17 13.0510322,16.3284271 13.0510322,15.5 L13.051,10.601 L3.90063159,16.4881908 C3.02628247,17.0505706 1.86158358,16.7976694 1.29920381,15.9233203 C1.10386363,15.6196189 1,15.2661404 1,14.9050417 L1,3.08430685 C1,2.04471202 1.84275812,1.2019539 2.88235294,1.2019539 C3.24345169,1.2019539 3.59693022,1.30581754 3.90063159,1.50115771 L13.051,7.387 L13.0510322,2.5 C13.0510322,1.67157288 13.7226051,1 14.5510322,1 Z" id="形状结合"></path>
+                            </g>
+                        </g>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 4 - 0
src/views/xiaoku-music/images/icon_separator.svg

@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+    xmlns:xlink="http://www.w3.org/1999/xlink" height="12" viewBox="0 0 24 24">
+    <path d="M7.38 21.01c.49.49 1.28.49 1.77 0l8.31-8.31a.996.996 0 0 0 0-1.41L9.15 2.98c-.49-.49-1.28-.49-1.77 0s-.49 1.28 0 1.77L14.62 12l-7.25 7.25c-.48.48-.48 1.28.01 1.76z" fill="rgba(164,166,193,1)"></path>
+</svg>

+ 5 - 0
src/views/xiaoku-music/images/index.tsx

@@ -0,0 +1,5 @@
+const icons = import.meta.glob("./*", { import: "default", eager: true });
+export const getImage = (name: string) => {
+    const src = icons[`./${name}`] as unknown as string || ''
+	return src;
+};

+ 273 - 0
src/views/xiaoku-music/index.module.less

@@ -0,0 +1,273 @@
+.container {
+    height: 100%;
+
+    :global {
+        .n-breadcrumb>ul {
+            display: flex;
+            align-items: center;
+
+            .n-breadcrumb-item {
+                display: flex;
+                align-items: center;
+            }
+
+            .n-breadcrumb-item__separator {
+                display: none;
+            }
+
+            .n-breadcrumb-item__link {
+                padding: 5Px 18Px;
+                background: #FFFFFF;
+                border-radius: 16Px;
+                color: #21225D;
+                line-height: 20Px;
+            }
+        }
+
+        .n-breadcrumb .n-breadcrumb-item:last-child .n-breadcrumb-item__link {
+            color: #fff;
+            background: var(--product-color);
+        }
+
+    }
+
+    &> :global(.n-space) {
+        height: 36Px;
+    }
+
+    .separator {
+        height: 18Px;
+        margin: 0 16Px;
+    }
+}
+
+.wrap {
+    padding-top: 20Px;
+    height: calc(100% - 36Px);
+}
+
+.content {
+    height: calc(100% - 20Px);
+    background: #DDF2FF;
+    border-radius: 20Px;
+}
+
+.tools {
+    padding: 20Px;
+    display: flex;
+    align-items: center;
+    flex-shrink: 0;
+
+    .tags {
+        margin-right: 15Px;
+    }
+
+    :global {
+        .n-input {
+            margin-left: auto;
+            width: 361Px;
+        }
+
+        .n-button {
+            min-width: 84Px;
+        }
+    }
+}
+
+.contentWrap {
+    height: calc(100% - 82Px);
+    display: flex;
+    padding: 0 20Px 20Px;
+    transition: padding .3s;
+}
+
+.musicList {
+    width: 548Px;
+    height: 100%;
+    overflow-x: hidden;
+    overflow-y: auto;
+
+    &::-webkit-scrollbar {
+        width: 0;
+        display: none;
+    }
+
+    .wrapList {
+        width: 512Px;
+        background: #fff;
+        border-radius: 16Px;
+        padding: 8Px;
+    }
+}
+
+.item {
+    position: relative;
+    display: flex;
+    align-items: center;
+    padding: 10Px;
+    margin: 4Px 0;
+    border-radius: 12Px;
+    cursor: pointer;
+
+    &:hover {
+        background-color: rgba(0, 0, 0, .05);
+    }
+
+    &.active {
+        background-color: #DDF2FF;
+
+        .arrow {
+            opacity: 1;
+        }
+    }
+
+    .img {
+        position: relative;
+        width: 60Px;
+        height: 60Px;
+        border-radius: 8Px;
+        margin-right: 12Px;
+        box-shadow: 0 0 10px 4px rgba(27, 35, 55, .1);
+        overflow: hidden;
+
+        :global {
+            .n-image {
+                width: 100%;
+                height: 100%;
+            }
+        }
+
+        img {
+            transition: opacity .3s;
+            opacity: 0;
+        }
+
+        img[data-loaded="true"] {
+            opacity: 1;
+        }
+    }
+
+    .title {
+        flex: 1;
+        margin-right: 15Px;
+
+        .titleName {
+            font-size: 16Px;
+            font-weight: 600;
+            color: #131415;
+            line-height: 28Px;
+        }
+
+        .titleDes {
+            font-size: 14Px;
+            font-weight: 400;
+            color: #777777;
+            line-height: 20Px;
+        }
+    }
+
+    .btn {
+        margin-left: auto;
+        width: 84Px;
+        height: 40Px;
+        background: linear-gradient(73deg, #5BECFF 0%, #259CFE 100%);
+        border: none;
+        padding: 0;
+        font-weight: bold !important;
+
+        :global {
+            .n-button__content {
+                &>img {
+                    margin-left: 10Px;
+                }
+            }
+        }
+    }
+
+    .arrow {
+        position: absolute;
+        top: 50%;
+        right: 0;
+        transform: translate(124%, -50%);
+        opacity: 0;
+    }
+    .showPlayLoading{
+        opacity: 0;
+    }
+
+}
+
+.musicStaff {
+    display: flex;
+    flex-direction: column;
+    position: relative;
+    left: -8Px;
+    flex: 1;
+    background-color: #fff;
+    border-radius: 16Px;
+    height: 100%;
+    z-index: 1;
+    overflow: hidden;
+
+    &::-webkit-scrollbar {
+        width: 0;
+        display: none;
+    }
+
+    .goBtn {
+        position: absolute;
+        left: 50%;
+        bottom: 46Px;
+        transform: translateX(-50%);
+        width: 276px;
+        height: 102px;
+        cursor: pointer;
+    }
+
+    .favitor {
+        position: absolute;
+        top: 20px;
+        right: 24px;
+        width: 48px;
+        height: 48px;
+        cursor: pointer;
+
+        &>img {
+            display: block;
+            width: 100%;
+            height: 100%;
+            filter: drop-shadow(0 0 10px rgba(27, 35, 55, .1));
+        }
+    }
+}
+
+.musicName {
+    padding-top: 30Px;
+    font-size: 24Px;
+    font-weight: 500;
+    color: #333;
+    line-height: 24Px;
+    text-align: center;
+}
+
+.staffImgs {
+    flex: 1;
+    overflow-y: auto;
+
+    &>img {
+        width: 100%;
+    }
+}
+
+:global {
+
+    .van-fade-enter-active,
+    .van-fade-leave-active {
+        transition: all 0.3s;
+    }
+
+    .van-fade-enter-from,
+    .van-fade-leave-to {
+        opacity: 0;
+    }
+}

+ 236 - 6
src/views/xiaoku-music/index.tsx

@@ -1,8 +1,238 @@
-import { defineComponent } from "vue";
+import {
+  Transition,
+  TransitionGroup,
+  computed,
+  defineComponent,
+  reactive
+} from 'vue';
+import styles from './index.module.less';
+import icon_back from './images/icon_back.svg';
+import icon_separator from './images/icon_separator.svg';
+import {
+  NBreadcrumb,
+  NBreadcrumbItem,
+  NButton,
+  NImage,
+  NSpace
+} from 'naive-ui';
+import TheSearch from '/src/components/TheSearch';
+import listData from './data.json';
+import { IMusicItem } from './type';
+import icon_arrow from './images/icon_arrow.svg';
+import icon_play from './images/icon_play.svg';
+import icon_pause from './images/icon_pause.svg';
+import icon_goXiaoku from './images/icon_goXiaoku.svg';
+import icon_favitor from '/src/common/images/icon-collect-default.png';
+import icon_favitorActive from '/src/common/images/icon-collect-active.png';
+import { useRouter } from 'vue-router';
+import PlayItem from './component/play-item';
+import PlayLoading from './component/play-loading';
 
 export default defineComponent({
-    name: 'XiaokuMusic',
-    setup(){
-        return () => <div>music</div>
-    }
-})
+  name: 'XiaokuMusic',
+  setup() {
+    const router = useRouter();
+    const data = reactive({
+      tags: [
+        { name: '全部', id: 0 },
+        { name: '竖笛', id: 1 },
+        { name: '排箫', id: 2 },
+        { name: '口风琴', id: 3 },
+        { name: '陶笛', id: 4 },
+        { name: '葫芦丝', id: 5 }
+      ],
+      tagIndex: 0,
+      list: listData.rows as unknown as IMusicItem[],
+      listActive: 0,
+      playState: 'pause' as 'play' | 'pause',
+      showPlayer: false
+    });
+
+    /** 改变模仿的曲谱 */
+    const handleChange = (item: IMusicItem) => {
+      const index = data.list.findIndex(_item => _item.id === item.id);
+      if (index > -1) {
+        data.listActive = index;
+      }
+    };
+    /** 选中的item */
+    const activeItem = computed(() => {
+      return data.list[data.listActive] || {};
+    });
+
+    /** 收藏 */
+    const handleFavitor = () => {
+      data.list[data.listActive].delFlag = !data.list[data.listActive].delFlag;
+    };
+
+    /** 播放曲目 */
+    const handlePlay = (item: IMusicItem) => {
+      const index = data.list.findIndex(_item => _item.id === item.id);
+      if (index > -1) {
+        if (data.listActive === index) {
+          data.playState = data.playState === 'play' ? 'pause' : 'play';
+        } else {
+          data.playState = 'play';
+        }
+        data.showPlayer = true;
+        data.listActive = index;
+      }
+    };
+
+    /** 音频控制 */
+    const handleChangeAudio = (type: 'play' | 'pause' | 'pre' | 'next') => {
+      console.log("🚀 ~ type:", type)
+      if (type === 'play') {
+        data.playState = 'play';
+      } else if (type === 'pause') {
+        data.playState = 'pause';
+      } else if (type === 'pre') {
+        if (data.list[data.listActive - 1]) {
+          handlePlay(data.list[data.listActive - 1]);
+        }
+      } else if (type === 'next') {
+        if (data.list[data.listActive + 1]) {
+          handlePlay(data.list[data.listActive + 1]);
+        }
+      } else if (type === 'favitor') {
+        handleFavitor()
+      }
+    };
+    return () => (
+      <div class={styles.container}>
+        <NSpace align="center" wrapItem={false} size={16}>
+          <img
+            style={{ cursor: 'pointer' }}
+            src={icon_back}
+            onClick={() => router.push({ path: '/xiaoku-ai' })}
+          />
+          <NBreadcrumb separator="">
+            <NBreadcrumbItem
+              onClick={() => router.push({ path: '/xiaoku-ai' })}>
+              选择教材
+            </NBreadcrumbItem>
+            <img class={styles.separator} src={icon_separator} />
+            <NBreadcrumbItem>一年级上册人教版(2013版)</NBreadcrumbItem>
+          </NBreadcrumb>
+        </NSpace>
+        <div class={styles.wrap}>
+          <div class={styles.content}>
+            <div class={styles.tools}>
+              <div class={styles.tags}>
+                <NSpace size={[24, 12]} wrap={false}>
+                  {data.tags.map((item, index) => (
+                    <NButton
+                      round
+                      textColor={data.tagIndex === index ? '#fff' : '#000'}
+                      color={data.tagIndex === index ? '#198CFE' : '#fff'}
+                      onClick={() => (data.tagIndex = index)}>
+                      {item.name}
+                    </NButton>
+                  ))}
+                </NSpace>
+              </div>
+              <TheSearch round />
+            </div>
+
+            <div
+              class={styles.contentWrap}
+              style={{ paddingBottom: data.showPlayer ? '90px' : '' }}>
+              <div class={styles.musicList}>
+                <div class={styles.wrapList}>
+                  {data.list.map((item: IMusicItem, index) => {
+                    return (
+                      <div
+                        class={[
+                          styles.item,
+                          data.listActive === index && styles.active
+                        ]}
+                        onClick={() => handleChange(item)}>
+                        <div class={styles.img}>
+                          <NImage
+                            lazy
+                            objectFit="cover"
+                            previewDisabled={true}
+                            src={item.titleImg}
+                            onLoad={e => {
+                              (e.target as any).dataset.loaded = 'true';
+                            }}
+                          />
+                          <PlayLoading
+                            class={[
+                              data.listActive === index &&
+                              data.playState === 'play'
+                                ? ''
+                                : styles.showPlayLoading
+                            ]}
+                          />
+                        </div>
+                        <div class={styles.title}>
+                          <div class={styles.titleName}>
+                            {item.musicSheetName}
+                          </div>
+                          <div class={styles.titleDes}>{item.composer}</div>
+                        </div>
+                        <NButton
+                          color="#259CFE"
+                          textColor="#fff"
+                          round
+                          class={styles.btn}
+                          type="primary"
+                          onClick={(e: Event) => {
+                            e.stopPropagation();
+                            handlePlay(item);
+                          }}>
+                          试听
+                          <img
+                            src={
+                              data.listActive === index &&
+                              data.playState === 'play'
+                                ? icon_pause
+                                : icon_play
+                            }
+                          />
+                        </NButton>
+                        <img class={styles.arrow} src={icon_arrow} />
+                      </div>
+                    );
+                  })}
+                </div>
+              </div>
+
+              <div class={styles.musicStaff}>
+                <div class={styles.musicName}>
+                  {activeItem.value.musicSheetName}
+                </div>
+                <img class={styles.goBtn} src={icon_goXiaoku} />
+                <div class={styles.favitor} onClick={() => handleFavitor()}>
+                  <Transition name="favitor" mode="out-in">
+                    {activeItem.value.delFlag ? (
+                      <img src={icon_favitorActive} key="1" />
+                    ) : (
+                      <img src={icon_favitor} key="2" />
+                    )}
+                  </Transition>
+                </div>
+                <div class={styles.staffImgs}>
+                  <TransitionGroup name="van-fade">
+                    {activeItem.value?.firstTone
+                      ?.split(',')
+                      .map((item, index) => {
+                        return <img src={item} key={item} />;
+                      })}
+                  </TransitionGroup>
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+        <PlayItem
+          show={data.showPlayer}
+          playState={data.playState}
+          item={activeItem.value}
+          onChange={value => handleChangeAudio(value)}
+        />
+      </div>
+    );
+  }
+});

+ 11 - 0
src/views/xiaoku-music/type.ts

@@ -0,0 +1,11 @@
+/** 曲谱信息 */
+export interface IMusicItem {
+  id: number | string;
+  musicSheetName: string;
+  composer: string;
+  titleImg: string;
+  audioFileUrl: string;
+  /** 首调 */
+  firstTone: string;
+  delFlag: boolean;
+}