新增修改学信息功能

This commit is contained in:
ZhangEnJing 2024-12-05 11:03:59 +08:00
parent 75ecc60db3
commit 48926b7ec0
5 changed files with 59 additions and 25 deletions

View File

@ -20,7 +20,7 @@ const studentController = {
//提交用户 //提交用户
submitStudent(student, isUpdate) { submitStudent(student, isUpdate) {
if (isUpdate) { if (isUpdate) {
localStorageUtils.update(student);
} else { } else {
// 生成一个实时id // 生成一个实时id
const options = { month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit', hour12: false }; const options = { month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit', hour12: false };
@ -48,10 +48,15 @@ const studentController = {
} }
} }
if (phoneNum != null) { if (phoneNum != null) {
if (!(studentList[i].class).includes(classId)) { if (!(studentList[i].phoneNum).includes(phoneNum)) {
continue; continue;
} }
} }
// if (phoneNum != null) {
// if (studentList[i].id != Id) {
// continue;
// }
// }
showStudents.push(studentList[i]) showStudents.push(studentList[i])
} }
@ -61,8 +66,8 @@ const studentController = {
getStudents() { getStudents() {
return localStorageUtils.getAllStudents(); return localStorageUtils.getAllStudents();
}, },
deleteStudents(deleteStudentsId){ deleteStudents(deleteStudentsId) {
for(let i = 0;i<deleteStudentsId.length;i++){ for (let i = 0; i < deleteStudentsId.length; i++) {
localStorageUtils.removeStudent(deleteStudentsId[i]); localStorageUtils.removeStudent(deleteStudentsId[i]);
} }
} }

View File

@ -21,11 +21,20 @@ const studentLsUtils = {
let allStudents = this.getAllStudents(); let allStudents = this.getAllStudents();
let newStudetns = []; let newStudetns = [];
for (let i = 0; i < allStudents.length; i++) { for (let i = 0; i < allStudents.length; i++) {
if(allStudents[i].id!=studetnId){ if (allStudents[i].id != studetnId) {
newStudetns.push(allStudents[i]); newStudetns.push(allStudents[i]);
} }
} }
this.setStudents(newStudetns); this.setStudents(newStudetns);
}, update(student) {
let all = this.getAllStudents();
for (let i = 0; i < all.length; i++) {
if(all[i].id==student.id){
all[i] = student;
}
}
this.setStudents(all);
} }
} }
export default studentLsUtils; export default studentLsUtils;

View File

@ -29,7 +29,7 @@
<span>{{ getGenderName(item.gender) }}</span> <span>{{ getGenderName(item.gender) }}</span>
<span>{{ item.contact }}</span> <span>{{ item.contact }}</span>
<span>{{ item.phoneNum }}</span> <span>{{ item.phoneNum }}</span>
<span><button v-bind:student-id="item.id">修改</button></span> <span><button @click="updateStudent(item)" :student-id="item.id">修改</button></span>
</div> </div>
@ -95,6 +95,8 @@ export default {
console.log(this.deleteStudentsId); console.log(this.deleteStudentsId);
controller.methods.deleteStudents(this.deleteStudentsId) controller.methods.deleteStudents(this.deleteStudentsId)
this.loadPage(); this.loadPage();
},updateStudent(student){
this.$emit("updateStudent",student);
} }
} }

View File

@ -3,7 +3,7 @@
<div id="overlay"> <div id="overlay">
<!-- 添加学生的主要页面 --> <!-- 添加学生的主要页面 -->
<div class="add-student"> <div class="add-student">
<h1 style="font-size: 18px;" id="add-student-head">学生</h1> <h1 style="font-size: 18px;" id="add-student-head">{{ headText }}</h1>
<div id="add-data"> <div id="add-data">
<div id="add-data-left"> <div id="add-data-left">
<div><span style="color: red;">*</span>学生姓名</div> <div><span style="color: red;">*</span>学生姓名</div>
@ -16,8 +16,7 @@
</div> </div>
<div id="add-data-right"> <div id="add-data-right">
<div> <div>
<input v-model="student.name" type="text" id="student-name" name="student-name" <input v-model="student.name" type="text" id="student-name" name="student-name" placeholder="情输入学生姓名">
placeholder="情输入学生姓名">
<span v-show="message.nameMessage" class="message" id="name-message">请输入学生姓名</span> <span v-show="message.nameMessage" class="message" id="name-message">请输入学生姓名</span>
</div> </div>
<div> <div>
@ -118,6 +117,7 @@ export default {
classMessage: false classMessage: false
} }
return { return {
headText: "学生",
classes: [], classes: [],
isUpdate: false, isUpdate: false,
message, message,
@ -126,6 +126,21 @@ export default {
}, },
methods: { methods: {
hideOverlay() { hideOverlay() {
var myStudent = {
name: "",
class: 0,
gender: 0,
birthday: "",
address: "",
contact: "",
phoneNum: "",
password: "123123",
id: "",
isCreateIM: false
}
this.isUpdate = false;
this.headText = "学生";
this.student = myStudent;
this.$emit("hideOverlay"); this.$emit("hideOverlay");
}, },
submitStudent() { submitStudent() {
@ -148,18 +163,18 @@ export default {
} }
let flag = controller.methods.submitStudent(this.student, this.isUpdate); let flag = controller.methods.submitStudent(this.student, this.isUpdate);
this.isUpdate = false;
console.log("提交用户..."); console.log("提交用户...");
console.log(this.student) console.log(this.student)
if(flag){ if (flag) {
location.reload(); location.reload();
} }
// if(flag){ }, updateStudent(student) {
// console.log("..."); console.log("修改用户");
// alert("!"); console.log(student);
// }else{ this.headText = "修改学生";
// console.error("..."); this.student = student;
// alert("!"); this.isUpdate = true;
// }
} }
}, },
mounted() { mounted() {

View File

@ -3,9 +3,9 @@
<Top @deleteStudent="deleteStudent()" @showOverlay="showOverlay()"></Top> <Top @deleteStudent="deleteStudent()" @showOverlay="showOverlay()"></Top>
<div class="main-main"> <div class="main-main">
<Drawer></Drawer> <Drawer></Drawer>
<Main ref="mainComponent"></Main> <Main @updateStudent="updateStudent" ref="mainComponent"></Main>
</div> </div>
<Overlay @hideOverlay="hideOverlay()" v-if="isOverlay"></Overlay> <Overlay @hideOverlay="hideOverlay()" ref="overlayComponent" v-show="isOverlay"></Overlay>
</div> </div>
</template> </template>
@ -24,20 +24,23 @@ export default {
Top, Drawer, Overlay, Main Top, Drawer, Overlay, Main
}, },
data() { data() {
return{ return {
isOverlay:false isOverlay: false
} }
}, },
methods:{ methods: {
showOverlay(){ showOverlay() {
this.isOverlay = true; this.isOverlay = true;
}, },
hideOverlay(){ hideOverlay() {
this.isOverlay = false; this.isOverlay = false;
},deleteStudent(){ }, deleteStudent() {
if (this.$refs.mainComponent && this.$refs.mainComponent.deleteStudent()) { if (this.$refs.mainComponent && this.$refs.mainComponent.deleteStudent()) {
this.$refs.mainComponent.deleteStudent(); this.$refs.mainComponent.deleteStudent();
} }
}, updateStudent(student) {
this.showOverlay();
this.$refs.overlayComponent.updateStudent(student);
} }
} }
} }