mo 1 year ago
parent
commit
22cda2f66c

+ 1 - 0
src/components/layout/index.module.less

@@ -431,6 +431,7 @@
 .modeWrap {
   overflow: hidden;
   border-radius: 16px;
+  background-color: #fff;
 }
 
 .imGroupContainer,

+ 9 - 6
src/components/layout/index.tsx

@@ -18,6 +18,7 @@ import { useRoute } from 'vue-router';
 import { vaildUrl } from '/src/utils/urlUtils';
 import ChioseModal from '/src/views/home/modals/chioseModal';
 import {px2vw,px2vwH} from '@/utils/index'
+import PlaceholderTone from './modals/placeholderTone';
 export default defineComponent({
   name: 'layoutView',
   setup() {
@@ -363,9 +364,9 @@ export default defineComponent({
         </NModal>
         <NModal
           v-model:show={showModalTone.value}
-          class={['modalTitle background', styles.showModalTone]}
-          preset="card"
-          title={'提示'}>
+          class={['background']}
+
+         >
           {/* <div
             onClick={() => {
               showModalTone.value = false;
@@ -375,9 +376,11 @@ export default defineComponent({
               previewDisabled
               class={styles.beatImage}></NImage>
           </div> */}
-          <div class={styles.studentRemove}>
-            <p>此功能暂未开放</p>
-          </div>
+                    <div>
+            <PlaceholderTone onClose={()=>{
+              showModalTone.value = false
+            }}></PlaceholderTone>
+            </div>
         </NModal>
         <NModal
           v-model:show={showModalTime.value}

+ 78 - 0
src/components/layout/modals/holder.module.less

@@ -0,0 +1,78 @@
+.downMove {
+  width: 353px;
+  // height: 309px;
+  background: #FFFFFF;
+  border-radius: 16px;
+  position: relative;
+  padding: 0 30px 35px;
+  text-align: center;
+
+  .downMoveBg {
+    position: absolute;
+    top: 0;
+    left: 0;
+    width: 353px;
+    height: 101px;
+  }
+
+  .dingPng {
+    width: 162px;
+    height: 98px;
+    position: absolute;
+    left: 50%;
+    margin-left: -81px;
+    top: -49px;
+    z-index: 100;
+  }
+
+  .closeAble {
+    cursor: pointer;
+    width: 25px;
+    height: 25px;
+    position: absolute;
+    top: 18px;
+    right: 20px;
+  }
+
+  h2 {
+    position: relative;
+    padding-top: 64px;
+    height: 33px;
+    font-size: 24px;
+    font-family: PingFangSC-Semibold, PingFang SC;
+    font-weight: 600;
+    color: #131415;
+    line-height: 33px;
+    text-align: center;
+    margin-bottom: 15px;
+  }
+
+  p {
+    padding-top: 32px;
+    font-size: 18px;
+    font-family: PingFangSC-Regular, PingFang SC;
+    font-weight: 400;
+    color: #777777;
+    line-height: 30px;
+  }
+
+  .submitAppBtn {
+    width: 257px;
+    height: 45px;
+    line-height: 45px;
+    background: linear-gradient(305deg, #40C8FF 0%, #3192FF 100%);
+    border-radius: 24px;
+    border: none;
+
+    :global {
+      .n-button__border {
+        display: none;
+      }
+
+      .n-button__state-border {
+        display: none;
+      }
+    }
+
+  }
+}

+ 44 - 0
src/components/layout/modals/placeholderTone.tsx

@@ -0,0 +1,44 @@
+import { defineComponent, ref, watch } from 'vue';
+import styles from './holder.module.less';
+import { NButton, NImage, NSpace } from 'naive-ui';
+import radiusIcon from '../images/radiusIcon.png';
+import moveTop from '@/views/login/images/moveTopBg.png'
+import dingPng from '@/views/login/images/ding.png'
+import closeAble from '@/views/login/images/closeAble.png'
+export default defineComponent({
+  props: ['item'],
+  emits: ['close'],
+  name: 'placeholderTone',
+  setup(props, { emit }) {
+    return () => (
+      <>
+        <div class={styles.downMove}>
+          <img src={dingPng} class={styles.dingPng} alt="" />
+          <img src={moveTop} class={styles.downMoveBg} alt="" />
+          <img src={closeAble} class={styles.closeAble} onClick={() => {
+            emit('close')
+          }} alt="" />
+          <h2>温馨提示</h2>
+          <p>调音器功能暂未开放,敬请期待!</p>
+          {/* <NButton>确定</NButton> */}
+          <NSpace style={{ padding: '25px 0 0 0' }} justify="center">
+            <NButton
+              {...{
+                id
+                  : 'submitBtn'
+              }}
+              class={styles.submitAppBtn}
+              round
+              type="primary"
+              onClick={() => {
+                emit('close')
+              }}
+            >
+              我知道了
+            </NButton>
+          </NSpace>
+        </div>
+      </>
+    );
+  }
+});

+ 2 - 2
src/components/timerMeter/components/countdown.tsx

@@ -286,12 +286,12 @@ export default defineComponent({
             重置
           </NButton>
           {isPlaying.value ? <NButton round type="primary" icon-placement="right" onClick={() => suspendNum()} v-slots={{
-            default: () => <>暂停</>,
+            default: () => <p class={styles.playText}>暂停</p>,
             icon: () => <NImage previewDisabled class={styles.palyIcon} src={suspend}></NImage>
           }}>
 
           </NButton> : <NButton round type="primary" icon-placement="right" onClick={() => startTimer()} v-slots={{
-            default: () => <>开始</>,
+            default: () => <p class={styles.playText}>开始</p>,
             icon: () => <NImage previewDisabled class={styles.palyIcon} src={playIcon}></NImage>
           }}>
           </NButton>}

+ 1 - 0
src/views/attend-class/index.module.less

@@ -510,6 +510,7 @@
 .modeWrap {
   overflow: hidden;
   border-radius: 16px;
+  background-color: #fff;
 }
 
 

+ 12 - 15
src/views/attend-class/index.tsx

@@ -47,6 +47,7 @@ import setTimeIcon from '/src/components/layout/images/setTimeIcon.png';
 import beatIcon from '/src/components/layout/images/beatIcon.png';
 import toneIcon from '/src/components/layout/images/toneIcon.png';
 import { px2vw } from '/src/utils';
+import PlaceholderTone from '/src/components/layout/modals/placeholderTone';
 export type ToolType = 'init' | 'pen' | 'whiteboard';
 export type ToolItem = {
   type: ToolType;
@@ -1082,23 +1083,19 @@ export default defineComponent({
               height={'650px'}></iframe>
           </div>
         </NModal>
+
+
+
         <NModal
+          class={['background']}
           v-model:show={showModalTone.value}
-          class={['modalTitle background', styles.showModalTone]}
-          preset="card"
-          title={'提示'}>
-          {/* <div
-            onClick={() => {
-              showModalTone.value = false;
-            }}>
-            <NImage
-              src={toneImage}
-              previewDisabled
-              class={styles.beatImage}></NImage>
-          </div> */}
-          <div class={styles.studentRemove}>
-            <p>此功能暂未开放</p>
-          </div>
+          >
+            <div>
+            <PlaceholderTone onClose={()=>{
+              showModalTone.value = false
+            }}></PlaceholderTone>
+            </div>
+
         </NModal>
         <NModal
           v-model:show={showModalTime.value}

+ 1 - 1
src/views/classList/classDetail.tsx

@@ -37,7 +37,7 @@ export default defineComponent({
             class={styles.customTabs}
             v-model:value={activeTab.value}
             size="large"
-            animated
+            animated={false}
             pane-wrapper-style="margin: 0 -4px"
             pane-style="padding-left: 4px; padding-right: 4px; box-sizing: border-box;">
             <NTabPane name="student" tab="学员名单">

+ 9 - 1
src/views/classList/components/classRecord.module.less

@@ -61,4 +61,12 @@
     }
   }
 
-}
+}
+
+.nowEmpty {
+  margin-top: 100px;
+}
+
+// .tableWrap {
+//   min-height: calc(100vh - 400px)
+// }

+ 6 - 4
src/views/classList/components/classRecord.tsx

@@ -138,16 +138,18 @@ export default defineComponent({
               </div>
             ))}
           </NSpace>
-          {state.tableList.length <= 0 && <TheEmpty />}
-
-          <Pagination
+          {state.tableList.length > 0&&<Pagination
             v-model:page={state.pagination.page}
             v-model:pageSize={state.pagination.rows}
             v-model:pageTotal={state.pagination.pageTotal}
             onList={getList}
             sync
             saveKey="classRecord-key"
-          />
+          />}
+
+          {state.tableList.length <= 0 && <TheEmpty class={styles.nowEmpty} />}
+
+
         </div>
       </div>
     );

+ 1 - 1
src/views/classList/components/classStudentRecode.tsx

@@ -87,7 +87,7 @@ export default defineComponent({
             class={styles.customTabs}
             v-model:value={activeStudentTab.value}
             size="large"
-            animated
+            animated={false}
             pane-wrapper-style="margin: 0 -4px"
             pane-style="padding-left: 4px; padding-right: 4px; box-sizing: border-box;">
             <NTabPane name="textRcode" tab="练习记录">

+ 64 - 62
src/views/data-module/index.tsx

@@ -67,68 +67,70 @@ export default defineComponent({
       }, 500);
     });
     return () => (
-      <div class={styles.listWrap}>
-        <NTabs
-          onUpdate:value={(val: any) => setTabs(val)}
-          class={styles.customTabs}
-          v-model:value={activeTab.value}
-          size="large"
-          animated
-          pane-wrapper-style="margin: 0 -4px"
-          pane-style="padding-left: 4px; padding-right: 4px; box-sizing: border-box;"
-          v-Slots={{
-            suffix: () => (
-              <>
-                <div class={styles.homeStudyInfoDate}>
-                  <NSpace>
-                    <CDatePicker
-                      {...{ clearable: false }}
-                      v-model:value={timer.value}
-                      separator={'-'}
-                      type="daterange"
-                      timerValue={timer.value}></CDatePicker>
-                    <NButton
-                      type="primary"
-                      class={styles.searchBtn}
-                      onClick={() => onSearch()}>
-                      搜索
-                    </NButton>
-                    <NButton
-                      type="primary"
-                      onClick={() => onReset()}
-                      ghost
-                      class={styles.resetBtn}>
-                      重置
-                    </NButton>
-                  </NSpace>
-                </div>
-              </>
-            )
-          }}>
-          <NTabPane
-            name="training"
-            tab="训练统计"
-            v-slots={{ tab: () => <span id="data-0">训练统计</span> }}>
-            <TrainData ref={TrainDataRef} timer={timer.value}></TrainData>
-          </NTabPane>
-          <NTabPane
-            name="practice"
-            tab="练习数据"
-            v-slots={{ tab: () => <span id="data-1">练习数据</span> }}>
-            <PracticeData
-              ref={PracticeDataRef}
-              timer={timer.value}></PracticeData>
-          </NTabPane>
-          <NTabPane
-            name="ranking"
-            tab="练习排行"
-            v-slots={{ tab: () => <span id="data-2">练习排行</span> }}>
-            <PracticeRanking
-              ref={PracticeRankingRef}
-              timer={timer.value}></PracticeRanking>
-          </NTabPane>
-        </NTabs>
-        {showGuide.value ? <DataGuide></DataGuide> : null}
+      <div>
+        <div class={styles.listWrap}>
+          <NTabs
+            onUpdate:value={(val: any) => setTabs(val)}
+            class={styles.customTabs}
+            v-model:value={activeTab.value}
+            size="large"
+            animated={false}
+            pane-wrapper-style="margin: 0 -4px"
+            pane-style="padding-left: 4px; padding-right: 4px; box-sizing: border-box;"
+            v-Slots={{
+              suffix: () => (
+                <>
+                  <div class={styles.homeStudyInfoDate}>
+                    <NSpace>
+                      <CDatePicker
+                        {...{ clearable: false }}
+                        v-model:value={timer.value}
+                        separator={'-'}
+                        type="daterange"
+                        timerValue={timer.value}></CDatePicker>
+                      <NButton
+                        type="primary"
+                        class={styles.searchBtn}
+                        onClick={() => onSearch()}>
+                        搜索
+                      </NButton>
+                      <NButton
+                        type="primary"
+                        onClick={() => onReset()}
+                        ghost
+                        class={styles.resetBtn}>
+                        重置
+                      </NButton>
+                    </NSpace>
+                  </div>
+                </>
+              )
+            }}>
+            <NTabPane
+              name="training"
+              tab="训练统计"
+              v-slots={{ tab: () => <span id="data-0">训练统计</span> }}>
+              <TrainData ref={TrainDataRef} timer={timer.value}></TrainData>
+            </NTabPane>
+            <NTabPane
+              name="practice"
+              tab="练习数据"
+              v-slots={{ tab: () => <span id="data-1">练习数据</span> }}>
+              <PracticeData
+                ref={PracticeDataRef}
+                timer={timer.value}></PracticeData>
+            </NTabPane>
+            <NTabPane
+              name="ranking"
+              tab="练习排行"
+              v-slots={{ tab: () => <span id="data-2">练习排行</span> }}>
+              <PracticeRanking
+                ref={PracticeRankingRef}
+                timer={timer.value}></PracticeRanking>
+            </NTabPane>
+          </NTabs>
+          {showGuide.value ? <DataGuide></DataGuide> : null}
+        </div>
       </div>
     );
   }

+ 9 - 15
src/views/home/index.tsx

@@ -57,6 +57,7 @@ import TimerMeter from '/src/components/timerMeter';
 import { vaildUrl } from '/src/utils/urlUtils';
 import toneImage from '@/components/layout/images/toneImage.png';
 import { px2vw } from '/src/utils';
+import PlaceholderTone from '@/components/layout/modals/placeholderTone'
 export const formatDateToDay = () => {
   const hours = dayjs().hour();
   if (hours < 12) {
@@ -760,22 +761,15 @@ export default defineComponent({
         </NModal>
 
         <NModal
+          class={['background']}
           v-model:show={showModalTone.value}
-          class={['modalTitle background', styles.showModalTone]}
-          preset="card"
-          title={'提示'}>
-          {/* <div
-            onClick={() => {
-              showModalTone.value = false;
-            }}>
-            <NImage
-              src={toneImage}
-              previewDisabled
-              class={styles.beatImage}></NImage>
-          </div> */}
-          <div class={styles.studentRemove}>
-            <p>此功能暂未开放</p>
-          </div>
+          >
+            <div>
+            <PlaceholderTone onClose={()=>{
+              showModalTone.value = false
+            }}></PlaceholderTone>
+            </div>
+
         </NModal>
 
         {forms.showGuide ? <HomeGuide></HomeGuide> : null}

+ 1 - 1
src/views/studentList/studentDetail.tsx

@@ -110,7 +110,7 @@ export default defineComponent({
             class={styles.customTabs}
             v-model:value={activeStudentTab.value}
             size="large"
-            animated
+            animated={false}
             pane-wrapper-style="margin: 0 -4px"
             pane-style="padding-left: 4px; padding-right: 4px; box-sizing: border-box;">
             <NTabPane name="baseInfo" tab="基本信息">