|
@@ -6,6 +6,7 @@ import styles from "./index.module.less";
|
|
|
import { getQuery } from "/src/utils/queryString";
|
|
|
import backIcon from "./image/back_icon.png";
|
|
|
import videoIcon from "./image/video_icon.png";
|
|
|
+import { api_musicPracticeRecordDetail } from "../api";
|
|
|
|
|
|
|
|
|
export default defineComponent({
|
|
@@ -15,14 +16,30 @@ export default defineComponent({
|
|
|
const scoreData = reactive({
|
|
|
videoFilePath: "", // 回放视频路径
|
|
|
openRealPitch: false,
|
|
|
+ xmlNotes: [],
|
|
|
});
|
|
|
|
|
|
+ const getRecordDetail = async () => {
|
|
|
+ state.isEvaluatReport = true;
|
|
|
+ const res = await api_musicPracticeRecordDetail(query.id);
|
|
|
+ state.partIndex = Number(res?.data?.partIndex);
|
|
|
+ let resultData = {} as any;
|
|
|
+ try {
|
|
|
+ resultData = eval('(' + res?.data?.scoreData + ')');
|
|
|
+ scoreData.xmlNotes = eval('(' + JSON.parse(res.data.scoreData)?.musicalNotesPlayStats?.musicXmlBasicInfo + ')')?.musicXmlInfos || []
|
|
|
+ } catch (error) {
|
|
|
+ console.error("解析评测结果:", error);
|
|
|
+ }
|
|
|
+ console.log(11111,scoreData.xmlNotes)
|
|
|
+ scoreData.videoFilePath = res.data?.videoFilePath || res.data?.recordFilePath;
|
|
|
+ }
|
|
|
+
|
|
|
onBeforeMount(() => {
|
|
|
|
|
|
});
|
|
|
|
|
|
onMounted(async () => {
|
|
|
- state.isEvaluatReport = true;
|
|
|
+ getRecordDetail()
|
|
|
});
|
|
|
|
|
|
|
|
@@ -66,7 +83,7 @@ export default defineComponent({
|
|
|
{
|
|
|
[1,1,1,1,1,1,1,1,1,1].map((item: any, mIndex: number) =>
|
|
|
<>
|
|
|
- <div>
|
|
|
+ <div class={styles.stColumn}>
|
|
|
<div class={styles.stMeasure}>
|
|
|
<p class={styles.mBeat}>
|
|
|
<span>4</span>
|