|
@@ -79,13 +79,12 @@ Page({
|
|
|
gradeList: [] as any,
|
|
|
gradeId: "",
|
|
|
gradeName: "",
|
|
|
- gradeIndex: 0,
|
|
|
+ gradeClassIndexs: [0, 0],
|
|
|
|
|
|
showClass: false, //班级
|
|
|
classList: [] as any,
|
|
|
classId: "",
|
|
|
className: "",
|
|
|
- classIndex: 0,
|
|
|
},
|
|
|
async onLoad(options: any) {
|
|
|
const { redirectUrl, id } = options;
|
|
@@ -153,16 +152,13 @@ Page({
|
|
|
return item.value === this.data.classId
|
|
|
}))
|
|
|
this.setData({
|
|
|
- classList: [{
|
|
|
- values: classListData
|
|
|
- }]
|
|
|
- }, () => {
|
|
|
- // 不知道为啥 直接写在上面 gradeIndex 不能回显
|
|
|
- this.setData({
|
|
|
- schoolAreaIndex,
|
|
|
- gradeIndex,
|
|
|
- classIndex
|
|
|
- })
|
|
|
+ schoolAreaIndex,
|
|
|
+ "gradeList[0].defaultIndex": gradeIndex,
|
|
|
+ "gradeList[1]": {
|
|
|
+ values: classListData,
|
|
|
+ defaultIndex: classIndex,
|
|
|
+ },
|
|
|
+ gradeClassIndexs:[gradeIndex, classIndex]
|
|
|
})
|
|
|
}
|
|
|
} catch (e: any) {
|
|
@@ -171,7 +167,7 @@ Page({
|
|
|
},
|
|
|
/** 选择男女 */
|
|
|
onCheckGender(e: any) {
|
|
|
- const { dataset } = e.target
|
|
|
+ const { dataset } = e.currentTarget
|
|
|
this.setData({
|
|
|
gender: dataset.gender
|
|
|
})
|
|
@@ -221,11 +217,10 @@ Page({
|
|
|
|
|
|
gradeId: "",
|
|
|
gradeName: "",
|
|
|
- gradeIndex: 0,
|
|
|
+ gradeClassIndexs: [0, 0],
|
|
|
|
|
|
classId: "",
|
|
|
className: "",
|
|
|
- classIndex: 0
|
|
|
}, () => {
|
|
|
this.getSchools()
|
|
|
})
|
|
@@ -346,11 +341,10 @@ Page({
|
|
|
|
|
|
gradeId: "",
|
|
|
gradeName: "",
|
|
|
- gradeIndex: 0,
|
|
|
+ gradeClassIndexs: [0, 0],
|
|
|
|
|
|
classId: "",
|
|
|
className: "",
|
|
|
- classIndex: 0,
|
|
|
}, () => {
|
|
|
this.getSchoolAreaDetail()
|
|
|
})
|
|
@@ -410,6 +404,10 @@ Page({
|
|
|
if (schoolInfo.instrumentSetType === 'SCHOOL') {
|
|
|
const gradeClassList = [{
|
|
|
values: getGradeList(schoolInfo.gradeYear),
|
|
|
+ defaultIndex: 0
|
|
|
+ }, {
|
|
|
+ values: classList,
|
|
|
+ defaultIndex: 0
|
|
|
}]
|
|
|
this.setData({
|
|
|
gradeList: gradeClassList
|
|
@@ -425,7 +423,11 @@ Page({
|
|
|
});
|
|
|
gradeList.sort((a: any, b: any) => a.value - b.value);
|
|
|
const gradeClassList = [{
|
|
|
- values: gradeList
|
|
|
+ values: gradeList,
|
|
|
+ defaultIndex: 0
|
|
|
+ }, {
|
|
|
+ values: classList,
|
|
|
+ defaultIndex: 0
|
|
|
}]
|
|
|
this.setData({
|
|
|
gradeList: gradeClassList,
|
|
@@ -469,12 +471,20 @@ Page({
|
|
|
console.log(lastGradeList, 'lastGradeList')
|
|
|
this.setData({
|
|
|
gradeList: [{
|
|
|
- values: lastGradeList
|
|
|
+ values: lastGradeList,
|
|
|
+ defaultIndex: 0
|
|
|
+ }, {
|
|
|
+ values: lastGradeList[0]?.classList || [],
|
|
|
+ defaultIndex: 0
|
|
|
}]
|
|
|
})
|
|
|
} else {
|
|
|
const gradeClassList = [{
|
|
|
values: getGradeList(),
|
|
|
+ defaultIndex: 0
|
|
|
+ }, {
|
|
|
+ values: classList,
|
|
|
+ defaultIndex: 0
|
|
|
}]
|
|
|
this.setData({
|
|
|
gradeList: gradeClassList
|
|
@@ -483,6 +493,10 @@ Page({
|
|
|
} else {
|
|
|
const gradeClassList = [{
|
|
|
values: getGradeList(),
|
|
|
+ defaultIndex: 0
|
|
|
+ }, {
|
|
|
+ values: classList,
|
|
|
+ defaultIndex: 0
|
|
|
}]
|
|
|
this.setData({
|
|
|
gradeList: gradeClassList
|
|
@@ -507,6 +521,15 @@ Page({
|
|
|
showGrade: false
|
|
|
})
|
|
|
},
|
|
|
+ /** 年级班级切换时 */
|
|
|
+ onGradeChange(event: any) {
|
|
|
+ const { picker, index, value } = event.detail;
|
|
|
+ const classListData = value[index]?.classList
|
|
|
+ if (index === 0 && classListData) {
|
|
|
+ picker.setColumnIndex(1, '0')
|
|
|
+ picker.setColumnValues(1, classListData);
|
|
|
+ }
|
|
|
+ },
|
|
|
/** 确认选择年级 */
|
|
|
onSubmitGrade(e: any) {
|
|
|
const selectedOptions: any = e.detail.value
|
|
@@ -517,11 +540,8 @@ Page({
|
|
|
})
|
|
|
return
|
|
|
}
|
|
|
- const gradeIndex = (this.data.gradeList[0]?.values || []).findIndex((item: any) => {
|
|
|
- return item.value === selectedOptions[0].value
|
|
|
- })
|
|
|
-
|
|
|
- if (selectedOptions[0].value == this.data.gradeId) {
|
|
|
+ const selectedIndexs: any = e.detail.index
|
|
|
+ if (selectedOptions[0].value == this.data.gradeId && selectedOptions[1].value == this.data.classId) {
|
|
|
this.setData({
|
|
|
showGrade: false
|
|
|
})
|
|
@@ -532,63 +552,12 @@ Page({
|
|
|
gradeId: selectedOptions[0].value,
|
|
|
gradeName: selectedOptions[0].text,
|
|
|
showGrade: false,
|
|
|
- gradeIndex,
|
|
|
-
|
|
|
- classId: "",
|
|
|
- className: "",
|
|
|
- classIndex: 0,
|
|
|
- })
|
|
|
- this.setData({
|
|
|
- classList: [{
|
|
|
- values: selectedOptions[0].classList || classList
|
|
|
- }]
|
|
|
- })
|
|
|
- },
|
|
|
- /** 选择班级 */
|
|
|
- onSelectClass() {
|
|
|
- if (!this.data.gradeId) {
|
|
|
- wx.showToast({
|
|
|
- title: '请先选择年级',
|
|
|
- icon: 'none'
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- this.setData({
|
|
|
- showClass: true
|
|
|
- })
|
|
|
- },
|
|
|
- onCloseClass() {
|
|
|
- this.setData({
|
|
|
- showClass: false
|
|
|
- })
|
|
|
- },
|
|
|
- /** 确认选择班级 */
|
|
|
- onSubmitClass(e: any) {
|
|
|
- const selectedOptions: any = e.detail.value
|
|
|
- if (!selectedOptions || !selectedOptions[selectedOptions.length - 1]) {
|
|
|
- wx.showToast({
|
|
|
- title: '未选中值',
|
|
|
- icon: 'none'
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- // 班级index
|
|
|
- const classIndex = (this.data.classList[0]?.values || []).findIndex(((item: any) => {
|
|
|
- return item.value === selectedOptions[0].value
|
|
|
- }))
|
|
|
+ gradeClassIndexs: selectedIndexs,
|
|
|
+ 'gradeList[0].defaultIndex': selectedIndexs[0],
|
|
|
+ 'gradeList[1].defaultIndex': selectedIndexs[1],
|
|
|
|
|
|
- if (selectedOptions[0].value == this.data.classId) {
|
|
|
- this.setData({
|
|
|
- showClass: false
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- this.setData({
|
|
|
- classId: selectedOptions[0].value,
|
|
|
- className: selectedOptions[0].text,
|
|
|
- classIndex,
|
|
|
- showClass: false
|
|
|
+ classId: selectedOptions[1].value,
|
|
|
+ className: selectedOptions[1].text
|
|
|
})
|
|
|
},
|
|
|
messageName(value: string) {
|