|
@@ -77,20 +77,20 @@ const GRADE_ENUM = {
|
|
|
'8': '八年级',
|
|
|
'9': '九年级'
|
|
|
} as any;
|
|
|
-const getGradeList = (gradeYear: string) => {
|
|
|
+const getGradeList = (gradeYear: string, instrumentCode?: string) => {
|
|
|
let tempList: any = [];
|
|
|
const five = [
|
|
|
- { text: '一年级', value: 1 },
|
|
|
- { text: '二年级', value: 2 },
|
|
|
- { text: '三年级', value: 3 },
|
|
|
- { text: '四年级', value: 4 },
|
|
|
- { text: '五年级', value: 5 }
|
|
|
+ { text: '一年级', value: 1, instrumentCode },
|
|
|
+ { text: '二年级', value: 2, instrumentCode },
|
|
|
+ { text: '三年级', value: 3, instrumentCode },
|
|
|
+ { text: '四年级', value: 4, instrumentCode },
|
|
|
+ { text: '五年级', value: 5, instrumentCode }
|
|
|
];
|
|
|
- const one = [{ text: '六年级', value: 6 }];
|
|
|
+ const one = [{ text: '六年级', value: 6, instrumentCode }];
|
|
|
const three = [
|
|
|
- { text: '七年级', value: 7 },
|
|
|
- { text: '八年级', value: 8 },
|
|
|
- { text: '九年级', value: 9 }
|
|
|
+ { text: '七年级', value: 7, instrumentCode },
|
|
|
+ { text: '八年级', value: 8, instrumentCode },
|
|
|
+ { text: '九年级', value: 9, instrumentCode }
|
|
|
];
|
|
|
if (gradeYear === 'FIVE_YEAR_SYSTEM') {
|
|
|
tempList.push(...[...five]);
|
|
@@ -115,6 +115,7 @@ export default defineComponent({
|
|
|
// 初始化学校编号
|
|
|
studentRegisterStore.setShoolId(route.query.sId as any);
|
|
|
const countDownRef = ref();
|
|
|
+ const mstickyRef = ref();
|
|
|
const forms = reactive({
|
|
|
schoolId: route.query.sId as any,
|
|
|
paymentType: '', // 支付类型
|
|
@@ -210,13 +211,17 @@ export default defineComponent({
|
|
|
const overCountDown = useCountDown({
|
|
|
time: forms.activeOverTime,
|
|
|
onFinish() {
|
|
|
- if (forms.submitLoading) return;
|
|
|
- forms.showTips = true;
|
|
|
- forms.showMessage = '团购时间已截止,感谢您的参与';
|
|
|
- forms.showButton = false;
|
|
|
forms.activeOverStatus = true;
|
|
|
+ if (forms.submitLoading) return;
|
|
|
+ applyOver();
|
|
|
}
|
|
|
});
|
|
|
+ /** 报名结束提示 */
|
|
|
+ const applyOver = () => {
|
|
|
+ forms.showTips = true;
|
|
|
+ forms.showMessage = '团购时间已截止,感谢您的参与';
|
|
|
+ forms.showButton = false;
|
|
|
+ };
|
|
|
|
|
|
const onCodeSend = () => {
|
|
|
forms.countDownStatus = false;
|
|
@@ -270,9 +275,7 @@ export default defineComponent({
|
|
|
overCountDown.reset(forms.activeOverTime);
|
|
|
overCountDown.start();
|
|
|
} else {
|
|
|
- forms.showTips = true;
|
|
|
- forms.showMessage = '团购时间已截止,感谢您的参与';
|
|
|
- forms.showButton = false;
|
|
|
+ applyOver();
|
|
|
forms.activeOverStatus = true;
|
|
|
}
|
|
|
}
|
|
@@ -287,7 +290,8 @@ export default defineComponent({
|
|
|
studentInfo.extra.registerType = data.registerType;
|
|
|
const schoolInstrumentList = data.schoolInstrumentList || [];
|
|
|
if (data.schoolInstrumentSetType === 'SCHOOL') {
|
|
|
- forms.gradeList = getGradeList(data.gradeYear);
|
|
|
+ const instrumentCode = schoolInstrumentList[0]?.instrumentCode;
|
|
|
+ forms.gradeList = getGradeList(data.gradeYear, instrumentCode);
|
|
|
forms.classList = classList;
|
|
|
} else if (data.schoolInstrumentSetType === 'GRADE') {
|
|
|
schoolInstrumentList.forEach((item: any) => {
|
|
@@ -325,7 +329,8 @@ export default defineComponent({
|
|
|
list.instrumentName = item.instrumentName;
|
|
|
list.classList.push({
|
|
|
text: item.classNum + '班',
|
|
|
- value: item.classNum
|
|
|
+ value: item.classNum,
|
|
|
+ instrumentCode: item.instrumentCode
|
|
|
});
|
|
|
}
|
|
|
});
|
|
@@ -461,15 +466,6 @@ export default defineComponent({
|
|
|
);
|
|
|
pageTimer.counter.value = 0;
|
|
|
|
|
|
- // 传统方式
|
|
|
- if (forms.joinType === 'tradition') {
|
|
|
- setTimeout(() => {
|
|
|
- showToast('报名成功');
|
|
|
- router.push('/download');
|
|
|
- }, 100);
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
// 获取用户信息
|
|
|
const res = await request.get('/edu-app/user/getUserInfo', {
|
|
|
requestType: 'form'
|
|
@@ -498,6 +494,16 @@ export default defineComponent({
|
|
|
forms.dialogConfirmStatus = true;
|
|
|
return;
|
|
|
}
|
|
|
+
|
|
|
+ // 传统方式
|
|
|
+ if (forms.joinType === 'tradition') {
|
|
|
+ setTimeout(() => {
|
|
|
+ showToast('报名成功');
|
|
|
+ router.push('/download');
|
|
|
+ }, 100);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
await paymentContinue();
|
|
|
} catch {
|
|
|
//
|
|
@@ -523,12 +529,13 @@ export default defineComponent({
|
|
|
|
|
|
if (!studentInfo.extra.currentGradeNum) {
|
|
|
const tempGrade: any = forms.gradeList || [];
|
|
|
- console.log(tempGrade, 'tempGrade');
|
|
|
+ // console.log(tempGrade, 'tempGrade');
|
|
|
tempGrade?.forEach((i: any) => {
|
|
|
if (i.value === data.currentGradeNum) {
|
|
|
forms.instrumentCode = i.instrumentCode;
|
|
|
forms.gradeNumText = i.text;
|
|
|
studentInfo.extra.currentGradeNum = data.currentGradeNum;
|
|
|
+ forms.classList = i.classList;
|
|
|
}
|
|
|
});
|
|
|
}
|
|
@@ -946,7 +953,11 @@ export default defineComponent({
|
|
|
)}
|
|
|
|
|
|
<div
|
|
|
- class={[styles.studentSection, styles.studentSectionForm]}
|
|
|
+ class={[
|
|
|
+ styles.studentSection,
|
|
|
+ styles.studentSectionForm,
|
|
|
+ forms.giftVipDay <= 0 && styles.noSendDay
|
|
|
+ ]}
|
|
|
// style={{ display: 'none' }}
|
|
|
>
|
|
|
<div class={styles.title1}></div>
|
|
@@ -1132,11 +1143,17 @@ export default defineComponent({
|
|
|
forms.joinType === 'digitalize' && styles.checked
|
|
|
]}
|
|
|
onClick={() => {
|
|
|
- if (!forms.gradeNumText) {
|
|
|
- showToast('请先选择所在年级');
|
|
|
+ if (!forms.gradeNumText || !forms.currentClassText) {
|
|
|
+ showToast('请先选择所在年级班级');
|
|
|
return;
|
|
|
}
|
|
|
forms.joinType = 'digitalize';
|
|
|
+ nextTick(() => {
|
|
|
+ mstickyRef.value?.onChnageHeight();
|
|
|
+ setTimeout(() => {
|
|
|
+ window.scrollTo(0, 1000);
|
|
|
+ }, 50);
|
|
|
+ });
|
|
|
}}>
|
|
|
<div class={styles.goodsInner}>
|
|
|
<i class={styles.proposalTip}></i>
|
|
@@ -1147,14 +1164,20 @@ export default defineComponent({
|
|
|
class={[
|
|
|
styles.goodsItem,
|
|
|
styles.tradition,
|
|
|
- forms.joinType === 'tradition' && styles.checked
|
|
|
+ forms.joinType === 'tradition' && styles.checked1
|
|
|
]}
|
|
|
onClick={() => {
|
|
|
- if (!forms.gradeNumText) {
|
|
|
- showToast('请先选择所在年级');
|
|
|
+ if (!forms.gradeNumText || !forms.currentClassText) {
|
|
|
+ showToast('请先选择所在年级班级');
|
|
|
return;
|
|
|
}
|
|
|
forms.joinType = 'tradition';
|
|
|
+ nextTick(() => {
|
|
|
+ mstickyRef.value?.onChnageHeight();
|
|
|
+ setTimeout(() => {
|
|
|
+ window.scrollTo(0, 1000);
|
|
|
+ }, 50);
|
|
|
+ });
|
|
|
}}>
|
|
|
<div class={styles.goodsInner}>传统方式</div>
|
|
|
</div>
|
|
@@ -1241,7 +1264,7 @@ export default defineComponent({
|
|
|
)}
|
|
|
|
|
|
{forms.joinType && (
|
|
|
- <MSticky position="bottom">
|
|
|
+ <MSticky position="bottom" ref={mstickyRef}>
|
|
|
<div class={styles.paymentContainer}>
|
|
|
{forms.joinType === 'digitalize' && (
|
|
|
<>
|
|
@@ -1251,7 +1274,9 @@ export default defineComponent({
|
|
|
<span class={styles.needPrice}>
|
|
|
<i style="font-style: normal">¥ </i>
|
|
|
<span>{moneyFormat(calcPrice.value.amount)}</span>
|
|
|
- <i style="font-style: normal">/年</i>
|
|
|
+ <i class={styles.unit} style="font-style: normal">
|
|
|
+ /年
|
|
|
+ </i>
|
|
|
</span>
|
|
|
{calcPrice.value.originAmount >
|
|
|
calcPrice.value.amount ? (
|
|
@@ -1325,8 +1350,11 @@ export default defineComponent({
|
|
|
const selectedOption = val.selectedOptions[0];
|
|
|
studentInfo.extra.currentGradeNum = selectedOption.value;
|
|
|
forms.gradeNumText = selectedOption.text;
|
|
|
- forms.instrumentCode = selectedOption.instrumentCode;
|
|
|
forms.gradeStatus = false;
|
|
|
+ if (['SCHOOL', 'GRADE'].includes(forms.schoolInstrumentSetType)) {
|
|
|
+ forms.instrumentCode = selectedOption.instrumentCode;
|
|
|
+ }
|
|
|
+
|
|
|
if (forms.schoolInstrumentSetType === 'CLASS') {
|
|
|
forms.classList = selectedOption.classList;
|
|
|
}
|
|
@@ -1352,6 +1380,9 @@ export default defineComponent({
|
|
|
studentInfo.extra.currentClass = selectedOption.value;
|
|
|
forms.currentClassText = selectedOption.text;
|
|
|
forms.classStatus = false;
|
|
|
+ if (['CLASS'].includes(forms.schoolInstrumentSetType)) {
|
|
|
+ forms.instrumentCode = selectedOption.instrumentCode;
|
|
|
+ }
|
|
|
}}
|
|
|
/>
|
|
|
</Popup>
|
|
@@ -1368,6 +1399,12 @@ export default defineComponent({
|
|
|
onConfirm={async () => {
|
|
|
await paymentContinue();
|
|
|
}}
|
|
|
+ onCancel={() => {
|
|
|
+ //取消支付,判断是否有结束时间,是否已经结束
|
|
|
+ if (forms.registerExpireTime && forms.activeOverStatus) {
|
|
|
+ applyOver();
|
|
|
+ }
|
|
|
+ }}
|
|
|
/>
|
|
|
|
|
|
<MDialog
|
|
@@ -1387,6 +1424,10 @@ export default defineComponent({
|
|
|
}}
|
|
|
onCancel={(val: any) => {
|
|
|
countDown.pause();
|
|
|
+ //取消支付,判断是否有结束时间,是否已经结束
|
|
|
+ if (forms.registerExpireTime && forms.activeOverStatus) {
|
|
|
+ applyOver();
|
|
|
+ }
|
|
|
}}
|
|
|
/>
|
|
|
|