From e950c38ba82e5e6bc8b0c50c35e5dbb6a180165a Mon Sep 17 00:00:00 2001
From: 13404089107 <puwei@sinata.cn>
Date: 星期二, 20 五月 2025 16:43:06 +0800
Subject: [PATCH] Merge branch 'main' of http://120.76.84.145:10101/gitblit/r/H5/leshan-laboratory

---
 culture/src/views/system/user/components/add-edit.vue |   44 +++++++++++++++++++++++++++++++-------------
 1 files changed, 31 insertions(+), 13 deletions(-)

diff --git a/culture/src/views/system/user/components/add-edit.vue b/culture/src/views/system/user/components/add-edit.vue
index d9d53a2..eb57919 100644
--- a/culture/src/views/system/user/components/add-edit.vue
+++ b/culture/src/views/system/user/components/add-edit.vue
@@ -20,7 +20,7 @@
               :value="item.roleId"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="登录状态" prop="status">
+        <el-form-item label="启动状态" prop="status">
           <el-switch v-model="form.status"></el-switch>
         </el-form-item>
         <el-form-item label="备注" prop="remark">
@@ -56,33 +56,51 @@
     },
   },
   data() {
+    var validatePhone = (rule, value, callback) => {
+      if (!value) {
+        // The 'required' rule will handle empty value, so we can make this optional here
+        // or keep it for a more specific message if needed.
+        // For now, let's assume 'required' handles the empty case.
+        callback();
+        return;
+      }
+      const phoneRegex = new RegExp(/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/,'g'); // Regex for 11-digit Chinese mobile numbers
+      if (!phoneRegex.test(value)) {
+        callback(new Error('请输入有效的11位手机号码'));
+      } else {
+        callback();
+      }
+    };
     return {
       form: { status: true },
       userDeptId: '',
       rules: {
         nickName: [{ required: true, message: '请输入姓名', trigger: 'blur' }],
-        phonenumber: [{ required: true, message: '请输入联系电话', trigger: 'blur' }],
-        roleId: [{ required: true, message: '请选择角色', trigger: 'blur' }],
+        phonenumber: [
+          { required: true, message: '请输入联系电话', trigger: 'blur' },
+          { validator: validatePhone, trigger: 'blur' }
+        ],
+        roleId: [{ required: true, message: '请选择角色', trigger: 'change' }],
         userName: [{ required: true, message: '请输入登陆账号', trigger: 'blur' }],
         status: [{ required: true, message: '请选择启动状态', trigger: 'blur' }],
       },
     }
   },
   created() {
-    this.form = { status: true }
-
-    if (Object.keys(this.row).length) {
+    if (this.row && this.row.userId) {
       this.form = {
-        userId: this.row.userId,
-        nickName: this.row.nickName,
-        phonenumber: this.row.phonenumber,
-        roleId: this.row.roleId,
-        userName: this.row.userName,
-        remark: this.row.remark,
+        ...this.row,
         status: this.row.status == 0 ? true : false,
       }
     } else {
-      this.form = {}
+      this.form = {
+        nickName: '',
+        phonenumber: '',
+        userName: '',
+        roleId: '',
+        status: true,
+        remark: '',
+      }
     }
   },
   mounted() { },

--
Gitblit v1.7.1