import { Tag, Button, Popup, Form, Field, RadioGroup, Radio } from 'vant'; import { computed, defineComponent, onMounted, reactive } from 'vue'; import styles from './detail.module.less'; import MSticky from '@/components/m-sticky'; // import MVideo from '@/components/m-video'; import { useRoute, useRouter } from 'vue-router'; import request from '@/helpers/request'; import loginSuccess from './images/login-success.png'; import bannerBg from './images/banner1.png'; import SelectStudent from '@/views/student-register/modal/select-student'; export default defineComponent({ name: 'activation-register', setup() { const route = useRoute(); const forms = reactive({ activationCodeRecordId: route.query.activationCodeRecordId, statusShow: false, schoolId: null as any, schoolAreaId: null, // 学校区域编号 activationCode: route.query.code as any, // 互通码 paymentType: '', // 支付类型 paymentChannel: '', multi_user_limit: 1, // 限制注册学生数量 // popupShow: false, registerDetails: {} as any, details: [] as any[], // schoolType: '', // 学校类型 gradeYear: '', // 学制 schoolInstrumentSetType: null as any, submitLoading: false, showSelectStudent: false, // 选择学生 studentList: [], // 手机号关联学生列表 studentItem: {} as any, // 选择的学生 registerAllFlag: false // 是否全部登记 }); const studentInfo = reactive({ nickname: '', areaName: '', schoolName: '', currentGradeNum: '' as any, gender: 1 as any, registerType: null as any // 报名类型 }); const btnText = computed(() => { if (forms.registerAllFlag) { return '该账号学生已全部登记'; } if (forms.studentItem?.registerFlag) { return '该学生已登记'; } return '登记'; }); const getDetail = async () => { try { const { data } = await request.post( '/edu-app/open/instrumentRegister/getStudentActivationRecord', { requestType: 'form', data: { mobile: route.query.mobile } } ); const result = data || []; result.forEach((item: any) => { item.userId = item.activationCodeRecordId; }); forms.studentList = result; let count = 0; forms.studentList.forEach((item: any) => { if (!item.registerFlag && !forms.studentItem?.userId) { forms.studentItem = item; } if (item.registerFlag) { count++; } }); if (forms.studentList.length === count) { forms.registerAllFlag = true; forms.studentItem = forms.studentList[0]; } formatData(forms.studentItem); } catch { // } }; const formatData = (item: any) => { studentInfo.nickname = item.nickname; studentInfo.gender = item.gender; const tempArea = [] as any; if (item.provinceName) { tempArea.push(item.provinceName); } if (item.cityName) { tempArea.push(item.cityName); } if (item.regionName) { tempArea.push(item.regionName); } studentInfo.areaName = tempArea.join(' '); studentInfo.schoolName = item.schoolName; studentInfo.currentGradeNum = item.currentGradeNum + '年级' + item.currentClass + '班'; }; const onSubmit = async () => { forms.submitLoading = true; try { const { data } = await request.post( '/edu-app/open/instrumentRegister/instrumentUseRegister', { requestType: 'form', data: { activationCodeRecordId: forms.studentItem.activationCodeRecordId } } ); forms.statusShow = true; } catch {} forms.submitLoading = false; }; onMounted(() => { getDetail(); }); return () => (