Kaynağa Gözat

Merge branch 'iteration-work' into jenkins

lex 1 yıl önce
ebeveyn
işleme
1df9b4b474

+ 1 - 1
public/version.json

@@ -1 +1 @@
-{"version":1709812886948}
+{ "version": 1709812886948 }

+ 5 - 5
src/components/layout/modals/update-password.tsx

@@ -44,18 +44,18 @@ export default defineComponent({
         callback(new Error('请再次输入新密码'));
       } else if (value !== forms.password) {
         callback(new Error('两次输入密码不一致'));
-      } else if (!reg.test(value)) {
-        callback(new Error('密码为6-20位数字和字母组合'));
+      } else if (value.length < 8 || value.length > 20) {
+        callback(new Error('8~20位含数字、字母、特殊字符(如:%、&、#等)组合'));
       } else {
         callback();
       }
     };
     const validatePass = (rule: any, value: any, callback: any): any => {
-      const reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/;
+      // const reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/;
       if (value === '' || !value) {
         callback(new Error('请输入新密码'));
-      } else if (!reg.test(value)) {
-        callback(new Error('密码为6-20位数字和字母组合'));
+      } else if (value.length < 8 || value.length > 20) {
+        callback(new Error('8~20位含数字、字母、特殊字符(如:%、&、#等)组合'));
       } else {
         callback();
       }

+ 18 - 7
src/views/login/components/forgotPassword.tsx

@@ -59,13 +59,25 @@ export default defineComponent({
     const codeName = '发送短信';
 
     const validatePass2 = (rule: any, value: any, callback: any) => {
-      const reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/;
+      // const reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/;
       if (value === '') {
         callback(new Error('请再次输入密码'));
       } else if (value !== formInline.password) {
         callback(new Error('两次输入密码不一致!'));
-      } else if (!reg.test(value)) {
-        callback(new Error('密码为6-20位数字和字母组合'));
+      } else if (value.length < 8 || value.length > 20) {
+        // callback(new Error('密码为6-20位数字和字母组合'));
+        callback(new Error('8~20位含数字、字母、特殊字符(如:%、&、#等)组合'));
+      } else {
+        callback();
+      }
+    };
+    const validatePass = (rule: any, value: any, callback: any) => {
+      // const reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/;
+      if (value === '') {
+        callback(new Error('请输入密码'));
+      } else if (value.length < 8 || value.length > 20) {
+        // callback(new Error('密码为6-20位数字和字母组合'));
+        callback(new Error('8~20位包数字、字母、特殊字符(如:%、&、#等)组合'));
       } else {
         callback();
       }
@@ -164,10 +176,9 @@ export default defineComponent({
             path="password"
             rule={[
               {
-                required: true,
-                pattern: /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/,
-                message: '密码为6-20位数字和字母组合',
-                trigger: 'blur'
+                validator: validatePass as any,
+                trigger: 'blur',
+                required: true
               }
             ]}>
             <NInput

+ 14 - 8
src/views/setting/modal/forgotPassword.tsx

@@ -116,6 +116,17 @@ export default defineComponent({
         }
       }, 1000);
     };
+
+    const validatePass = (rule: any, value: any, callback: any): any => {
+      // const reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/;
+      if (value === '' || !value) {
+        callback(new Error('请输入新密码'));
+      } else if (value.length < 8 || value.length > 20) {
+        callback(new Error('8~20位含数字、字母、特殊字符(如:%、&、#等)组合'));
+      } else {
+        callback();
+      }
+    };
     return () => (
       <>
         <div class={styles.wrap}>
@@ -179,14 +190,9 @@ export default defineComponent({
               path="password"
               rule={[
                 {
-                  required: true,
-                  message: '请输入密码',
-                  trigger: 'blur'
-                },
-                {
-                  pattern: /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/,
-                  message: '密码为6-20位数字和字母组合',
-                  trigger: 'blur'
+                  validator: validatePass,
+                  trigger: 'blur',
+                  required: true
                 }
               ]}>
               <NInput