From aed4c4e0513ac51226e690606ff3797f5355a750 Mon Sep 17 00:00:00 2001
From: luohairen <3399054449@qq.com>
Date: 星期三, 30 十月 2024 21:56:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/views/class-management/ClassStaff.vue |   73 +++++++++++++++++++++---------------
 1 files changed, 43 insertions(+), 30 deletions(-)

diff --git a/src/views/class-management/ClassStaff.vue b/src/views/class-management/ClassStaff.vue
index 92f1cfa..53ae6fc 100644
--- a/src/views/class-management/ClassStaff.vue
+++ b/src/views/class-management/ClassStaff.vue
@@ -85,16 +85,16 @@
       :before-close="handleAddClose"
       :close-on-click-modal="false">
       <el-form :model="studentForm" :rules="studentRules" ref="studentForm" label-width="100px" class="demo-ruleForm">
-        <el-form-item label="鐪熷疄濮撳悕锛�" prop="realName" required>
+        <el-form-item label="鐪熷疄濮撳悕锛�" prop="realName">
         <el-input v-model="studentForm.realName"></el-input>
       </el-form-item>
-      <el-form-item label="鎵嬫満鍙风爜锛�" prop="phone" required>
+      <el-form-item label="鎵嬫満鍙风爜锛�" prop="phone">
         <el-input v-model="studentForm.phone"></el-input>
       </el-form-item>
-      <el-form-item label="鐧诲綍璐﹀彿锛�" prop="userName" required>
+      <el-form-item label="鐧诲綍璐﹀彿锛�" prop="userName">
         <el-input v-model="studentForm.userName" autocomplete="off"></el-input>
       </el-form-item>
-      <el-form-item v-if="!studentForm.id" label="鐧诲綍瀵嗙爜锛�" prop="password" required>
+      <el-form-item v-if="!studentForm.id" label="鐧诲綍瀵嗙爜锛�" prop="password">
         <el-input v-model="studentForm.password" show-password autocomplete="off"></el-input>
       </el-form-item>
       <el-form-item label="骞撮緞锛�">
@@ -109,7 +109,7 @@
         <el-date-picker v-model="studentForm.birthDay" type="date" value-format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡"/>
       </el-form-item>
 
-      <el-form-item label="鐘舵�侊細" required>
+      <el-form-item label="鐘舵�侊細">
         <el-select v-model="studentForm.status" placeholder="鐘舵��">
           <el-option v-for="item in statusEnum" :key="item.key" :value="item.key" :label="item.value"></el-option>
         </el-select>
@@ -163,6 +163,30 @@
 export default {
   components: { Pagination },
   data () {
+    var validatePassword = (rule, value, callback) => {
+      if (value === '') {
+        callback(new Error('璇疯緭鍏ョ櫥褰曞瘑鐮�'))
+      } else if (!/[A-Z]/.test(value)) {
+        callback(new Error('瀵嗙爜蹇呴』鍖呭惈鑷冲皯涓�涓ぇ鍐欏瓧姣�'))
+      } else if (!/[a-z]/.test(value)) {
+        callback(new Error('瀵嗙爜蹇呴』鍖呭惈鑷冲皯涓�涓皬鍐欏瓧姣�'))
+      } else if (!/[0-9]/.test(value)) {
+        callback(new Error('瀵嗙爜蹇呴』鍖呭惈鑷冲皯涓�涓暟瀛�'))
+      } else {
+        callback()
+      }
+    }
+    var validatePhone = (rule, value, callback) => {
+      // 鎵嬫満鍙烽獙璇侀�昏緫
+      const phoneRegex = /^1[3-9]\d{9}$/;
+      if (!value) {
+        callback(new Error('璇疯緭鍏ユ墜鏈哄彿'));
+      } else if (!phoneRegex.test(value)) {
+        callback(new Error('鎵嬫満鍙锋牸寮忎笉姝g‘'));
+      } else {
+        callback();
+      }
+    }
     return {
       studentForm: {
         id: null,
@@ -175,17 +199,17 @@
         password: ''
       },
       studentRules: {
-        realName: [
-          { required: true, message: '璇峰~鍐欏鍛樺鍚�', trigger: 'blur' }
+        userName: [
+          { required: true, message: '璇疯緭鍏ョ櫥褰曡处鍙�', trigger: 'blur' }
         ],
-        sex: [
-          { required: true, message: '璇烽�夋嫨瀛﹀憳鎬у埆', trigger: 'change' }
+        realName: [
+          { required: true, message: '璇疯緭鍏ョ湡瀹炲鍚�', trigger: 'blur' }
+        ],
+        password: [
+          { validator: validatePassword, trigger: 'blur' }
         ],
         phone: [
-          { required: true, message: '璇峰~鍐欏鍛樼數璇�', trigger: 'blur' }
-        ],
-        userName: [
-          { required: true, message: '璇峰~鍐欏鍛樼櫥褰曡处鍙�', trigger: 'blur' }
+          { validator: validatePhone, trigger: 'blur' }
         ]
       },
       studentTitle: '鏂板瀛﹀憳',
@@ -238,23 +262,12 @@
         console.log(this.studentForm)
         if (valid) {
           this.studentForm.classesId = this.classes.id
-          if (this.studentForm.id) {
-            editClassesUser(this.studentForm).then(res => {
-              this.addOpen = false
-              this.$message.success(res.data.message)
-              this.page()
-              this.resetStudentForm()
-            })
-            window.location.reload()
-          } else {
-            addClassesUser(this.studentForm).then(res => {
-              this.addOpen = false
-              this.$message.success(res.data.message)
-              this.page()
-              this.resetStudentForm()
-            })
-            window.location.reload()
-          }
+          addClassesUser(this.studentForm).then(res => {
+            this.addOpen = false
+            this.$message.success(res.data.message)
+            this.page()
+            this.resetStudentForm()
+          })
         }
       })
     },

--
Gitblit v1.8.0