|
@@ -30,10 +30,11 @@ import { setLoginInit, state } from '@/state';
|
|
|
import iconGift from '../images/icon-gift.png';
|
|
|
import { useRoute, useRouter } from 'vue-router';
|
|
|
import MSticky from '@/components/m-sticky';
|
|
|
-import registerBgIcon from "../images/register-bg.png";
|
|
|
-import vipGiftIcon from "../images/vip-gift-icon.png";
|
|
|
+import registerBgIcon from '../images/register-bg.png';
|
|
|
+import vipGiftIcon from '../images/vip-gift-icon.png';
|
|
|
import agreeYes from '../images/agree-yes.png';
|
|
|
import agreeNo from '../images/agree-no.png';
|
|
|
+import MMessageTip from '@/components/m-message-tip';
|
|
|
|
|
|
const classList: any = [];
|
|
|
for (let i = 1; i <= 40; i++) {
|
|
@@ -89,12 +90,15 @@ export default defineComponent({
|
|
|
classStatus: false,
|
|
|
loading: false,
|
|
|
schoolId: route.query.sId as any,
|
|
|
+ details: {} as any,
|
|
|
gradeYear: null,
|
|
|
schoolType: null,
|
|
|
giftVipDay: null,
|
|
|
showTips: false,
|
|
|
showButton: false,
|
|
|
- showMessage: '请使用微信打开'
|
|
|
+ showMessage: '请使用微信打开',
|
|
|
+ showOtherSchool: false,
|
|
|
+ showOtherMessage: ''
|
|
|
});
|
|
|
const isAgree = ref(false);
|
|
|
const studentInfo = reactive({
|
|
@@ -189,10 +193,25 @@ export default defineComponent({
|
|
|
countDownRef.value.reset();
|
|
|
};
|
|
|
|
|
|
- const onSubmit = async () => {
|
|
|
+ const onSubmit = async (isRegister = false) => {
|
|
|
try {
|
|
|
if (checkForm()) return;
|
|
|
forms.loading = true;
|
|
|
+ if (!isRegister) {
|
|
|
+ const checkSchool = await request.get(
|
|
|
+ `/edu-app/open/student/studentSchool?mobile=${studentInfo.username}&code=${studentInfo.password}&type=REGISTER`
|
|
|
+ );
|
|
|
+ if (checkSchool && checkSchool.schoolId !== forms.schoolId) {
|
|
|
+ forms.showOtherSchool = true;
|
|
|
+ forms.showOtherMessage = `您已绑定【${
|
|
|
+ forms.details.name || ''
|
|
|
+ }】,提交后将更换到【${
|
|
|
+ checkSchool.data?.schoolName
|
|
|
+ }】,是否确认提交?`;
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
await request.get('/edu-app/open/student/schoolQuery', {
|
|
|
params: {
|
|
|
schoolId: forms.schoolId,
|
|
@@ -259,6 +278,7 @@ export default defineComponent({
|
|
|
forms.giftVipDay = data.giftVipDay;
|
|
|
forms.schoolType = data.schoolType;
|
|
|
forms.gradeYear = data.gradeYear;
|
|
|
+ forms.details = data;
|
|
|
studentInfo.extra.giftVipDay = data.giftVipDay;
|
|
|
studentInfo.extra.registerType = data.registerType;
|
|
|
|
|
@@ -291,10 +311,10 @@ export default defineComponent({
|
|
|
) : (
|
|
|
''
|
|
|
)}
|
|
|
-
|
|
|
+
|
|
|
<img class={styles.headBg} src={registerBgIcon} />
|
|
|
<Form labelAlign="top" class={styles.registerForm}>
|
|
|
- <Field
|
|
|
+ <Field
|
|
|
clearable={false}
|
|
|
label="联系方式"
|
|
|
placeholder="请输入手机号码"
|
|
@@ -314,12 +334,12 @@ export default defineComponent({
|
|
|
</div>
|
|
|
)
|
|
|
}}
|
|
|
- </Field>
|
|
|
+ </Field>
|
|
|
<div class={[styles.fieldTipsGroup]}>
|
|
|
- <div class={[styles.fieldTips]}>
|
|
|
- 手机号是音乐数字课堂的唯一登录账户
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ <div class={[styles.fieldTips]}>
|
|
|
+ 手机号是音乐数字课堂的唯一登录账户
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<Field
|
|
|
center
|
|
|
clearable={false}
|
|
@@ -356,7 +376,7 @@ export default defineComponent({
|
|
|
/>
|
|
|
)
|
|
|
}}
|
|
|
- </Field>
|
|
|
+ </Field>
|
|
|
<Field
|
|
|
clearable={false}
|
|
|
label="学生姓名"
|
|
@@ -386,7 +406,9 @@ export default defineComponent({
|
|
|
size="large"
|
|
|
type="primary"
|
|
|
color={
|
|
|
- !(studentInfo.extra.gender === 1) ? '#F5F6FA' : 'linear-gradient( 135deg, #31C7FF 0%, #007AFE 100%)'
|
|
|
+ !(studentInfo.extra.gender === 1)
|
|
|
+ ? '#F5F6FA'
|
|
|
+ : 'linear-gradient( 135deg, #31C7FF 0%, #007AFE 100%)'
|
|
|
}
|
|
|
textColor={
|
|
|
!(studentInfo.extra.gender === 1) ? '#626264' : '#fff'
|
|
@@ -399,7 +421,9 @@ export default defineComponent({
|
|
|
size="large"
|
|
|
type="primary"
|
|
|
color={
|
|
|
- !(studentInfo.extra.gender === 0) ? '#F5F6FA' : 'linear-gradient( 135deg, #31C7FF 0%, #007AFE 100%)'
|
|
|
+ !(studentInfo.extra.gender === 0)
|
|
|
+ ? '#F5F6FA'
|
|
|
+ : 'linear-gradient( 135deg, #31C7FF 0%, #007AFE 100%)'
|
|
|
}
|
|
|
textColor={
|
|
|
!(studentInfo.extra.gender === 0) ? '#626264' : '#fff'
|
|
@@ -436,15 +460,16 @@ export default defineComponent({
|
|
|
required
|
|
|
input-align="right"
|
|
|
/>
|
|
|
- {
|
|
|
- (studentInfo.extra.registerType === 'GIFT_VIP_DAY' && forms.giftVipDay && Number(forms.giftVipDay) > 0) ?
|
|
|
+ {studentInfo.extra.registerType === 'GIFT_VIP_DAY' &&
|
|
|
+ forms.giftVipDay &&
|
|
|
+ Number(forms.giftVipDay) > 0 ? (
|
|
|
<div class={styles.giftTips}>
|
|
|
<img src={vipGiftIcon} />
|
|
|
- <span>注册成功即可获得乐器AI学练工具<i>{forms.giftVipDay}</i>天有效期</span>
|
|
|
+ <span>
|
|
|
+ 注册成功即可获得乐器AI学练工具<i>{forms.giftVipDay}</i>天有效期
|
|
|
+ </span>
|
|
|
</div>
|
|
|
- : null
|
|
|
- }
|
|
|
-
|
|
|
+ ) : null}
|
|
|
</Form>
|
|
|
{/* <div class={styles.agreeColumn}>
|
|
|
<img src={isAgree.value ? agreeYes : agreeNo} onClick={() => (isAgree.value = !isAgree.value)} />
|
|
@@ -465,7 +490,7 @@ export default defineComponent({
|
|
|
class={styles.submitBtn}
|
|
|
color="linear-gradient( 135deg, #31C7FF 0%, #007AFE 100%)"
|
|
|
block
|
|
|
- onClick={onSubmit}
|
|
|
+ onClick={() => onSubmit()}
|
|
|
disabled={forms.loading}
|
|
|
loading={forms.loading}>
|
|
|
确认
|
|
@@ -540,6 +565,19 @@ export default defineComponent({
|
|
|
});
|
|
|
}}
|
|
|
/>
|
|
|
+
|
|
|
+ <MMessageTip
|
|
|
+ show={forms.showOtherSchool}
|
|
|
+ messageAlign="left"
|
|
|
+ message={forms.showOtherMessage}
|
|
|
+ showCancelButton
|
|
|
+ onCancel={() => (forms.showOtherSchool = false)}
|
|
|
+ onConfirm={() => {
|
|
|
+ forms.showOtherSchool = false;
|
|
|
+ // 直接注册
|
|
|
+ onSubmit(true);
|
|
|
+ }}
|
|
|
+ />
|
|
|
</div>
|
|
|
);
|
|
|
}
|