Ver Fonte

fix:评测弹窗

liushengqiang há 2 anos atrás
pai
commit
f354f717fb

+ 51 - 0
src/page-instrument/evaluat-model/evaluat-audio/icon_cancel.svg

@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="117px" height="37px" viewBox="0 0 117 37" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>button-normal备份</title>
+    <defs>
+        <linearGradient x1="50%" y1="2.13785238%" x2="50%" y2="100%" id="linearGradient-1">
+            <stop stop-color="#E9E9E9" offset="0%"></stop>
+            <stop stop-color="#C9C9C9" offset="100%"></stop>
+        </linearGradient>
+        <path d="M0,17 C0,7.61115925 7.60904153,0 16.9971663,0 L100.002834,0 C109.390109,0 117,7.60909491 117,17 L117,17 C117,26.3888407 109.390958,34 100.002834,34 L16.9971663,34 C7.60989058,34 0,26.3909051 0,17 L0,17 Z" id="path-2"></path>
+        <filter x="-0.9%" y="-2.9%" width="101.7%" height="111.8%" filterUnits="objectBoundingBox" id="filter-3">
+            <feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feColorMatrix values="0 0 0 0 0.804223987   0 0 0 0 0.804223987   0 0 0 0 0.804223987  0 0 0 1 0" type="matrix" in="shadowOffsetOuter1"></feColorMatrix>
+        </filter>
+        <filter x="-1.7%" y="-5.9%" width="103.4%" height="117.6%" filterUnits="objectBoundingBox" id="filter-4">
+            <feGaussianBlur stdDeviation="1.5" in="SourceAlpha" result="shadowBlurInner1"></feGaussianBlur>
+            <feOffset dx="0" dy="1" in="shadowBlurInner1" result="shadowOffsetInner1"></feOffset>
+            <feComposite in="shadowOffsetInner1" in2="SourceAlpha" operator="arithmetic" k2="-1" k3="1" result="shadowInnerInner1"></feComposite>
+            <feColorMatrix values="0 0 0 0 1   0 0 0 0 1   0 0 0 0 1  0 0 0 0.5 0" type="matrix" in="shadowInnerInner1"></feColorMatrix>
+        </filter>
+        <text id="text-5" font-family="STYuanti-SC-Bold, Yuanti SC" font-size="16" font-weight="bold" letter-spacing="0.914285714" fill="#FFFFFF">
+            <tspan x="41.5857143" y="22">取消</tspan>
+        </text>
+        <filter x="-7.9%" y="-18.2%" width="115.9%" height="145.5%" filterUnits="objectBoundingBox" id="filter-6">
+            <feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feGaussianBlur stdDeviation="1.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
+            <feColorMatrix values="0 0 0 0 0.510962887   0 0 0 0 0.510962887   0 0 0 0 0.510962887  0 0 0 0.597490644 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
+        </filter>
+    </defs>
+    <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="曲谱评测(按钮合集)" transform="translate(-80.000000, -250.000000)">
+            <g id="弹窗备份" transform="translate(70.000000, 135.300000)">
+                <g id="button-normal备份" transform="translate(10.000000, 115.608737)">
+                    <g id="button-normal">
+                        <use fill="black" fill-opacity="1" filter="url(#filter-3)" xlink:href="#path-2"></use>
+                        <use fill="url(#linearGradient-1)" fill-rule="evenodd" xlink:href="#path-2"></use>
+                        <use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-2"></use>
+                    </g>
+                    <path d="M5.29281147,8.58018897 C7.4390966,13.9921969 10.1571046,16.6982008 13.4468356,16.6982008 C18.2676985,16.6982008 95.1625096,16.6982008 101.90185,16.6982008 C106.394743,16.6982008 109.960365,13.7988005 112.598716,8 C113.992892,13.5751446 114.565408,17.2438095 114.316264,19.0059945 C114.316264,19.0059945 114.316264,19.0059945 114.316264,19.0059945 C113.296432,26.2192179 107.122625,31.58155 99.8376644,31.5815344 L11.3446737,31.5815344 C5.11489123,25.4571796 2,20.6627351 2,17.1982008 C2,13.7336665 3.09760382,10.8609959 5.29281147,8.58018897 Z" id="矩形" fill="#EBEBEB" opacity="0.499798729"></path>
+                    <g id="编组-6" opacity="0.85" transform="translate(7.706999, 10.293001) rotate(-5.000000) translate(-7.706999, -10.293001) translate(1.477345, 3.038666)" fill="#FFFFFF">
+                        <ellipse id="椭圆形" opacity="0.882866269" transform="translate(7.522655, 4.961334) rotate(44.000000) translate(-7.522655, -4.961334) " cx="7.52265471" cy="4.96133431" rx="3" ry="4"></ellipse>
+                        <ellipse id="椭圆形备份-3" opacity="0.882866269" transform="translate(3.175326, 11.321004) rotate(44.000000) translate(-3.175326, -11.321004) " cx="3.17532553" cy="11.3210042" rx="2" ry="2.5"></ellipse>
+                    </g>
+                    <g id="取消" fill="#FFFFFF" fill-opacity="1">
+                        <use filter="url(#filter-6)" xlink:href="#text-5"></use>
+                        <use xlink:href="#text-5"></use>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 51 - 0
src/page-instrument/evaluat-model/evaluat-audio/icon_confirm.svg

@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="117px" height="37px" viewBox="0 0 117 37" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>button-normal备份 4</title>
+    <defs>
+        <linearGradient x1="47.3839597%" y1="0%" x2="47.3839597%" y2="100%" id="linearGradient-1">
+            <stop stop-color="#5BECFF" offset="0%"></stop>
+            <stop stop-color="#259CFE" offset="100%"></stop>
+        </linearGradient>
+        <path d="M0,17 C0,7.61115925 7.60904153,0 16.9971663,0 L100.002834,0 C109.390109,0 117,7.60909491 117,17 L117,17 C117,26.3888407 109.390958,34 100.002834,34 L16.9971663,34 C7.60989058,34 0,26.3909051 0,17 L0,17 Z" id="path-2"></path>
+        <filter x="-0.9%" y="-2.9%" width="101.7%" height="111.8%" filterUnits="objectBoundingBox" id="filter-3">
+            <feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feColorMatrix values="0 0 0 0 0.140022123   0 0 0 0 0.580018696   0 0 0 0 0.741724871  0 0 0 1 0" type="matrix" in="shadowOffsetOuter1"></feColorMatrix>
+        </filter>
+        <filter x="-1.7%" y="-5.9%" width="103.4%" height="117.6%" filterUnits="objectBoundingBox" id="filter-4">
+            <feGaussianBlur stdDeviation="1.5" in="SourceAlpha" result="shadowBlurInner1"></feGaussianBlur>
+            <feOffset dx="0" dy="1" in="shadowBlurInner1" result="shadowOffsetInner1"></feOffset>
+            <feComposite in="shadowOffsetInner1" in2="SourceAlpha" operator="arithmetic" k2="-1" k3="1" result="shadowInnerInner1"></feComposite>
+            <feColorMatrix values="0 0 0 0 1   0 0 0 0 1   0 0 0 0 1  0 0 0 0.5 0" type="matrix" in="shadowInnerInner1"></feColorMatrix>
+        </filter>
+        <text id="text-5" font-family="STYuanti-SC-Bold, Yuanti SC" font-size="16" font-weight="bold" letter-spacing="0.914285714" fill="#FFFFFF">
+            <tspan x="41.5857143" y="22">确定</tspan>
+        </text>
+        <filter x="-3.2%" y="-4.5%" width="106.3%" height="118.2%" filterUnits="objectBoundingBox" id="filter-6">
+            <feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feGaussianBlur stdDeviation="0.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
+            <feColorMatrix values="0 0 0 0 0.161975631   0 0 0 0 0.583690214   0 0 0 0 0.702658833  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="曲谱评测(按钮合集)" transform="translate(-203.000000, -250.000000)">
+            <g id="弹窗备份" transform="translate(70.000000, 135.300000)">
+                <g id="button-normal备份-4" transform="translate(133.000000, 115.608737)">
+                    <g id="button-normal">
+                        <use fill="black" fill-opacity="1" filter="url(#filter-3)" xlink:href="#path-2"></use>
+                        <use fill="url(#linearGradient-1)" fill-rule="evenodd" xlink:href="#path-2"></use>
+                        <use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-2"></use>
+                    </g>
+                    <path d="M5.29281147,8.58018897 C7.4390966,13.9921969 10.1571046,16.6982008 13.4468356,16.6982008 C18.2676985,16.6982008 95.1625096,16.6982008 101.90185,16.6982008 C106.394743,16.6982008 109.960365,13.7988005 112.598716,8 C113.992892,13.5751446 114.565408,17.2438095 114.316264,19.0059945 C114.316264,19.0059945 114.316264,19.0059945 114.316264,19.0059945 C113.296432,26.2192179 107.122625,31.58155 99.8376644,31.5815344 L11.3446737,31.5815344 C5.11489123,25.4571796 2,20.6627351 2,17.1982008 C2,13.7336665 3.09760382,10.8609959 5.29281147,8.58018897 Z" id="矩形" fill="#1CACF1" opacity="0.499798729"></path>
+                    <g id="编组-6" opacity="0.85" transform="translate(7.706999, 10.293001) rotate(-5.000000) translate(-7.706999, -10.293001) translate(1.477345, 3.038666)" fill="#FFFFFF">
+                        <ellipse id="椭圆形" opacity="0.882866269" transform="translate(7.522655, 4.961334) rotate(44.000000) translate(-7.522655, -4.961334) " cx="7.52265471" cy="4.96133431" rx="3" ry="4"></ellipse>
+                        <ellipse id="椭圆形备份-3" opacity="0.882866269" transform="translate(3.175326, 11.321004) rotate(44.000000) translate(-3.175326, -11.321004) " cx="3.17532553" cy="11.3210042" rx="2" ry="2.5"></ellipse>
+                    </g>
+                    <g id="确定" fill="#FFFFFF" fill-opacity="1">
+                        <use filter="url(#filter-6)" xlink:href="#text-5"></use>
+                        <use xlink:href="#text-5"></use>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

+ 49 - 0
src/page-instrument/evaluat-model/evaluat-audio/icon_title.svg

@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="100px" height="32px" viewBox="0 0 100 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>提示</title>
+    <defs>
+        <linearGradient x1="47.3839597%" y1="0%" x2="47.3839597%" y2="100%" id="linearGradient-1">
+            <stop stop-color="#5BECFF" offset="0%"></stop>
+            <stop stop-color="#259CFE" offset="100%"></stop>
+        </linearGradient>
+        <path d="M96.7823788,0 L90.5846608,22.7759342 C89.8240153,26.0573606 86.9400515,28.7174823 84.1431474,28.7174823 L14.9318296,28.7174823 C12.1349256,28.7174823 9.25096178,26.0573606 8.4903162,22.7759342 L2.2925983,0 L96.7823788,0 Z" id="path-2"></path>
+        <filter x="-1.1%" y="-3.5%" width="102.1%" height="113.9%" filterUnits="objectBoundingBox" id="filter-3">
+            <feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feColorMatrix values="0 0 0 0 0.140022123   0 0 0 0 0.580018696   0 0 0 0 0.741724871  0 0 0 1 0" type="matrix" in="shadowOffsetOuter1"></feColorMatrix>
+        </filter>
+        <filter x="-2.1%" y="-7.0%" width="104.2%" height="120.9%" filterUnits="objectBoundingBox" id="filter-4">
+            <feGaussianBlur stdDeviation="1.5" in="SourceAlpha" result="shadowBlurInner1"></feGaussianBlur>
+            <feOffset dx="0" dy="1" in="shadowBlurInner1" result="shadowOffsetInner1"></feOffset>
+            <feComposite in="shadowOffsetInner1" in2="SourceAlpha" operator="arithmetic" k2="-1" k3="1" result="shadowInnerInner1"></feComposite>
+            <feColorMatrix values="0 0 0 0 1   0 0 0 0 1   0 0 0 0 1  0 0 0 0.5 0" type="matrix" in="shadowInnerInner1"></feColorMatrix>
+        </filter>
+        <text id="text-5" font-family="STYuanti-SC-Bold, Yuanti SC" font-size="16" font-weight="bold" letter-spacing="0.888888889" fill="#FFFFFF">
+            <tspan x="33.219328" y="18.8437604">提示</tspan>
+        </text>
+        <filter x="-8.4%" y="-11.4%" width="116.7%" height="131.8%" filterUnits="objectBoundingBox" id="filter-6">
+            <feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
+            <feGaussianBlur stdDeviation="1" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
+            <feColorMatrix values="0 0 0 0 0.0669194505   0 0 0 0 0.604883166   0 0 0 0 0.531826365  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="曲谱评测(按钮合集)" transform="translate(-152.000000, -135.000000)">
+            <g id="弹窗备份" transform="translate(70.000000, 135.300000)">
+                <g id="提示" transform="translate(82.000000, 0.000000)">
+                    <g id="编组-18">
+                        <path d="M95.5553244,0 C97.3792994,7.65854702e-15 99.0141649,1.12535386 99.665355,2.82912494 L100,3.705 L0.001,3.705 L0.335992412,2.82912494 C0.987182575,1.12535386 2.62204809,2.1114156e-15 4.44602301,0 L95.5553244,0 Z" id="形状结合" fill="#2494BD"></path>
+                        <g id="矩形">
+                            <use fill="black" fill-opacity="1" filter="url(#filter-3)" xlink:href="#path-2"></use>
+                            <use fill="url(#linearGradient-1)" fill-rule="evenodd" xlink:href="#path-2"></use>
+                            <use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-2"></use>
+                        </g>
+                    </g>
+                    <g fill="#FFFFFF" fill-opacity="1">
+                        <use filter="url(#filter-6)" xlink:href="#text-5"></use>
+                        <use xlink:href="#text-5"></use>
+                    </g>
+                </g>
+            </g>
+        </g>
+    </g>
+</svg>

Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 1
src/page-instrument/evaluat-model/evaluat-audio/index.json


+ 1 - 1
src/page-instrument/evaluat-model/evaluat-audio/index.module.less

@@ -5,7 +5,7 @@
     color: #fff;
     background-color: #fff;
     border-radius: 18px;
-    min-width: 244px;
+    width: 244px;
 }
 
 .title {

+ 6 - 4
src/page-instrument/evaluat-model/evaluat-audio/index.tsx

@@ -1,7 +1,9 @@
 import { defineComponent } from "vue";
 import styles from "./index.module.less";
-import icons from "./index.json";
 import state from "/src/state";
+import icon_title from './icon_title.svg'
+import icon_cancel from './icon_cancel.svg'
+import icon_confirm from './icon_confirm.svg'
 
 export default defineComponent({
 	name: "evaluat-audio",
@@ -10,12 +12,12 @@ export default defineComponent({
 		return () => (
 			<div class={styles.fraction}>
 				<div class={styles.title}>
-					<img src={icons.title} />
+					<img src={icon_title} />
 				</div>
 				<div class={styles.tip}>评测{state.setting.camera && state.setting.saveToAlbum ? "音视频" : "音频"}是否上传到云端?</div>
 				<div class={styles.btns}>
-					<img src={icons.cancel} class={styles.btn} onClick={() => emit("close")} />
-					<img src={icons.confirm} class={styles.btn} onClick={() => emit("close", true)} />
+					<img src={icon_cancel} class={styles.btn} onClick={() => emit("close")} />
+					<img src={icon_confirm} class={styles.btn} onClick={() => emit("close", true)} />
 				</div>
 			</div>
 		);

+ 1 - 1
src/page-instrument/evaluat-model/evaluat-result/index.tsx

@@ -27,7 +27,7 @@ export default defineComponent({
 					<div class={styles.headBtn} onClick={() => emit("close", "update")}>
 						保存演奏
 					</div>
-					<div class={styles.headBtn} style={{ display: storeData.platformType === "STUDENT" ? "block" : "" }} onClick={() => emit("close", "share")}>
+					<div class={styles.headBtn} style={{ display: storeData.platformType === "STUDENT" ? "block" : "", opacity: 0, pointerEvents: 'none' }} onClick={() => emit("close", "share")}>
 						分享
 					</div>
 				</div>

+ 66 - 19
src/page-instrument/evaluat-model/index.tsx

@@ -1,4 +1,3 @@
-import { Popup } from "@varlet/ui";
 import { Transition, defineComponent, onMounted, reactive, watch } from "vue";
 import {
 	connectWebsocket,
@@ -17,7 +16,7 @@ import state from "/src/state";
 import { storeData } from "/src/store";
 import { browser } from "/src/utils";
 import { getNoteByMeasuresSlursStart } from "/src/helpers/formateMusic";
-import { Icon, showToast } from "vant";
+import { Icon, Popup, showToast } from "vant";
 import EvaluatResult from "./evaluat-result";
 import EvaluatAudio from "./evaluat-audio";
 import { api_proxyServiceMessage, api_videoUpdate } from "/src/helpers/communication";
@@ -89,10 +88,18 @@ export default defineComponent({
 				}
 				const nextNote = state.times[index + 1];
 				// console.log("noteinfo", note.noteElement.isRestFlag && !!note.stave && !!nextNote)
-				if (skip && (note.stave || !item.noteElement.isRestFlag || (nextNote && !nextNote.noteElement.isRestFlag))) {
+				if (
+					skip &&
+					(note.stave || !item.noteElement.isRestFlag || (nextNote && !nextNote.noteElement.isRestFlag))
+				) {
 					skip = false;
 				}
-				if (note.noteElement.isRestFlag && !!note.stave && !!nextNote && nextNote.noteElement.isRestFlag) {
+				if (
+					note.noteElement.isRestFlag &&
+					!!note.stave &&
+					!!nextNote &&
+					nextNote.noteElement.isRestFlag
+				) {
 					skip = true;
 				}
 				// console.log(note.measureOpenIndex, item.measureOpenIndex, note);
@@ -128,7 +135,12 @@ export default defineComponent({
 				partIndex: state.partIndex,
 				behaviorId,
 				platform: browserInfo.ios ? "IOS" : browserInfo.android ? "ANDROID" : "WEB",
-				clientId: storeData.platformType === "STUDENT" ? "student" : storeData.platformType === "TEACHER" ? "teacher" : "education",
+				clientId:
+					storeData.platformType === "STUDENT"
+						? "student"
+						: storeData.platformType === "TEACHER"
+						? "teacher"
+						: "education",
 				hertz: state.setting.frequency,
 				reactionTimeMs: state.setting.reactionTimeMs,
 				speed: state.speed,
@@ -151,7 +163,7 @@ export default defineComponent({
 				return;
 			} else if (type === "look") {
 				// 跳转
-				handleViewReport('recordId', 'colexiu');
+				handleViewReport("recordId", "instrument");
 				return;
 			} else if (type === "practise") {
 				// 去练习
@@ -173,12 +185,12 @@ export default defineComponent({
 				evaluatModel.evaluatUpdateAudio = false;
 				api_videoUpdate((res: any) => {
 					if (res) {
-						if (res?.content?.type === 'success'){
+						if (res?.content?.type === "success") {
 							handleSaveResult({
 								recordId: evaluatingData.resultData?.recordId,
 								filePath: res?.content?.filePath,
-							})
-						} else if (res?.content?.type === 'error') {
+							});
+						} else if (res?.content?.type === "error") {
 							showToast({
 								message: res.content?.message || "上传失败",
 							});
@@ -201,9 +213,7 @@ export default defineComponent({
 				},
 				body: _body,
 			});
-			showToast({
-				message: "上传成功",
-			});
+			showToast("上传成功");
 		};
 
 		onMounted(() => {
@@ -235,19 +245,33 @@ export default defineComponent({
 					)}
 				</Transition>
 
-				<div style={{ display: !evaluatingData.startBegin ? "" : "none" }} class={styles.dialogueBox} key="start">
+				<div
+					style={{ display: !evaluatingData.startBegin ? "" : "none" }}
+					class={styles.dialogueBox}
+					key="start"
+				>
 					<div class={styles.dialogue}>
 						<img class={styles.dialoguebg} src={iconTastBg} />
 						<div>演奏前请调整好乐器,保证最佳演奏状态。</div>
 					</div>
 					<Vue3Lottie class={styles.dialogueIcon} animationData={startData}></Vue3Lottie>
 				</div>
-				<div style={{ display: evaluatingData.startBegin ? "" : "none" }} class={styles.dialogueBox} key="start">
+				<div
+					style={{ display: evaluatingData.startBegin ? "" : "none" }}
+					class={styles.dialogueBox}
+					key="start"
+				>
 					<div class={styles.dialogueing}>收音中...</div>
 					<Vue3Lottie class={styles.dialogueIcon} animationData={startingData}></Vue3Lottie>
 				</div>
 
-				<Popup teleport="body" closeOnClickOverlay={false} defaultStyle={false} v-model:show={evaluatingData.earphoneMode}>
+				<Popup
+					teleport="body"
+					closeOnClickOverlay={false}
+					class={["popup-custom", "van-scale"]}
+					transition="van-scale"
+					v-model:show={evaluatingData.earphoneMode}
+				>
 					<Earphone
 						onClose={() => {
 							evaluatingData.earphoneMode = false;
@@ -255,7 +279,13 @@ export default defineComponent({
 						}}
 					/>
 				</Popup>
-				<Popup teleport="body" closeOnClickOverlay={false} defaultStyle={false} v-model:show={evaluatingData.soundEffectMode}>
+				<Popup
+					teleport="body"
+					closeOnClickOverlay={false}
+					class={["popup-custom", "van-scale"]}
+					transition="van-scale"
+					v-model:show={evaluatingData.soundEffectMode}
+				>
 					<SoundEffect
 						onClose={(value: any) => {
 							evaluatingData.soundEffectMode = false;
@@ -268,13 +298,30 @@ export default defineComponent({
 					/>
 				</Popup>
 
-				<Popup teleport="body" closeOnClickOverlay={false} defaultStyle={false} v-model:show={evaluatingData.resulstMode}>
+				<Popup
+					teleport="body"
+					closeOnClickOverlay={false}
+					class={["popup-custom", "van-scale"]}
+					transition="van-scale"
+					v-model:show={evaluatingData.resulstMode}
+				>
 					<EvaluatResult onClose={handleEvaluatResult} />
 				</Popup>
-				<Popup teleport="body" closeOnClickOverlay={false} defaultStyle={false} v-model:show={evaluatModel.evaluatUpdateAudio}>
+				<Popup
+					teleport="body"
+					closeOnClickOverlay={false}
+					class={["popup-custom", "van-scale"]}
+					transition="van-scale"
+					v-model:show={evaluatModel.evaluatUpdateAudio}
+				>
 					<EvaluatAudio onClose={hanldeUpdateVideoAndAudio} />
 				</Popup>
-				<Popup teleport="body" defaultStyle={false} v-model:show={evaluatModel.shareMode}>
+				<Popup
+					teleport="body"
+					class={["popup-custom", "van-scale"]}
+					transition="van-scale"
+					v-model:show={evaluatModel.shareMode}
+				>
 					<EvaluatShare onClose={() => (evaluatModel.shareMode = false)} />
 				</Popup>
 			</div>

+ 7 - 4
src/page-instrument/view-detail/index.tsx

@@ -76,10 +76,13 @@ export default defineComponent({
 		/** 获取曲谱数据 */
 		const getMusicInfo = (res: any) => {
 			const index = query["part-index"] ? parseInt(query["part-index"] as string) : 0;
+			const musicData = res.data.background[index] || {};
 			const musicInfo = {
 				...res.data,
-				accompany: res.data.audioFileUrl,
-				...res.data.background[index],
+				music: musicData.audioFileUrl,
+				musicSheetId: musicData.musicSheetId,
+				track: musicData.track,
+				metronomeUrl: musicData.metronomeUrl,
 			};
 			// console.log("🚀 ~ musicInfo:", musicInfo);
 			setState(musicInfo, index);
@@ -109,8 +112,8 @@ export default defineComponent({
 			state.isOpenMetronome = data.mp3Type === "MP3_METRONOME" ? true : false;
 			state.needTick = true; // data.isOpenMetronome;
 			state.isShowFingering = data.showFingering ? true : false;
-			state.music = data.audioFileUrl;
-			state.accompany = data.accompany;
+			state.music = data.music;
+			state.accompany = data.audioFileUrl;
 			state.midiUrl = data.midiUrl;
 			state.parentCategoriesId = data.musicTag;
 			state.playMode = data.audioType === "MP3" ? "MP3" : "MIDI";

+ 4 - 1
src/view/evaluating/index.tsx

@@ -356,7 +356,7 @@ export const handleCancelEvaluat = () => {
 };
 
 /** 查看报告 */
-export const handleViewReport = (key: "recordId" | "recordIdStr", type: "gym" | "colexiu" | "orchestra") => {
+export const handleViewReport = (key: "recordId" | "recordIdStr", type: "gym" | "colexiu" | "orchestra" | 'instrument') => {
 	const id = evaluatingData.resultData?.[key] || "";
 	let url = "";
 	switch (type) {
@@ -366,6 +366,9 @@ export const handleViewReport = (key: "recordId" | "recordIdStr", type: "gym" |
 		case "orchestra":
 			url = location.origin + location.pathname + "report-share.html?id=" + id;
 			break;
+		case "instrument":
+			url = location.origin + location.pathname + "#/evaluat-report?id=" + id;
+			break;
 		default:
 			url = location.origin + location.pathname + "report-share.html?id=" + id;
 			break;

+ 0 - 0
src/view/follow-practice/index.module.less


+ 1 - 1
src/view/selection/index.tsx

@@ -189,7 +189,7 @@ export default defineComponent({
 				onClick={(e: Event) => e.stopPropagation()}
 			>
 				{selectData.staves.map((item: any) => {
-					const scoreItem = evaluatingData.evaluatings[item.measureListIndex];
+					const scoreItem = item.id && evaluatingData.evaluatings[item.measureListIndex];
 					// 高级模式下,显示节拍线
 					// 不是报告模式
 					// 不是多小节休止符

Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff