gaoluyang
6 天以前 044d8f67cc414187c353b620ce8ad014fcfe44f4
src/views/system/user/index.vue
@@ -387,9 +387,35 @@
        roleIds: [
          { required: true, message: "请选择角色", trigger: "change" }
        ],
        // password: [
        //   { required: true, message: "密码不能为空", trigger: "blur" },
        // ],
        password: [
          { required: true, message: "密码不能为空", trigger: "blur" },
          { min: 8, max: 20, message: "密码长度必须在8-20个字符之间", trigger: "blur" },
          {
            validator: (rule, value, callback) => {
              if (!value) {
                callback();
                return;
              }
              // 检查是否包含大写字母
              const hasUpperCase = /[A-Z]/.test(value);
              // 检查是否包含小写字母
              const hasLowerCase = /[a-z]/.test(value);
              // 检查是否包含特殊符号
              const hasSpecialChar = /[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]/.test(value);
              if (!hasUpperCase) {
                callback(new Error('密码必须包含至少一个大写字母'));
              } else if (!hasLowerCase) {
                callback(new Error('密码必须包含至少一个小写字母'));
              } else if (!hasSpecialChar) {
                callback(new Error('密码必须包含至少一个特殊符号'));
              } else {
                callback();
              }
            },
            trigger: "blur"
          }
        ],
        phonenumber: [
          {
            required: true,