Browse Source

feat: 上课页面老师端修改

TIANYONG 1 year ago
parent
commit
24da3b862c

+ 2 - 1
src/page-instrument/header-top/index.tsx

@@ -289,6 +289,7 @@ export default defineComponent({
 
     /** 课件播放 */
     const changePlay = (res: any) => {
+      console.log('监听上课页面message',res)
       if (res?.data?.api === "setPlayState") {
         togglePlay("paused");
       }
@@ -299,7 +300,7 @@ export default defineComponent({
       }
 
       // 上课页面,按钮方向
-      if (res?.data?.api === "setPlayState") {
+      if (res?.data?.api === "imagePos") {
         if (res?.data.data) {
           state.playBtnDirection = res.data.data === 'right' ? 'right' : 'left';
           if (state.fingeringInfo.direction === "vertical" && state.setting.displayFingering) {

+ 1 - 0
src/page-instrument/view-detail/index.tsx

@@ -197,6 +197,7 @@ export default defineComponent({
       // }
       // api_cloudLoading();
       state.playBtnDirection = query.imagePos === 'right' ? 'right' : 'left';
+      state.isAttendClass = (query.imagePos === 'left' || query.imagePos === 'right') ? true : false;
       if (state.fingeringInfo.direction === "vertical" && state.setting.displayFingering) {
         state.musicScoreBtnDirection = state.playBtnDirection === 'right' ? 'left' : 'right';
       } else {

+ 2 - 0
src/state.ts

@@ -465,6 +465,8 @@ const state = reactive({
   playBtnDirection: "left" as "left" | "right",
   /** 云教练按钮方向,如果有指法并且是竖向的指法,为了防止播放按钮把指法挡住,此时云教练播放按钮方向应该取反 */
   musicScoreBtnDirection: "right" as "left" | "right",
+  /** 是否在老师端上课页面 */
+  isAttendClass: false,
   /** 引导页信息 */
   guideInfo: null as any,
 });

+ 5 - 0
src/view/music-score/index.tsx

@@ -119,6 +119,11 @@ export default defineComponent({
 			osmd.EngravingRules.PageTopMargin = state.platform === IPlatform.PC ? 4 : 10; // 老师端顶部间距
 			osmd.EngravingRules.PageTopMarginNarrow = 3;
 			osmd.EngravingRules.PageLeftMargin = 2;
+			// 老师端上课页面,左右两边有功能按钮,所以左右边距需要加大
+			if (state.isAttendClass && state.platform === IPlatform.PC) {
+				osmd.EngravingRules.PageLeftMargin = 4;
+				osmd.EngravingRules.PageRightMargin = 4;
+			}
 			osmd.EngravingRules.PageBottomMargin = state.platform === IPlatform.PC ? 1 : 2;
 			osmd.EngravingRules.DYMusicScoreType =
 				state.musicRenderType === EnumMusicRenderType.staff ? "staff" : "jianpu";