Browse Source

Merge branch '2023-8-29_上线' into online

liushengqiang 2 năm trước cách đây
mục cha
commit
0105424f74
34 tập tin đã thay đổi với 87 bổ sung58 xóa
  1. 19 8
      src/page-instrument/header-top/index.tsx
  2. 4 3
      src/page-instrument/view-detail/index.module.less
  3. 35 30
      src/page-instrument/view-detail/index.tsx
  4. 12 7
      src/page-instrument/view-figner/index.tsx
  5. 9 3
      src/view/fingering/fingering-config.ts
  6. 0 0
      src/view/fingering/fingering-img/ocarina/index.json
  7. 0 0
      src/view/fingering/fingering-img/pan-flute/index.json
  8. 0 0
      src/view/fingering/fingering-img/pan-flute1/index.json
  9. 0 0
      src/view/fingering/fingering-img/pan-flute4/1.png
  10. 0 0
      src/view/fingering/fingering-img/pan-flute4/10.png
  11. 0 0
      src/view/fingering/fingering-img/pan-flute4/11.png
  12. 0 0
      src/view/fingering/fingering-img/pan-flute4/12.png
  13. 0 0
      src/view/fingering/fingering-img/pan-flute4/13.png
  14. 0 0
      src/view/fingering/fingering-img/pan-flute4/14.png
  15. 0 0
      src/view/fingering/fingering-img/pan-flute4/15.png
  16. 0 0
      src/view/fingering/fingering-img/pan-flute4/16.png
  17. 0 0
      src/view/fingering/fingering-img/pan-flute4/17.png
  18. 0 0
      src/view/fingering/fingering-img/pan-flute4/18.png
  19. 0 0
      src/view/fingering/fingering-img/pan-flute4/19.png
  20. 0 0
      src/view/fingering/fingering-img/pan-flute4/2.png
  21. 0 0
      src/view/fingering/fingering-img/pan-flute4/20.png
  22. 0 0
      src/view/fingering/fingering-img/pan-flute4/21.png
  23. 0 0
      src/view/fingering/fingering-img/pan-flute4/3.png
  24. 0 0
      src/view/fingering/fingering-img/pan-flute4/4.png
  25. 0 0
      src/view/fingering/fingering-img/pan-flute4/5.png
  26. 0 0
      src/view/fingering/fingering-img/pan-flute4/6.png
  27. 0 0
      src/view/fingering/fingering-img/pan-flute4/7.png
  28. 0 0
      src/view/fingering/fingering-img/pan-flute4/8.png
  29. 0 0
      src/view/fingering/fingering-img/pan-flute4/9.png
  30. 0 0
      src/view/fingering/fingering-img/pan-flute4/full.png
  31. 1 0
      src/view/fingering/fingering-img/pan-flute4/index.json
  32. 3 2
      src/view/fingering/index.module.less
  33. 2 3
      src/view/fingering/index.tsx
  34. 2 2
      vite.config.ts

+ 19 - 8
src/page-instrument/header-top/index.tsx

@@ -1,4 +1,13 @@
-import { Transition, computed, defineComponent, onMounted, onUnmounted, reactive, ref, watch } from "vue";
+import {
+	Transition,
+	computed,
+	defineComponent,
+	onMounted,
+	onUnmounted,
+	reactive,
+	ref,
+	watch,
+} from "vue";
 import styles from "./index.module.less";
 
 import iconBack from "./image/icon-back.svg";
@@ -27,7 +36,7 @@ import StudentTop from "../custom-plugins/guide-page/student-top";
 import { HANDLE_WORK_ADD } from "../custom-plugins/work-index";
 import { browser } from "/src/utils";
 import store from "store";
-import "../component/the-modal-tip/index.module.less"
+import "../component/the-modal-tip/index.module.less";
 
 /** 头部数据和方法 */
 export const headTopData = reactive({
@@ -43,7 +52,7 @@ export const headTopData = reactive({
 			// 如果是pc端, 评测模式暂不可用
 			if (state.platform === IPlatform.PC) {
 				showConfirmDialog({
-					className: 'modalTip',
+					className: "modalTip",
 					title: "温馨提示",
 					message: "该功能暂未开放,敬请期待!",
 					showCancelButton: false,
@@ -250,11 +259,11 @@ export default defineComponent({
 				window.close();
 				return;
 			}
-			if ((browInfo.iPhone || browInfo.ios) && query.workRecord){
+			if ((browInfo.iPhone || browInfo.ios) && query.workRecord) {
 				setTimeout(() => {
 					api_back();
-				}, 550)
-				return
+				}, 550);
+				return;
 			}
 			api_back();
 		};
@@ -303,7 +312,7 @@ export default defineComponent({
 
 		// 设置改变触发
 		watch(state.setting, () => {
-			console.log(state.setting, "state.setting")
+			console.log(state.setting, "state.setting");
 			store.set("musicscoresetting", state.setting);
 		});
 
@@ -316,7 +325,9 @@ export default defineComponent({
 					>
 						<img src={iconBack} />
 					</div>
-					<Title class="pcTitle" text={state.examSongName} rightView={false} />
+					{query.iscurseplay === "play" ? null : (
+						<Title class="pcTitle" text={state.examSongName} rightView={false} />
+					)}
 
 					<div class={styles.headRight}>
 						<div

+ 4 - 3
src/page-instrument/view-detail/index.module.less

@@ -109,9 +109,10 @@
         }
 
         .pcTitle {
-            flex: 1;
-            width: auto;
-            margin-left: auto;
+            position: absolute;
+            left: 50%;
+            top: 50%;
+            transform: translate(-50%, -50%);
 
             .van-notice-bar__wrap {
                 justify-content: center;

+ 35 - 30
src/page-instrument/view-detail/index.tsx

@@ -75,20 +75,12 @@ const resetFrequency = (list: any[]) => {
  * 乐器指法处理
  */
 const setNoteHalfTone = (list: any[]) => {
-	const instrumentNames = ["melodica"];
+	const instrumentNames = ["hulusi-flute"];
 	if (!state.fingeringInfo?.name || !instrumentNames.includes(state.fingeringInfo.name)) return list;
 	for (let i = 0; i < list.length; i++) {
 		const note = list[i];
-		if (note.noteElement?.pitch?.accidentalXml) {
-			const accidentalXml = note.noteElement?.pitch?.accidentalXml;
-			if ([]) {
-			}
-			if (accidentalXml === "flat") {
-				// note.realKey = note.realKey + 1;
-			} else if (accidentalXml === "sharp") {
-				// note.realKey = note.realKey + 1;
-			}
-		}
+		if (note.realKey === 0) continue;
+		note.realKey = note.realKey + 12;
 	}
 	return list;
 };
@@ -105,6 +97,7 @@ export default defineComponent({
 			headerHide: false,
 			fingerPreView: false,
 			orientation: 0,
+			fingerPreViewGuide: false,
 		});
 		const getAPPData = async () => {
 			const screenData = await isSpecialShapedScreen();
@@ -132,7 +125,7 @@ export default defineComponent({
 		//给app传伴奏
 		const pushAppMusic = () => {
 			api_cloudAccompanyMessage(state.accompany);
-		  }
+		};
 		// console.log(route.params, query)
 		/** 获取曲谱数据 */
 		const getMusicInfo = (res: any) => {
@@ -194,7 +187,7 @@ export default defineComponent({
 			// 	isRhythmicExercises();
 
 			// 设置指法
-			const code = mappingVoicePart(state.subjectId, "INSTRUMENT")
+			const code = mappingVoicePart(state.subjectId, "INSTRUMENT");
 			state.fingeringInfo = subjectFingering(code);
 			console.log("🚀 ~ state.fingeringInfo:", state.fingeringInfo, state.subjectId, state.track);
 
@@ -246,7 +239,7 @@ export default defineComponent({
 			}
 			state.times = formateTimes(osmd);
 			state.times = resetFrequency(state.times);
-			// state.times = setNoteHalfTone(state.times);
+			state.times = setNoteHalfTone(state.times);
 			console.log("🚀 ~ state.times:", state.times, state.subjectId);
 			try {
 				metronomeData.metro = new Metronome();
@@ -341,16 +334,19 @@ export default defineComponent({
 			}
 		);
 		/** 指法预览切换 */
-		watch(() => detailData.fingerPreView, () => {
-			console.log(2342)
-			window.parent.postMessage(
-				{
-					api: "api_fingerPreView",
-					state: detailData.fingerPreView,
-				},
-				"*"
-			);
-		})
+		watch(
+			() => detailData.fingerPreView,
+			() => {
+				console.log(2342);
+				window.parent.postMessage(
+					{
+						api: "api_fingerPreView",
+						state: detailData.fingerPreView,
+					},
+					"*"
+				);
+			}
+		);
 		onMounted(() => {
 			window.addEventListener("resize", resetMusicScore);
 		});
@@ -373,13 +369,13 @@ export default defineComponent({
 			// 	url: url,
 			// 	orientation: state.fingeringInfo.orientation || 0,
 			// });
-			
-			if (state.playState === 'play') {
-				togglePlay('paused')
+
+			if (state.playState === "play") {
+				togglePlay("paused");
 				setTimeout(() => {
 					detailData.fingerPreView = true;
-				}, 500)
-				return
+				}, 500);
+				return;
 			}
 			detailData.fingerPreView = true;
 		};
@@ -388,6 +384,7 @@ export default defineComponent({
 				api_setRequestedOrientation(0);
 			}
 			detailData.fingerPreView = false;
+			detailData.fingerPreViewGuide = false;
 		};
 		return () => (
 			<div
@@ -476,8 +473,16 @@ export default defineComponent({
 					</>
 				)}
 
-				<Popup teleport="body" v-model:show={detailData.fingerPreView} position="bottom">
+				<Popup
+					teleport="body"
+					v-model:show={detailData.fingerPreView}
+					position="bottom"
+					onOpened={() => {
+						detailData.fingerPreViewGuide = true;
+					}}
+				>
 					<ViewFigner
+						show={detailData.fingerPreViewGuide}
 						subject={state.fingeringInfo.name}
 						isComponent={true}
 						onClose={handleCloseFignerView}

+ 12 - 7
src/page-instrument/view-figner/index.tsx

@@ -36,6 +36,10 @@ export default defineComponent({
 	name: "viewFigner",
 	emits: ["close"],
 	props: {
+		show: {
+			type: Boolean,
+			default: true,
+		},
 		isComponent: {
 			type: Boolean,
 			default: false,
@@ -80,7 +84,7 @@ export default defineComponent({
 
 			huaweiPad: navigator?.userAgent?.includes("UAWEIVRD-W09") ? true : false,
 			paddingTop: '',
-			paddingLeft:''
+			paddingLeft:'',
 		});
 		const fingerData = reactive({
 			relationshipIndex: 0,
@@ -166,13 +170,14 @@ export default defineComponent({
 			}
 			data.loadingSoundProgress = 100;
 			api_cloudLoading();
-			nextTick(() => {
-				data.loadingSoundFonts = false;
-			})
+			data.loadingSoundFonts = false;
 			// console.log("🚀 ~ data.soundFonts:", data.soundFonts);
 		};
 		onBeforeMount(() => {
 			getNotes();
+			if (data.subject === 'pan-flute'){
+				data.viewIndex = 1;
+			}
 			getFingeringData();
 			getSounFonts();
 		});
@@ -351,8 +356,8 @@ export default defineComponent({
 									class={styles.baseBtn}
 									onClick={() => {
 										data.viewIndex++;
-										if (data.viewIndex > 3) {
-											data.viewIndex = 0;
+										if (data.viewIndex > 4) {
+											data.viewIndex = 1;
 										}
 										getFingeringData();
 									}}
@@ -592,7 +597,7 @@ export default defineComponent({
 						</div>
 					</Popup>
 
-					{!data.loading && !data.loadingSoundFonts && <GuideIndex showGuide={false} list={["finger"]} />}
+					{props.show && !data.loading && !data.loadingSoundFonts && <GuideIndex showGuide={false} list={["finger"]} />}
 				</div>
 			);
 		};

+ 9 - 3
src/view/fingering/fingering-config.ts

@@ -21,7 +21,6 @@ export type IFingering = {
 	code?: string;
 	/** 是否有替指 */
 	hasTizhi?: boolean;
-	transform?: string;
 };
 
 type ITypeContent = {
@@ -44,6 +43,7 @@ export type IVocals =
 	| "pan-flute1"
 	| "pan-flute2"
 	| "pan-flute3"
+	| "pan-flute4"
 	| "ocarina"
 	| "melodica";
 
@@ -218,7 +218,7 @@ export const subjectFingering = (subjectId: number | string): IFingering => {
 			return {
 				name: "pan-flute",
 				direction: "transverse",
-				height: "2.6rem",
+				height: "2rem",
 				disabledFinger: true,
 				orientation: 0,
 				code: "排箫",
@@ -238,7 +238,7 @@ export const subjectFingering = (subjectId: number | string): IFingering => {
 			return {
 				name: "melodica",
 				direction: "transverse",
-				height: "1.8rem",
+				height: "2rem",
 				orientation: 0,
 				code: "口风琴",
 				hasTizhi: false,
@@ -359,6 +359,12 @@ export const getFingeringConfig = async (type: IVocals | undefined): Promise<ITy
 				json: pan3.default,
 				relationship: relationships.pan,
 			};
+		case "pan-flute4":
+			const pan4 = await import(`./fingering-img/pan-flute4/index.json`);
+			return {
+				json: pan4.default,
+				relationship: relationships.pan,
+			};
 		case "ocarina":
 			const ocarina = await import(`./fingering-img/ocarina/index.json`);
 			return {

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
src/view/fingering/fingering-img/ocarina/index.json


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
src/view/fingering/fingering-img/pan-flute/index.json


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/index.json


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/1.png → src/view/fingering/fingering-img/pan-flute4/1.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/10.png → src/view/fingering/fingering-img/pan-flute4/10.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/11.png → src/view/fingering/fingering-img/pan-flute4/11.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/12.png → src/view/fingering/fingering-img/pan-flute4/12.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/13.png → src/view/fingering/fingering-img/pan-flute4/13.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/14.png → src/view/fingering/fingering-img/pan-flute4/14.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/15.png → src/view/fingering/fingering-img/pan-flute4/15.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/16.png → src/view/fingering/fingering-img/pan-flute4/16.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/17.png → src/view/fingering/fingering-img/pan-flute4/17.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/18.png → src/view/fingering/fingering-img/pan-flute4/18.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/19.png → src/view/fingering/fingering-img/pan-flute4/19.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/2.png → src/view/fingering/fingering-img/pan-flute4/2.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/20.png → src/view/fingering/fingering-img/pan-flute4/20.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/21.png → src/view/fingering/fingering-img/pan-flute4/21.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/3.png → src/view/fingering/fingering-img/pan-flute4/3.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/4.png → src/view/fingering/fingering-img/pan-flute4/4.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/5.png → src/view/fingering/fingering-img/pan-flute4/5.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/6.png → src/view/fingering/fingering-img/pan-flute4/6.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/7.png → src/view/fingering/fingering-img/pan-flute4/7.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/8.png → src/view/fingering/fingering-img/pan-flute4/8.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/9.png → src/view/fingering/fingering-img/pan-flute4/9.png


+ 0 - 0
src/view/fingering/fingering-img/pan-flute1/full.png → src/view/fingering/fingering-img/pan-flute4/full.png


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1 - 0
src/view/fingering/fingering-img/pan-flute4/index.json


+ 3 - 2
src/view/fingering/index.module.less

@@ -4,12 +4,13 @@
   display: flex;
   justify-content: space-evenly;
   align-items: center;
-  padding: 0 10px 6px 10px;
+  padding: 0 10px 4px 10px;
+  overflow: hidden;
 }
 
 .vertical {
   position: relative;
-  padding: 10px 6px 10px 0;
+  padding: 10px 0 10px 0;
   box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 10px;
 
   .imgs {

+ 2 - 3
src/view/fingering/index.tsx

@@ -14,6 +14,7 @@ export default defineComponent({
 		});
 		const getFingeringData = async () => {
 			fingerData.subject = await getFingeringConfig(state.fingeringInfo.name);
+			console.log("🚀 ~ fingerData.subject:", fingerData.subject)
 		};
 		onBeforeMount(() => {
 			getFingeringData();
@@ -43,9 +44,8 @@ export default defineComponent({
 				<>
 					{state.fingeringInfo.direction === "transverse" ? (
 						<div onClick={() => doubeClick()} class={[styles.fingeringContainer]}>
-							<span class={[styles.yidiao, rs.includes(0) && styles.canDisplay]}>转调</span>
 
-							<div class={styles.imgs} style={{transform: state.fingeringInfo.transform}}>
+							<div class={styles.imgs}>
 								<img src={fingerData.subject?.json?.full} />
 								{rs.map((key: number | string, index: number) => {
 									const nk: string = typeof key === "string" ? key.replace("active-", "") : String(key);
@@ -82,7 +82,6 @@ export default defineComponent({
 									style={{ display: state.fingeringInfo.disabledFinger ? "none" : "" }}
 									class={styles.rightContent}
 								>
-									<span class={[styles.yidiao, rs.includes(0) && styles.canDisplay]}>转调</span>
 									<div
 										class={[styles.tizhi, canTizhi && styles.canDisplay]}
 										onClick={() =>

+ 2 - 2
vite.config.ts

@@ -64,8 +64,8 @@ export default defineConfig({
 				rewrite: (path) => path.replace(/^\/orchestra/, ""),
 			},
 			"^/instrument/.*": {
-				// target: "https://dev.kt.colexiu.com",
-				target: "https://test.lexiaoya.cn",
+				target: "https://kt.colexiu.com",
+				// target: "https://test.lexiaoya.cn",
 				changeOrigin: true,
 				rewrite: (path) => path.replace(/^\/instrument/, ""),
 			},

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác