浏览代码

添加提示

lex 1 年之前
父节点
当前提交
ccb3654dd1

+ 14 - 9
src/school/save-share-image/index.tsx

@@ -158,9 +158,7 @@ export default defineComponent({
 
         state.schoolName = res.data.name
         state.schoolId = res.data.id
-        state.schoolLogo = res.data.logo
-          ? res.data.logo + '@base@tag=imgScale&w=570?t=' + +new Date()
-          : ''
+        state.schoolLogo = res.data.logo ? res.data.logo + '?t=' + +new Date() : ''
         // 生成二维码
         if (state.type === 'teacher') {
           state.url =
@@ -189,13 +187,20 @@ export default defineComponent({
     // 获取当前用户所在的学校
     const getOrchestraDetail = async () => {
       try {
-        const res = await request.get('/api-school/orchestra/detail/' + route.query.id)
-        state.schoolName = res.data.name
-        state.schoolId = res.data.id
-        state.schoolLogo = res.data.schoolLogo + '@base@tag=imgScale&w=570?t=' + +new Date()
+        const { data } = await request.get('/api-school/orchestra/detail/' + route.query.id)
+        state.schoolName = data.name
+        state.schoolId = data.id
+        state.schoolLogo = data.schoolLogo + '?t=' + +new Date()
         // 生成二维码
-
-        state.url = window.location.origin + '/orchestra-student/#/preApply?id=' + route.query.id
+        if (data.orchestraRegisterType === 'GROUP_BUY') {
+          state.url =
+            window.location.origin + '/orchestra-student/#/preGoodsApply?id=' + route.query.id
+        } else if (data.orchestraRegisterType === 'PARENT_CONFERENCES') {
+          state.url =
+            window.location.origin + '/orchestra-student/#/pre-register-active?id=' + route.query.id
+        } else {
+          state.url = window.location.origin + '/orchestra-student/#/preApply?id=' + route.query.id
+        }
       } catch {
         //
       }

+ 37 - 11
src/student/music-group/pre-apply/index.tsx

@@ -6,7 +6,7 @@ import Apply from './component/apply'
 import Payment from './component/payment'
 import Order from './component/order'
 import { useRoute, useRouter } from 'vue-router'
-
+import qs from 'query-string'
 import { goWechatAuth, setLogout } from '@/state'
 import request from '@/helpers/request'
 import { browser, getUrlCode } from '@/helpers/utils'
@@ -27,7 +27,7 @@ export default defineComponent({
       code: '' as any,
       dialogStatus: false,
       dialogMessage: '',
-
+      studentReadStatus: false, // 学生在读
       // 是否开启微信登录(测试使用)默认为false
       testIsWeixin: false
     })
@@ -67,6 +67,11 @@ export default defineComponent({
         )
         state.registerInfo = data || {}
 
+        // 判断学生是否在读
+        if (data.learningOrchestra?.length) {
+          state.studentReadStatus = true
+        }
+
         if (data.registerStatus === 'OUTOF_ORCHESTRA') {
           nextTick(() => {
             state.tabValue = 'apply'
@@ -177,6 +182,22 @@ export default defineComponent({
       }
     }
 
+    const onLoutout = () => {
+      setLogout()
+      const query = {
+        returnUrl: route.path,
+        ...route.query
+      } as any
+
+      window.location.href =
+        window.location.origin + window.location.pathname + '#/loginMusic?' + qs.stringify(query)
+
+      // router.replace({
+      //   path: '/loginMusic',
+      //   query: query
+      // })
+    }
+
     // 先请求接口 判断是否有code
     if (state.testIsWeixin) {
       getRegisterStatus()
@@ -192,15 +213,7 @@ export default defineComponent({
           getRegisterStatus()
         }
       } else {
-        setLogout()
-        const query = {
-          returnUrl: route.path,
-          ...route.query
-        } as any
-        router.replace({
-          path: '/loginMusic',
-          query: query
-        })
+        onLoutout()
       }
     }
 
@@ -268,6 +281,19 @@ export default defineComponent({
           }}
         />
 
+        {/* 学生在读 */}
+        <ODialog
+          title="提示"
+          v-model:show={state.studentReadStatus}
+          message={'您已在其他乐团在读,请退团再报名该乐团。'}
+          confirmButtonText="确认"
+          showCancelButton={false}
+          onConfirm={() => {
+            // state.submitStatus = false
+            onLoutout()
+          }}
+        />
+
         <Popup
           v-model:show={showPopup.value}
           round

+ 2 - 2
src/student/music-group/pre-apply/order-detail.tsx

@@ -297,8 +297,8 @@ export default defineComponent({
 
     // 有支付结果后回调
     const checkOrderTypeJump = () => {
-      // 判断是否是乐团报名
-      if (orderType.value === 'ORCHESTRA') {
+      // 判断是否是乐团报名 并且在app里面
+      if (orderType.value === 'ORCHESTRA' && browser().isApp) {
         window.location.replace(
           'https://mp.weixin.qq.com/s?__biz=MzkxMDMwOTI5Nw==&mid=2247485362&idx=3&sn=9b265d36b5dabe7f9393fc679c367540&chksm=c12c256cf65bac7ae2a865435b950f6e1285afd226356db0ffde815b1ee345f29cfcdb798cc9#rd'
         )

+ 36 - 9
src/student/music-group/pre-goods-apply/index.tsx

@@ -32,6 +32,7 @@ import { useRoute, useRouter } from 'vue-router'
 import { goWechatAuth, setLogout } from '@/state'
 import ODialog from '@/components/o-dialog'
 import InspectModal from './modal/inspect-modal'
+import qs from 'query-string'
 
 // 乐团交付,乐团停止或关闭,有新的交付团;则不允许报名
 const classList: any = []
@@ -82,6 +83,7 @@ export default defineComponent({
       nameReg: /^[\u4E00-\u9FA5]+$/,
       paymentType: '',
       musicPaymentType: '', // 乐团中对应支付方式
+      studentReadStatus: false, // 学生在读
       dialogStatus: false,
       dialogMessage: '',
       dialogOrchestraStatus: false, // 是否为不同的乐团
@@ -308,6 +310,10 @@ export default defineComponent({
           '/api-student/orchestraRegister/registerStatus/' + route.query.id
         )
         state.registerInfo = data || {}
+        // 判断学生是否在读
+        if (data.learningOrchestra?.length) {
+          state.studentReadStatus = true
+        }
       } catch {
         //
       }
@@ -429,6 +435,22 @@ export default defineComponent({
       state.orderInfo = tempPrice
     }
 
+    const onLoutout = () => {
+      setLogout()
+      const query = {
+        returnUrl: route.path,
+        ...route.query
+      } as any
+
+      window.location.href =
+        window.location.origin + window.location.pathname + '#/loginMusic?' + qs.stringify(query)
+
+      // router.replace({
+      //   path: '/loginMusic',
+      //   query: query
+      // })
+    }
+
     onMounted(async () => {
       // state.code = route.query.code || ''
       // console.log('pre register code: ' + state.code)
@@ -469,17 +491,10 @@ export default defineComponent({
           getRegisterStatus()
         }
       } else {
-        setLogout()
-        const query = {
-          returnUrl: route.path,
-          ...route.query
-        } as any
-        router.replace({
-          path: '/loginMusic',
-          query: query
-        })
+        onLoutout()
       }
     }
+
     return () => (
       <div class={styles.goodsApply}>
         <img src={headBg} class={styles.headBg} />
@@ -977,6 +992,18 @@ export default defineComponent({
             onRegisterUser()
           }}
         />
+        {/* 学生在读 */}
+        <ODialog
+          title="提示"
+          v-model:show={state.studentReadStatus}
+          message={'您已在其他乐团在读,请退团再报名该乐团。'}
+          confirmButtonText="确认"
+          showCancelButton={false}
+          onConfirm={() => {
+            // state.submitStatus = false
+            onLoutout()
+          }}
+        />
 
         <ODialog
           title="提示"