diff --git a/src/views/basicData/jobTransferManagement.vue b/src/views/basicData/jobTransferManagement.vue index d02dc50..51315c6 100644 --- a/src/views/basicData/jobTransferManagement.vue +++ b/src/views/basicData/jobTransferManagement.vue @@ -398,45 +398,45 @@ export default { message: '请输入身份证号码', trigger: 'blur', }, - { - pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, - message: '请输入正确的身份证号码格式', - trigger: 'blur', - validator: (rule, value, callback) => { - if (!value) { - return callback(new Error('请输入身份证号码')); - } - // 15位身份证验证 - if (value.length === 15) { - const pattern = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/; - if (!pattern.test(value)) { - return callback(new Error('请输入有效的15位身份证号码')); - } - } - // 18位身份证验证 - else if (value.length === 18) { - const pattern = - /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/; - if (!pattern.test(value)) { - return callback(new Error('请输入有效的18位身份证号码')); - } - // 校验码验证 - const weights = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; - const codes = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2']; - let sum = 0; - for (let i = 0; i < 17; i++) { - sum += parseInt(value.charAt(i)) * weights[i]; - } - const lastCode = codes[sum % 11]; - if (value.toUpperCase().charAt(17) !== lastCode) { - return callback(new Error('身份证号码校验码不正确,请核对')); - } - } else { - return callback(new Error('身份证号码长度不正确,应为15位或18位')); - } - callback(); - }, - }, + // { + // pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, + // message: '请输入正确的身份证号码格式', + // trigger: 'blur', + // validator: (rule, value, callback) => { + // if (!value) { + // return callback(new Error('请输入身份证号码')); + // } + // // 15位身份证验证 + // if (value.length === 15) { + // const pattern = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/; + // if (!pattern.test(value)) { + // return callback(new Error('请输入有效的15位身份证号码')); + // } + // } + // // 18位身份证验证 + // else if (value.length === 18) { + // const pattern = + // /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/; + // if (!pattern.test(value)) { + // return callback(new Error('请输入有效的18位身份证号码')); + // } + // // 校验码验证 + // const weights = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; + // const codes = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2']; + // let sum = 0; + // for (let i = 0; i < 17; i++) { + // sum += parseInt(value.charAt(i)) * weights[i]; + // } + // const lastCode = codes[sum % 11]; + // if (value.toUpperCase().charAt(17) !== lastCode) { + // return callback(new Error('身份证号码校验码不正确,请核对')); + // } + // } else { + // return callback(new Error('身份证号码长度不正确,应为15位或18位')); + // } + // callback(); + // }, + // }, ], }, {