From 3e9d3a8deef26bf15ca14438a014d47462d4da98 Mon Sep 17 00:00:00 2001 From: ZhangEnJing <2868849437@qq.com> Date: Thu, 5 Dec 2024 13:56:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9D=A1=E4=BB=B6=E7=AD=9B?= =?UTF-8?q?=E9=80=89=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/controller/student/add-student.js | 187 -------------- src/controller/student/index.js | 6 +- src/controller/student/st.js | 251 ------------------- src/utils/student.js | 0 src/views/student/components/item-drawer.vue | 25 +- src/views/student/components/item-main.vue | 14 +- src/views/student/components/item-top.vue | 20 +- src/views/student/index.vue | 13 +- 8 files changed, 55 insertions(+), 461 deletions(-) delete mode 100644 src/controller/student/add-student.js delete mode 100644 src/controller/student/st.js delete mode 100644 src/utils/student.js diff --git a/src/controller/student/add-student.js b/src/controller/student/add-student.js deleted file mode 100644 index 2c5a41f..0000000 --- a/src/controller/student/add-student.js +++ /dev/null @@ -1,187 +0,0 @@ -let studentNameInput = document.getElementById("student-name"); -let studentClassIdInput = document.getElementById("class-name"); -let studentGenderInputs = document.getElementsByName("gender"); -let studentBirthdayInput = document.getElementById("birthday"); -let studentAddressInput = document.getElementById("address"); -let studentContactInput = document.getElementById("contact"); -let studentPhoneNumInput = document.getElementById("phone-num") -let studentImInput = document.getElementById("create-im"); - -function showAddPage() { - var overlay = document.getElementById("overlay"); - overlay.style.display = "block" -} -function hideAddPage() { - - let addHead = document.getElementById("add-student-head"); - addHead.innerText = "学生"; - - let studentHiddentIdInput = document.getElementById("hiddenId"); - studentHiddentIdInput.setAttribute("value", ""); - - studentNameInput.value = ""; - studentClassIdInput.value = 0; - studentGenderInputs[0].checked = true; - studentBirthdayInput.value = ""; - studentAddressInput.value = ""; - studentContactInput.value = ""; - studentPhoneNumInput.value = ""; - studentImInput.checked = false; - var overlay = document.getElementById("overlay"); - overlay.style.display = "none" -} - -window.onload = grade.forEach(addStudentPageGetGradeList); - - -function addStudentPageGetGradeList(item, index) { - let classes = item.classes; - classes.forEach(addStudentGetClassList); -} - -function addStudentGetClassList(item, index) { - let classItem = document.createElement("option"); - classItem.setAttribute("value", item.id) - classItem.innerHTML = item.name; - - let selectBox = document.getElementById("class-name"); - selectBox.appendChild(classItem); -} - -function addStudent() { - - let verifyFlag = 0; - // 非空验证,如果有问题提示 - let messageBox; - messageBox = document.getElementById("name-message"); - if (studentNameInput.value == "") { - messageBox.innerText = "学生姓名不能为空!"; - verifyFlag = 1; - } else { - messageBox.innerText = ""; - } - - messageBox = document.getElementById("class-message"); - if (studentClassIdInput.value == 0) { - messageBox.innerText = "请选择学生的班级!"; - verifyFlag = 1; - } else { - messageBox.innerText = ""; - } - - //如果有问题不执行后续操作 - if (verifyFlag == 1) { - return false; - } - - let studentData = { - name: "", - classId: 0, - gender: 0, - birthday: "", - address: "", - contact: "", - phoneNum: "", - password: "123123", - id: "", - isCreateIM: false - }; - - //向对象中填充有意义的数据 - studentData.name = document.getElementById("student-name").value; - studentData.classId = document.getElementById("class-name").value; - - //临时genders数组接受所有gender元素 - let genders = document.getElementsByName("gender"); - //循环判断哪一个元素被选中了 - for (var i = 0; i < genders.length; i++) { - if (genders[i].checked) { - studentData.gender = genders[i].value; - } - } - - // 出生日期 yyyy-mm-dd - studentData.birthday = document.getElementById("birthday").value; - studentData.address = document.getElementById("address").value; - studentData.contact = document.getElementById("contact").value; - studentData.phoneNum = document.getElementById("phone-num").value; - studentData.isCreateIM = document.getElementById("create-im").checked; - - - let studentHiddenId = document.getElementById("hiddenId").value; - let localStudentList = JSON.parse(localStorage.getItem("studentCollect")); - - if (studentHiddenId == null || studentHiddenId == "") { - // 新建学生 - // 生成一个实时id - const options = { month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit', hour12: false }; - let studentId = new Intl.DateTimeFormat('zh-CN', options).format(new Date()).replace(/[^0-9]/g, ''); - studentData.id = studentId; - - console.log("set student data"); - console.log(studentData); - console.log(localStudentList); - - if (localStudentList == null) { - localStudentList = [studentData] - } else { - localStudentList.push(studentData) - } - - localStorage.setItem("studentCollect", JSON.stringify(localStudentList)); - console.log(localStudentList); - - alert("添加成功!"); - } else { - // 修改学生信息 - studentData.id = studentHiddenId; - for(let i = 0;i" - menuBox.appendChild(menuTitle) - - // console.log(item); - // console.log(item.classes); - - let classes = item.classes; - classes.forEach(getClassList); - - let menuList = document.getElementById("main-left-list"); - menuList.appendChild(menuBox); -} - -function getClassList(item, index) { - let menuItem = document.createElement("div"); - menuItem.setAttribute("class", "menu-item"); - menuItem.setAttribute("class-id", item.id); - menuItem.setAttribute("onclick", "reloadByClassId(this.getAttribute('class-id'))"); - menuItem.innerHTML = item.name; - - let urlClassId = getQueryString("classid") - if (urlClassId == item.id) { - menuItem.setAttribute("style", "background-color: rgb(240, 240, 240);") - } - - menuBox.appendChild(menuItem) -} -//获取请求头参数 name:参数名称 -function getQueryString(name) { - let url = new URL(window.location.href); - return url.searchParams.get(name); - // var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); - // var r = window.location.search.substr(1).match(reg); - // if (r != null) return unescape(r[2]); - // return null; -} -function selectAll() { - let url = new URL(window.location.href); - url.searchParams.delete("classid"); - url.searchParams.delete("name"); - url.searchParams.delete("phone"); - location.href = url.toString(); -} -function reloadBySearch() { - let url = new URL(window.location.href); - let name = document.getElementById("search-name").value; - let phone = document.getElementById("search-phone").value; - if (name != "" && name != null) { - url.searchParams.set("name", name) - } else { - url.searchParams.delete("name"); - } - - if (phone != "" && phone != null) { - url.searchParams.set("phone", phone) - } else { - url.searchParams.delete("phone"); - } - - location.href = url.toString(); -} -//点击班级触发此事件,将班级id添加到请求头 -function reloadByClassId(classId) { - - - let url = new URL(window.location.href); - if (classId != "" && classId != null) { - url.searchParams.set("classid", classId) - } else { - url.searchParams.delete("classid"); - } - location.href = url.toString(); - - // var href = window.location.href; - - // // 使用indexOf找到问号的位置 - // var questionMarkIndex = href.indexOf('?'); - - // var queryString = href; - // // 如果找到了问号,则提取问号及其后面的部分 - // if (questionMarkIndex !== -1) { - // queryString = href.substring(0, questionMarkIndex); - // console.log(queryString); - // } - // location.href = queryString + (classId == "" ? "" : "?classid=" + classId); - -} - -//启动时初始化学生列表 -window.onload = JSON.parse(localStorage.getItem("studentCollect")).forEach(onloadStudentList); -//填充学生列表 -function onloadStudentList(item, index) { - //根据请求头信息判断显示哪些学生 - if (getQueryString("classid") != "" && getQueryString("classid") != null) { - if (item.classId != getQueryString("classid")) { - return false; - } - } - if (getQueryString("name") != "" && getQueryString("name") != null) { - if (!(item.name).includes(getQueryString("name"))) { - return false; - } - } - if (getQueryString("phone") != "" && getQueryString("phone") != null) { - if (!(item.phoneNum).includes(getQueryString("phone"))) { - return false; - } - } - - let studentItem = document.createElement("div"); - studentItem.setAttribute("class", "student-item") - - let labelStr = "" - studentItem.innerHTML = labelStr; - - let classNameSpan = document.createElement("span"); - let classNameStr = ""; - for (let i = 0; i < grade.length; i++) { - let tempClasses = grade[i].classes; - for (let j = 0; j < tempClasses.length; j++) { - if (tempClasses[j].id == item.classId) { - classNameStr = tempClasses[j].name; - break; - } - } - } - classNameSpan.innerText = classNameStr; - studentItem.appendChild(classNameSpan); - - let nameSpan = document.createElement("span"); - nameSpan.innerText = item.name; - studentItem.appendChild(nameSpan); - - let idSpan = document.createElement("span"); - idSpan.innerText = item.id; - studentItem.appendChild(idSpan); - - let genderSpan = document.createElement("span"); - let genderStr = "空缺"; - if (item.gender == '1') { - genderStr = "男生"; - } - if (item.gender == '2') { - genderStr = "女生"; - } - genderSpan.innerText = genderStr; - studentItem.appendChild(genderSpan); - - let contactSpan = document.createElement("span"); - contactSpan.innerText = item.contact; - studentItem.appendChild(contactSpan); - - let phoneNumSpan = document.createElement("span"); - phoneNumSpan.innerText = item.phoneNum; - studentItem.appendChild(phoneNumSpan); - - - let changeSpan = document.createElement("span"); - - let changeBtn = document.createElement("button"); - changeBtn.setAttribute("student-id", item.id) - changeBtn.setAttribute("onclick", "changeStudentPage(this.getAttribute('student-id'))") - changeBtn.innerText = "修改" - changeSpan.appendChild(changeBtn); - studentItem.appendChild(changeSpan); - - let fatherBox = document.getElementById("main-div-bottom"); - fatherBox.appendChild(studentItem); - -} -//删除选中学生 -function deleteStudent() { - //获取被选中的学生的ID - let studentIdArr = []; - let checkBoxArr = document.getElementsByClassName("student-checkbox"); - for (let i = 0; i < checkBoxArr.length; i++) { - if (checkBoxArr[i].checked) { - studentIdArr.push(checkBoxArr[i].id); - } - } - - let studentArr = JSON.parse(localStorage.getItem("studentCollect")); - let newStudentArr = []; - for (let i = 0; i < studentArr.length; i++) { - let studentItem = studentArr[i]; - let shouldKeep = true; - for (let j = 0; j < studentIdArr.length; j++) { - if (studentIdArr[j] == studentItem.id) { - shouldKeep = false; - break; - } - } - if (shouldKeep) { - newStudentArr.push(studentItem); - } - } - - localStorage.setItem("studentCollect", JSON.stringify(newStudentArr)); - location.reload(); -} \ No newline at end of file diff --git a/src/utils/student.js b/src/utils/student.js deleted file mode 100644 index e69de29..0000000 diff --git a/src/views/student/components/item-drawer.vue b/src/views/student/components/item-drawer.vue index 792ab22..f8267fd 100644 --- a/src/views/student/components/item-drawer.vue +++ b/src/views/student/components/item-drawer.vue @@ -5,17 +5,18 @@