瀏覽代碼

Merge branch 'startLogin'

mo 1 年之前
父節點
當前提交
76181b50b6

+ 2 - 0
src/custom-plugins/guide-page/attent-guide.tsx

@@ -147,6 +147,8 @@ export default defineComponent({
           height: eleRect.height + height + 'px'
         };
         console.log(`coai-${data.step}`, data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 3 - 0
src/custom-plugins/guide-page/class-guide.tsx

@@ -3,6 +3,7 @@ import {
   defineComponent,
   nextTick,
   onMounted,
+  onUnmounted,
   reactive,
   ref,
   watch
@@ -120,6 +121,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 2 - 0
src/custom-plugins/guide-page/data-guide.tsx

@@ -128,6 +128,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 3 - 1
src/custom-plugins/guide-page/home-guide.tsx

@@ -183,6 +183,8 @@ export default defineComponent({
           width: eleRect.width + width+'px',
           height: eleRect.height +height+ 'px'
         };
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {
@@ -204,7 +206,7 @@ export default defineComponent({
       }
       data.step = data.step + 1;
       getStepELe();
-    };
+    }
 
     const endGuide = () => {
       let guideInfo =

二進制
src/custom-plugins/guide-page/images/data1.png


+ 2 - 0
src/custom-plugins/guide-page/lessons-guide.tsx

@@ -167,6 +167,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 2 - 0
src/custom-plugins/guide-page/music-guide.tsx

@@ -123,6 +123,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 2 - 0
src/custom-plugins/guide-page/myColloge-guide.tsx

@@ -78,6 +78,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 2 - 0
src/custom-plugins/guide-page/myResources-guide.tsx

@@ -82,6 +82,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 2 - 0
src/custom-plugins/guide-page/shareResources-guide.tsx

@@ -118,6 +118,8 @@ export default defineComponent({
           };
         }
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 8 - 6
src/custom-plugins/guide-page/student-guide.tsx

@@ -57,13 +57,13 @@ export default defineComponent({
           img: getImage('student2.png'),
           imgStyle: {
             top: '100%',
-            left:  '-265px',
-            width: '515px',
-            height:'227px'
+            left:  px2vw(-265),
+            width:  px2vw(515),
+            height:px2vw(227)
           },
           btnsStyle: {
-            bottom: '30px',
-            left: px2vw(-90),
+            bottom:px2vw(30),
+            left: px2vw(-120),
           },
 
           eleRectPadding:{
@@ -102,6 +102,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {
@@ -116,7 +118,7 @@ export default defineComponent({
       window.removeEventListener("resize", resetSize);
     })
     const handleNext = () => {
-      if (data.step >= 4) {
+      if (data.step >= 2) {
         endGuide();
         return;
       }

+ 2 - 0
src/custom-plugins/guide-page/teacher-guide.tsx

@@ -103,6 +103,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {

+ 4 - 2
src/custom-plugins/guide-page/train-guide.tsx

@@ -78,6 +78,8 @@ export default defineComponent({
           height: eleRect.height +height+ 'px'
         };
         console.log(`coai-${data.step}`,data.box);
+      }else{
+        handleNext()
       }
     };
     onMounted(() => {
@@ -167,14 +169,14 @@ export default defineComponent({
                             onClick={() => endGuide()}>
                             完成
                           </div>
-                          <div
+                          {/* <div
                             class={styles.nextBtn}
                             onClick={() => {
                               data.step = 0;
                               getStepELe();
                             }}>
                             再看一遍
-                          </div>
+                          </div> */}
 
                         </>
                       ) : (

+ 57 - 25
src/styles/index.less

@@ -105,38 +105,50 @@ body {
   font-size: 18px;
 }
 
-.n-data-table {
-  border-radius: 10px 10px 0 0;
-  overflow: hidden;
-}
+// .n-data-table {
+//   border-radius: 10px 10px 0 0;
+//   overflow: hidden;
+// }
 
-.n-data-table-thead {
-  height: 54px;
-  line-height: 54px;
-}
+// .n-data-table-thead {
+//   height: 54px;
+//   line-height: 54px;
+// }
 
-.n-data-table-th {
-  padding: 0 20px !important;
-  background-color: #f7f7f8 !important;
-  color: rgba(0, 0, 0, 0.88) !important;
+// .n-data-table-th {
+//   padding: 0 20px !important;
+//   background-color: #f7f7f8 !important;
+//   color: rgba(0, 0, 0, 0.88) !important;
 
-  .n-data-table-th__title {
-    font-weight: 600;
-  }
-}
+//   .n-data-table-th__title {
+//     font-weight: 600;
+//   }
+// }
 
-.n-data-table-tr {
-  .n-data-table-td {
-    padding-left: 20px;
+// .n-data-table-tr {
+//   .n-data-table-td {
+//     padding-left: 20px;
 
-    color: #333333;
-    font-size: 14px;
+//     color: #333333;
+//     font-size: 14px;
 
-    .n-button__content {
-      font-size: 14px;
-      color: #1677ff;
-    }
+//     .n-button__content {
+//       font-size: 14px;
+//       color: #1677ff;
+//     }
+//   }
+// }
+
+:global {
+  .n-form-item .n-form-item-label {
+    color: #777;
   }
+
+  .n-button {
+    border-radius: 8px;
+  }
+
+
 }
 
 .n-data-table-th__title-wrapper {
@@ -304,4 +316,24 @@ body {
 
 .no-move {
   transition: transform 0s;
+}
+
+
+.n-data-table .n-data-table-th {
+
+  background: #F7F7F8;
+  color: rgba(113, 113, 114, 1) !important;
+  border: none;
+  min-height: 54Px;
+  font-size: 15Px;
+}
+
+.n-data-table.n-data-table--bordered .n-data-table-wrapper {
+  border: none;
+}
+
+.n-data-table-tr .n-data-table-td .n-button__content,
+.n-data-table .n-data-table-td {
+  font-weight: bold;
+  font-size: 15Px;
 }

+ 10 - 9
src/views/classList/classDetail.tsx

@@ -17,20 +17,21 @@ export default defineComponent({
       { name: '班级管理', path: '/classList' },
       { name: route.query.name, path: '/classDetail' }
     ] as any);
-    getTabsCache((val: any) => {
-      if (val.form.tabName) {
-        activeTab.value = val.form.tabName;
-      }
-    });
-    const setTabs = (val: any) => {
-      setTabsCaches(val, 'tabName', route);
-    };
+    // getTabsCache((val: any) => {
+    //   if (val.form.tabName) {
+    //     activeTab.value = val.form.tabName;
+    //   }
+    // });
+    // const setTabs = (val: any) => {
+    //   setTabsCaches(val, 'tabName', route);
+    // };
+    //   onUpdate:value={(val: any) => setTabs(val)}
     return () => (
       <div>
         <CBreadcrumb list={routerList.value}></CBreadcrumb>
         <div class={styles.listWrap}>
           <NTabs
-            onUpdate:value={(val: any) => setTabs(val)}
+
             class={styles.customTabs}
             v-model:value={activeTab.value}
             size="large"

+ 6 - 0
src/views/classList/index.module.less

@@ -740,4 +740,10 @@
       }
     }
   }
+}
+
+
+
+.nextWrap {
+  padding: 30px 32px 0 !important;
 }

+ 3 - 3
src/views/classList/modals/TrainingDetails.tsx

@@ -127,8 +127,8 @@ export default defineComponent({
                 提交时间:
                 {studnetInfo.value.submitTime
                   ? dayjs(new Date(studnetInfo.value.submitTime)).format(
-                      'YYYY-MM-DD'
-                    )
+                    'YYYY-MM-DD'
+                  )
                   : '--'}
               </p>
             </div>
@@ -163,7 +163,7 @@ export default defineComponent({
             ))}
           </div>
         </NScrollbar>
-        <NSpace class={styles.btnGroups} justify="space-between">
+        <NSpace class={[styles.btnGroups, styles.nextWrap]} justify="space-between">
           <div class={styles.allTotal}>
             {props.current}/{props.total}名学生
           </div>

+ 1 - 1
src/views/login/components/codeLogin.tsx

@@ -169,7 +169,7 @@ export default defineComponent({
                 inputProps={{ autocomplete: 'off' }}
                 class={styles.sendInput}
                 onKeydown={(e: KeyboardEvent) => {
-                  if (e.code === 'Enter') {
+                  if (e.code === 'Enter' || e.code === 'NumpadEnter') {
                     handleSubmit();
                   }
                 }}>

+ 1 - 1
src/views/login/components/forgotPassword.tsx

@@ -230,7 +230,7 @@ export default defineComponent({
                 inputProps={{ autocomplete: 'off' }}
                 class={styles.sendInput}
                 onKeydown={(e: KeyboardEvent) => {
-                  if (e.code === 'Enter') {
+                  if (e.code === 'Enter' || e.code === 'NumpadEnter') {
                     handleSubmit();
                   }
                 }}>

+ 2 - 2
src/views/setting/modal/addteacherModel.tsx

@@ -156,10 +156,10 @@ export default defineComponent({
               <h2>{userStore.getUserInfo.schoolInfos[0].name}</h2>
               <p class={styles.studentCoreInfoSubtitle}>
                 邀请您的成为
-                <span>数字化乐器课堂音乐老师</span>
+                <span>音乐数字课堂老师</span>
               </p>
               <div class={styles.codewrap}>
-                <img src={codewrap} class={styles.codewrapBg} alt="" />
+                {/* <img src={codewrap} class={styles.codewrapBg} alt="" /> */}
                 <TheQrCode margin={0} text={url} size={119} />
               </div>
               <div class={styles.codewrapSubmit}>

+ 1 - 0
src/views/setting/modal/forgotPassword.tsx

@@ -136,6 +136,7 @@ export default defineComponent({
               ]}>
               <NInput
                 readonly
+                type="text"
                 disabled={true}
                 maxlength={11}
                 v-model:value={formInline.mobile}

+ 2 - 2
src/views/studentList/index.module.less

@@ -397,9 +397,9 @@
         .codewrap {
           width: 147px;
           height: 145px;
-          // background: url(./images/cordWrap.png) no-repeat;
+          background: url(./images/cordWrap.png) no-repeat;
           position: relative;
-          // background-size: 147px 145px;
+          background-size: 147px 145px;
           margin: 16px 0 18px;
           display: flex;
           flex-direction: column;

+ 35 - 3
src/views/studentList/index.tsx

@@ -8,7 +8,8 @@ import {
   NImage,
   NModal,
   NSelect,
-  NSpace
+  NSpace,
+  useMessage
 } from 'naive-ui';
 import SearchInput from '@/components/searchInput';
 import CSelect from '@/components/CSelect';
@@ -49,6 +50,7 @@ export default defineComponent({
     const route = useRoute();
     const router = useRouter();
     const showGuide = ref(false);
+    const message = useMessage()
     const search = () => {
       state.pagination.page = 1;
       getList();
@@ -66,6 +68,17 @@ export default defineComponent({
         console.log(e);
       }
     };
+
+    const copyTo = (text: string) => {
+      const input = document.createElement('input');
+      input.value = text;
+      document.body.appendChild(input);
+      input.select();
+      input.setSelectionRange(0, input.value.length);
+      document.execCommand('Copy');
+      document.body.removeChild(input);
+      message.success('复制成功');
+    };
     const onReset = () => {
       state.searchForm = {
         keyword: '',
@@ -101,11 +114,29 @@ export default defineComponent({
       return [
         {
           title: '学生姓名',
-          key: 'nickname'
+          key: 'nickname',
+          render: (row: any) => {
+            return (
+              <div
+                style={{ userSelect: 'all', cursor: 'pointer' }}
+                onClick={() => copyTo(row.nickname)}>
+                {row.nickname}
+              </div>
+            );
+          }
         },
         {
           title: '手机号',
-          key: 'phone'
+          key: 'phone',
+          render: (row: any) => {
+            return (
+              <div
+                style={{ userSelect: 'all', cursor: 'pointer' }}
+                onClick={() => copyTo(row.phone)}>
+                {row.phone}
+              </div>
+            );
+          }
         },
         {
           title: '性别',
@@ -137,6 +168,7 @@ export default defineComponent({
         {
           title: '操作',
           key: 'id',
+          width:300,
           render(row: any, index: number) {
             return (
               <>

+ 4 - 3
src/views/studentList/modals/addStudentModel.tsx

@@ -64,7 +64,7 @@ export default defineComponent({
         saveImg();
       } else {
         const container: any = document.getElementById(`preview-container`);
-        console.log(container, 'container=====>')
+
         html2canvas(container, {
           allowTaint: true,
           useCORS: true,
@@ -144,15 +144,16 @@ export default defineComponent({
               <h2>{userStore.getUserInfo.schoolInfos[0].name}</h2>
               <p class={styles.studentCoreInfoSubtitle}>
                 邀请您的孩子加入
-                <span>数字化乐器课堂</span>
+                <span>音乐数字课堂</span>
               </p>
               <div class={styles.codewrap}>
-                <img src={codewrap} class={styles.codewrapBg} alt="" />
+
                 <TheQrCode
                   margin={0}
                   text={url.value}
                   size={119}
                 />
+                {/* <img src={codewrap} class={styles.codewrapBg} alt="" /> */}
               </div>
               <div class={styles.codewrapSubmit}>
                 <NImage previewDisabled src={btnBg}></NImage>

+ 4 - 26
src/views/studentList/modals/studentTraomomhDetails.tsx

@@ -88,6 +88,8 @@ export default defineComponent({
             typeList: tList || []
           };
         });
+
+        console.log(arr, 'arr')
         teacherInfo.value = {
           ...res.data,
 
@@ -134,8 +136,8 @@ export default defineComponent({
                 开始时间:
                 {teacherInfo.value.createTime
                   ? dayjs(new Date(teacherInfo.value.createTime)).format(
-                      'YYYY-MM-DD'
-                    )
+                    'YYYY-MM-DD'
+                  )
                   : '--'}{' '}
                 | 结束时间:
                 {dayjs(new Date(teacherInfo.value.expireDate)).format(
@@ -173,30 +175,6 @@ export default defineComponent({
                 isCLassWork={false}
                 item={item}></TrainType>
             ))}
-            {teacherInfo.value.studentLessonTrainingDetails.map((item: any) => (
-              <TrainType
-                style={{ marginBottom: '20px' }}
-                isDisabled={true}
-                isDelete={false}
-                isCLassWork={false}
-                item={item}></TrainType>
-            ))}
-            {teacherInfo.value.studentLessonTrainingDetails.map((item: any) => (
-              <TrainType
-                style={{ marginBottom: '20px' }}
-                isDisabled={true}
-                isDelete={false}
-                isCLassWork={false}
-                item={item}></TrainType>
-            ))}
-            {teacherInfo.value.studentLessonTrainingDetails.map((item: any) => (
-              <TrainType
-                style={{ marginBottom: '20px' }}
-                isDisabled={true}
-                isDelete={false}
-                isCLassWork={false}
-                item={item}></TrainType>
-            ))}
           </div>
         </NScrollbar>
       </div>

+ 8 - 7
src/views/xiaoku-music/index.tsx

@@ -40,7 +40,8 @@ import {
   api_subjectList
 } from '../xiaoku-ai/api';
 import { useUserStore } from '/src/store/modules/users';
-import Musicguide from '@/custom-plugins/guide-page/music-guide';
+import Musicguide from '@/custom-plugins/guide-page/music-guide'
+import TheEmpty from '/src/components/TheEmpty';
 export default defineComponent({
   name: 'XiaokuMusic',
   setup() {
@@ -286,7 +287,7 @@ export default defineComponent({
                             <PlayLoading
                               class={[
                                 data.listActive === index &&
-                                data.playState === 'play'
+                                  data.playState === 'play'
                                   ? ''
                                   : styles.showPlayLoading
                               ]}
@@ -314,7 +315,7 @@ export default defineComponent({
                               <img
                                 src={
                                   data.listActive === index &&
-                                  data.playState === 'play'
+                                    data.playState === 'play'
                                     ? icon_pause
                                     : icon_play
                                 }
@@ -335,7 +336,7 @@ export default defineComponent({
                               <img
                                 src={
                                   data.listActive === index &&
-                                  data.playState === 'play'
+                                    data.playState === 'play'
                                     ? icon_pause
                                     : icon_play
                                 }
@@ -355,7 +356,7 @@ export default defineComponent({
                   )}
                   {!data.loading && data.list.length === 0 && (
                     <div class={styles.empty}>
-                      <NEmpty />
+                      <TheEmpty></TheEmpty>
                     </div>
                   )}
                 </div>
@@ -393,11 +394,11 @@ export default defineComponent({
                 </div>
                 <div class={styles.staffImgs}>
                   <TransitionGroup name="van-fade">
-                    {(activeItem.value?.musicSvg || activeItem.value?.musicImg)
+                    {(activeItem.value?.musicSvg || activeItem.value?.musicImg) ? (activeItem.value?.musicSvg || activeItem.value?.musicImg)
                       ?.split(',')
                       .map((item, index) => {
                         return <img src={item} key={item} />;
-                      })}
+                      }) : <TheEmpty></TheEmpty>}
                   </TransitionGroup>
                 </div>
               </div>