|  |  | 
 |  |  |         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, | 
 
 |  |  | 
 |  |  |         ], | 
 |  |  |         newPassword: [ | 
 |  |  |           { required: true, message: "新密码不能为空", trigger: "blur" }, | 
 |  |  |           { min: 6, max: 20, message: "长度在 6 到 20 个字符", trigger: "blur" }, | 
 |  |  |           { pattern: /^[^<>"'|\\]+$/, message: "不能包含非法字符:< > \" ' \\\ |", trigger: "blur" } | 
 |  |  |           { min: 8, max: 20, message: "长度在 8 到 20 个字符", trigger: "blur" }, | 
 |  |  |           { pattern: /^[^<>"'|\\]+$/, message: "不能包含非法字符:< > \" ' \\\\ |", 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" | 
 |  |  |           } | 
 |  |  |         ], | 
 |  |  |         confirmPassword: [ | 
 |  |  |           { required: true, message: "确认密码不能为空", trigger: "blur" }, |