浏览代码

fix: bug修复

TIANYONG 11 月之前
父节点
当前提交
769a360bf3

+ 1 - 1
src/helpers/customMusicScore.ts

@@ -574,7 +574,7 @@ export const resetFormate = () => {
 		}
 
 	}
-	if (!state.isCombineRender) {
+	if (!state.isCombineRender && state.isSingleLine) {
 		transSinglePage();
 	}
 	// setTimeout(() => this.resetGlobalText());

+ 13 - 12
src/page-instrument/view-evaluat-report/index.tsx

@@ -176,7 +176,7 @@ export default defineComponent({
       // console.log("🚀 ~ resultData:", resultData);
       // @ts-ignore
       // resultData.musicalNotesPlayStats?.notesData.forEach((item) => item.rhythmicAssessment.result = 'EARLY')
-      console.log('结果11')
+      console.log('结果11',resultData)
       detailData.musicalNotesPlayStats = resultData.musicalNotesPlayStats?.notesData || [];
       detailData.userMeasureScore = resultData.userMeasureScore || {};
 
@@ -276,7 +276,11 @@ export default defineComponent({
           const stemEl = document.getElementById("vf-" + active.id + "-stem");
           let errType = scoreData.itemType === "cadence" ? note.rhythmicAssessment.result : note.pitchAssessment.result;
           // console.log(1111222,errType)
-          const isNeedCopyElement = scoreData.itemType === "integrity" ? false : ["HIGH", "LOW", "EARLY", "LATE"].includes(errType);
+          /**
+           * 新版小酷AI不需要在当前的音符复制出来一个音符,所以注释掉isNeedCopyElement和copySvg
+           */
+          // const isNeedCopyElement = scoreData.itemType === "integrity" ? false : ["HIGH", "LOW", "EARLY", "LATE"].includes(errType);
+          const isNeedCopyElement = false;
           if (scoreData.itemType === "integrity") {
             errType = errType = note.pitchAssessment.result === "HIGH" || note.pitchAssessment.result === "LOW" || note.pitchAssessment.result === "WRONG" ? "RIGHT" : errType;
           }
@@ -299,14 +303,14 @@ export default defineComponent({
             if (scoreData.musicType === "staff") {
               stemEl?.classList.add(colorsClass.RIGHT);
               svgEl?.classList.add(colorsClass.RIGHT);
-              copySvg = svgEl.querySelector(".vf-notehead")!.cloneNode(true) as SVGSVGElement;
+              // copySvg = svgEl.querySelector(".vf-notehead")!.cloneNode(true) as SVGSVGElement;
             } else {
               //copySvg = svgEl.querySelector('.vf-numbered-note-head')!.cloneNode(true) as SVGSVGElement
 
               if (isNeedCopyElement) {
                 svgEl?.classList.add(styles.inaccuracy);
                 const targetId = errType === "HIGH" ? "topSvg" : errType === "LOW" ? "bottomSvg" : errType === "EARLY" ? "leftSvg" : errType === "LATE" ? "rightSvg" : "";
-                copySvg = document.getElementById(targetId)!.cloneNode(true) as SVGSVGElement;
+                // copySvg = document.getElementById(targetId)!.cloneNode(true) as SVGSVGElement;
                 const { width, height } = svgEl.getBoundingClientRect() || {};
                 // @ts-ignore
                 let { x, y } = svgEl?.getBBox() || {};
@@ -326,18 +330,15 @@ export default defineComponent({
               // svgEl.prepend(rect);
             }
             if (scoreData.musicType === "staff") {
-              copySvg.style.transform = getOffsetPosition(errType);
-              //svgEl.style.opacity = '.7'
+              // copySvg.style.transform = getOffsetPosition(errType);
               if (stemEl) {
-                //stemEl.style.opacity = '.7'
+                //
               }
             }
-            copySvg.id = "vf-" + active.id + "-copy";
-            copySvg?.classList.add(colorsClass[errType]);
-            // stemEl?.classList.add(colorsClass.RIGHT)
+            // copySvg.id = "vf-" + active.id + "-copy";
+            // copySvg?.classList.add(colorsClass[errType]);
             // @ts-ignore
-            state.osmd?.container.querySelector("svg")!.insertAdjacentElement("afterbegin", copySvg);
-            // svgEl?.parentElement?.appendChild(copySvg)
+            // state.osmd?.container.querySelector("svg")!.insertAdjacentElement("afterbegin", copySvg);
           }
         }, 300);
       }

+ 2 - 1
src/view/music-score/index.tsx

@@ -10,6 +10,7 @@ import { getGradualLengthByXml } from "/src/helpers/calcSpeed";
 import { resetFormate, resetGivenFormate, setGlobalMusicSheet } from "/src/helpers/customMusicScore"
 import { setGlobalData } from "/src/utils";
 import Loading from "/src/view/audio-list/loading"
+import { storeData } from "/src/store";
 
 export const musicRenderTypeKey = "musicRenderType";
 let osmd: any = null;
@@ -122,7 +123,7 @@ export default defineComponent({
 				osmd.EngravingRules.BreathMarkDistance = 0.1; 
 				osmd.EngravingRules.PageBottomMargin = 0;
 			} else {
-				osmd.EngravingRules.PageTopMargin = state.isEvaluatReport ? 7 : 3; // 顶部间距
+				osmd.EngravingRules.PageTopMargin = state.isEvaluatReport && storeData.isApp ? 24 : state.isEvaluatReport ? 7 : 3; // 顶部间距
 				osmd.EngravingRules.PageTopMarginNarrow = 3;
 				osmd.EngravingRules.PageLeftMargin = 2;
 				osmd.EngravingRules.PageRightMargin = 2;

+ 15 - 2
src/view/plugins/toggleMusicSheet/choosePartName/index.tsx

@@ -1,9 +1,10 @@
-import { PropType, computed, defineComponent, ref, toRefs, onMounted } from 'vue'
+import { PropType, computed, defineComponent, ref, toRefs, onMounted, watch } from 'vue'
 import { Picker, Button, Icon } from 'vant'
 import styles from './index.module.less'
 import state, { IPlatform } from "/src/state";
 import changeName from "./imgs/changeName.png"
 import { headImg } from "/src/page-instrument/header-top/image";
+import { toggleMusicSheet } from "../index"
 
 export default defineComponent({
   name: 'choosePartName',
@@ -38,6 +39,18 @@ export default defineComponent({
     onMounted(() => {
 			// console.log(myPicker.value,99999,selValues.value,props.partIndex)
 		});
+
+    watch(
+      () => toggleMusicSheet.show,
+      () => {
+        if (toggleMusicSheet.show) {
+          selectIndex.value = partIndex.value
+          selValues.value = [partIndex.value]
+        }
+        //console.log('声轨',selValues.value,partIndex.value,selectIndex.value)
+      }
+    );
+
     return () => (
       <div class={[styles.container, state.platform === IPlatform.PC && styles.pcContainer, styles[state.modeType]]}>
         <div class={styles.head}>
@@ -56,7 +69,7 @@ export default defineComponent({
               columns={columns.value}
               visibleItemCount={Math.ceil(document.body.clientHeight / 40 / 3)}
               onChange={(row) => {
-                // console.log(1111,'选择的索引', row)
+                console.log(1111,'选择的索引', row)
                 if (!partIndexChanged.value) partIndexChanged.value = true
                 selectIndex.value = row.selectedValues[0]
               }}

+ 1 - 2
src/view/plugins/toggleMusicSheet/index.tsx

@@ -1,4 +1,4 @@
-import { computed, defineComponent, reactive, toRef } from 'vue'
+import { computed, defineComponent, reactive, toRef, watch } from 'vue'
 import styles from './index.module.less'
 import { Icon, Popup } from 'vant'
 import ChoosePartName from './choosePartName'
@@ -22,7 +22,6 @@ export default defineComponent({
   name: 'ToggleMusicSheet',
   setup() {
     const query = getQuery();
-
     const partListNames = computed(() => {
       let partList = state.partListNames || []
       partList = partList.filter((item: any) => !item?.toLocaleUpperCase()?.includes('COMMON'))