瀏覽代碼

Merge branch 'iteration-create' into dev

liushengqiang 2 年之前
父節點
當前提交
b39d17c0fa

+ 1 - 1
src/views/co-ai/index.tsx

@@ -289,7 +289,7 @@ export default defineComponent({
                         <div class={styles.musicDes}>
                           <div class={styles.musicFavitor}>{item.usedNum}</div>
                           <div class={[styles.musicAuthor, 'van-ellipsis']}>
-                            {item.composer}
+                            {item.composer || '佚名'}
                           </div>
                         </div>
                       </div>

+ 1 - 0
src/views/courseware-list/component/book/index.tsx

@@ -186,6 +186,7 @@ export default defineComponent({
           name: item.name
         })
         const url = location.origin + location.pathname + '#/courseware-play?' + query;
+        console.log("🚀 ~ url:", url)
         postMessage({
           api: 'openWebView',
           content: {

+ 2 - 10
src/views/courseware-play/component/audio-item/index.tsx

@@ -55,7 +55,7 @@ export default defineComponent({
       () => props.show,
       val => {
         if (val) {
-          onToggleAudio();
+          // onToggleAudio();
         } else {
           audioRef.value.pause();
         }
@@ -66,10 +66,6 @@ export default defineComponent({
       val => {
         if (val === 'hidden' && props.show) {
           audioRef.value.pause();
-        } else {
-          if (props.show){
-            onToggleAudio();
-          }
         }
       }
     );
@@ -114,10 +110,6 @@ export default defineComponent({
     /** 加载成功 */
     const onLoadedmetadata = () => {
       data.duration = audioRef.value.duration;
-      // 加载成功后台, 如果是第一次加载, 且是show状态, 则播放
-      if (props.show) {
-        onToggleAudio();
-      }
     };
 
     /** 改变播放时间 */
@@ -133,7 +125,7 @@ export default defineComponent({
     /** 播放结束 */
     const onEnded = () => {
       data.playState = 'pause';
-      emit('ended');
+      // emit('ended');
     };
     return () => (
       <div class={styles.videoWrap}>

+ 2 - 6
src/views/courseware-play/component/video-item/index.tsx

@@ -53,7 +53,7 @@ export default defineComponent({
     watch(
       () => props.show,
       val => {
-        onToggleAudio(val ? 'play' : 'pause');
+        onToggleAudio('pause');
       }
     );
     watch(
@@ -61,10 +61,6 @@ export default defineComponent({
       val => {
         if (val === 'hidden' && props.show) {
           onToggleAudio('pause');
-        } else {
-          if (props.show){
-            onToggleAudio('play');
-          }
         }
       }
     );
@@ -107,7 +103,7 @@ export default defineComponent({
     /** 播放结束 */
     const onEnded = () => {
       data.playState = 'pause';
-      emit('ended');
+      // emit('ended');
     };
     onMounted(() => {
       console.log('加载');

+ 7 - 5
src/views/information/help-center/index.tsx

@@ -77,10 +77,12 @@ export default defineComponent({
           styles.helpCenter,
           !form.listState.dataShow && 'emptyRootContainer'
         ]}>
-        <OSticky position="top">
-          <OHeader border={false} isBack={route.query.platformType == 'ANALYSIS' ? false : true} />
-          <OSearch onSearch={onSearch} />
-        </OSticky>
+        {route.query.platformType == 'ANALYSIS' ? null : (
+          <OSticky position="top">
+            <OHeader border={false} />
+            <OSearch onSearch={onSearch} />
+          </OSticky>
+        )}
 
         {form.listState.dataShow ? (
           <List
@@ -99,7 +101,7 @@ export default defineComponent({
                   router.push({
                     path: 'help-detail',
                     query: {
-                      id: item.id,
+                      id: item.id
                     }
                   });
                 }}></Cell>

+ 7 - 0
src/views/school-register/index.module.less

@@ -190,4 +190,11 @@
             margin: 0 auto;
         }
     }
+}
+.codeWrap{
+    :global{
+        .van-field__error-message{
+            text-align: left !important;
+        }
+    }
 }

+ 32 - 26
src/views/school-register/index.tsx

@@ -14,6 +14,7 @@ import {
   api_sysAreaQueryAllProvince
 } from './api';
 import { useRoute } from 'vue-router';
+import MImgCode from '@/components/m-img-code';
 
 export default defineComponent({
   name: 'SchoolRegister',
@@ -45,7 +46,7 @@ export default defineComponent({
       cityCode: '', // 所属城市
       provinceCode: '', // 所属省份
       schoolNature: 'PUBLIC' as 'PUBLIC' | 'PRIVATE' | string, // 学校性质
-      schoolType: 'PRIMARY' as 'PRIMARY' | 'JUNIOR' | 'PRIMARY_JUNIOR' | string, // 学校类型
+      schoolType: 'PRIMARY_JUNIOR' as 'PRIMARY' | 'JUNIOR' | 'PRIMARY_JUNIOR' | string, // 学校类型
       gradeYear: 'SIX_YEAR_SYSTEM' as
         | 'FIVE_YEAR_SYSTEM'
         | 'SIX_YEAR_SYSTEM'
@@ -65,7 +66,8 @@ export default defineComponent({
       showArea: false,
       success: false,
       areaList: {} as any,
-      sendMsg: '发送验证码'
+      sendMsg: '发送验证码',
+      imgCodeStatus: false
     });
     const formateArea = (area: any[]) => {
       const province_list: { [_: string]: string } = {};
@@ -131,7 +133,6 @@ export default defineComponent({
     const handleSubmit = async () => {
       const res = await api_schoolAdd({ ...forms });
       if (res?.code === 200) {
-        showToast('提交成功');
         data.success = true;
       }
     };
@@ -160,6 +161,7 @@ export default defineComponent({
                   placeholder="请输入学校全称"
                   inputAlign="right"
                   v-model={forms.name}
+                  maxlength={20}
                   rules={[{ required: true, message: '请输入学校全称' }]}
                 />
                 <Field
@@ -196,27 +198,6 @@ export default defineComponent({
                   }}
                 </Field>
 
-                <Field center border label="学校类型" labelWidth="70px">
-                  {{
-                    input: () => (
-                      <>
-                        {formOptions.types.map(item => {
-                          return (
-                            <Button
-                              class={styles.radio}
-                              size="small"
-                              color={
-                                item.value === forms.schoolType ? '#198CFE' : ''
-                              }
-                              onClick={() => (forms.schoolType = item.value)}>
-                              {item.label}
-                            </Button>
-                          );
-                        })}
-                      </>
-                    )
-                  }}
-                </Field>
                 <Field center border label="学年制">
                   {{
                     input: () => (
@@ -317,8 +298,8 @@ export default defineComponent({
                   }}
                 </Field>
                 <Field
+                  class={styles.codeWrap}
                   border
-                  center
                   name="code"
                   label="验证码"
                   placeholder="请输入验证码"
@@ -331,7 +312,21 @@ export default defineComponent({
                         size="small"
                         type="primary"
                         color="#198CFE"
-                        onClick={() => onSendSms()}>
+                        onClick={() => {
+                          if (!forms.educationalAdministrationPhone) {
+                            showToast('请输入负责人手机号码');
+                            return;
+                          }
+                          if (
+                            !/^1[3456789]\d{9}$/.test(
+                              forms.educationalAdministrationPhone
+                            )
+                          ) {
+                            showToast('手机号码格式不正确');
+                            return;
+                          }
+                          data.imgCodeStatus = true;
+                        }}>
                         {data.sendMsg}
                       </Button>
                     )
@@ -381,6 +376,17 @@ export default defineComponent({
                 </div>
               </div>
             </Popup>
+
+            {data.imgCodeStatus ? (
+              <MImgCode
+                v-model:value={data.imgCodeStatus}
+                phone={forms.educationalAdministrationPhone}
+                onClose={() => {
+                  data.imgCodeStatus = false;
+                }}
+                onSendCode={onSendSms}
+              />
+            ) : null}
           </div>
         </div>
       </div>

+ 3 - 1
src/views/teaher-register/component/success/index.module.less

@@ -1,12 +1,14 @@
 .container {
     width: 100vw;
-    min-height: 100vh;
+    height: 100vh;
     background-color: rgba(96, 166, 241, 1);
     background-image: url('../../images/icon_bg.png');
     background-repeat: no-repeat;
     background-size: 100%;
     padding-top: 50Px;
     margin: 0 auto;
+    overflow-x: hidden;
+    overflow-y: auto;
 
     .titleIcon {
         display: block;

+ 21 - 5
src/views/teaher-register/index.tsx

@@ -25,6 +25,7 @@ import {
 import { useRoute } from 'vue-router';
 import { postMessage } from '@/helpers/native-message';
 import Success from './component/success/index';
+import MImgCode from '@/components/m-img-code';
 
 export default defineComponent({
   name: 'SchoolRegister',
@@ -36,7 +37,7 @@ export default defineComponent({
       provinceCode: '', // 所属省份
       code: '', // 验证码
       tenantId: route.query.tenantId || '', // 机构
-      phone: null,
+      phone: null as any,
       schoolId: route.query.schoolId || '', // 学校id
       nickname: null,
       gender: 1
@@ -48,7 +49,8 @@ export default defineComponent({
       checked: true,
       success: false,
       areaList: {} as any,
-      sendMsg: '获取验证码'
+      sendMsg: '获取验证码',
+      imgCodeStatus: false
     });
     const formateArea = (area: any[]) => {
       const province_list: { [_: string]: string } = {};
@@ -86,7 +88,7 @@ export default defineComponent({
       getAreaList();
     });
     /** 发送验证码 */
-    const onSendSms = async () => {
+    const onSendSms = () => {
       if (!forms.phone) {
         showToast('请输入手机号码');
         return;
@@ -95,6 +97,9 @@ export default defineComponent({
         showToast('手机号码格式不正确');
         return;
       }
+      data.imgCodeStatus = true;
+    };
+    const onCodeSend = async (code: string) => {
       if (data.sendMsg.includes('s')) return;
       try {
         await api_openSendSms({
@@ -112,8 +117,8 @@ export default defineComponent({
       }
     };
     const onCountDown = () => {
-      data.sendMsg = '30s';
-      let count = 30;
+      data.sendMsg = '60s';
+      let count = 60;
       let timer = setInterval(() => {
         count--;
         data.sendMsg = `${count}s`;
@@ -297,6 +302,17 @@ export default defineComponent({
               v-model:show={data.success}>
               <Success />
             </Popup>
+
+            {data.imgCodeStatus ? (
+              <MImgCode
+                v-model:value={data.imgCodeStatus}
+                phone={forms.phone}
+                onClose={() => {
+                  data.imgCodeStatus = false;
+                }}
+                onSendCode={onCodeSend}
+              />
+            ) : null}
           </div>
         </div>
       </div>