Commit e9cc81da by zhaoxiqing

gsb

parent 54355573
...@@ -96,6 +96,7 @@ class DKcontractApi { ...@@ -96,6 +96,7 @@ class DKcontractApi {
return this.returnjson(1001001, "签名错误"); return this.returnjson(1001001, "签名错误");
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.dkcontractSve.autoSign(param); var result = await this.dkcontractSve.autoSign(param);
return result; return result;
} catch (error) { } catch (error) {
......
...@@ -171,6 +171,11 @@ class EcontractApi { ...@@ -171,6 +171,11 @@ class EcontractApi {
}; };
} }
for(var idcard in idCardList){
idcard = idcard.toUpperCase();
}
try { try {
var signedList = await this.econtractSve.fiterSignedCards(ecompany.id, idCardList); var signedList = await this.econtractSve.fiterSignedCards(ecompany.id, idCardList);
var unSignList = []; var unSignList = [];
...@@ -243,7 +248,7 @@ class EcontractApi { ...@@ -243,7 +248,7 @@ class EcontractApi {
// 验证合法性 // 验证合法性
var appId = obj.appId; var appId = obj.appId;
var nonceStr = obj.nonceStr; var nonceStr = obj.nonceStr;
var idNo = obj.idNo; var idNo = obj.idNo.toUpperCase();
var startId = obj.startId || 0; var startId = obj.startId || 0;
var userId = obj.userId || ""; var userId = obj.userId || "";
var userCode = obj.userCode || ""; var userCode = obj.userCode || "";
...@@ -351,7 +356,7 @@ class EcontractApi { ...@@ -351,7 +356,7 @@ class EcontractApi {
var params = { var params = {
ecompanyId: busi.ecompany_id, ecompanyId: busi.ecompany_id,
startId: startId, startId: startId,
idNo: idNo, idNo: idNo.toUpperCase(),
pageSize: pageSize, pageSize: pageSize,
userId3rd: userId, userId3rd: userId,
}; };
...@@ -427,7 +432,7 @@ class EcontractApi { ...@@ -427,7 +432,7 @@ class EcontractApi {
} }
var params = { var params = {
etemplate_id: ecId, etemplate_id: ecId,
idNo: idNo, idNo: idNo.toUpperCase(),
}; };
try { try {
...@@ -532,14 +537,14 @@ class EcontractApi { ...@@ -532,14 +537,14 @@ class EcontractApi {
async bankthreeItem(item) { async bankthreeItem(item) {
var bankthreelog2 = { var bankthreelog2 = {
idName: item.idName, idName: item.idName,
idNo: item.idNo, idNo: item.idNo.toUpperCase(),
bankno: item.bankno, bankno: item.bankno,
pass: false, pass: false,
} }
try { try {
var bankthreeParams = { var bankthreeParams = {
name: item.idName, //姓名 必填 name: item.idName, //姓名 必填
idno: item.idNo, //身份证 必填 idno: item.idNo.toUpperCase(), //身份证 必填
cardno: item.bankno //银行卡 必填 cardno: item.bankno //银行卡 必填
}; };
...@@ -579,7 +584,7 @@ class EcontractApi { ...@@ -579,7 +584,7 @@ class EcontractApi {
var btl = await this.bankthreelogSve.create({ var btl = await this.bankthreelogSve.create({
appId: appId, appId: appId,
userName: userName, userName: userName,
userIdNo: userIdNo, userIdNo: userIdNo.toUpperCase(),
userBankNo: userBankNo, userBankNo: userBankNo,
nonceStr: nonceStr, nonceStr: nonceStr,
sign: sign, sign: sign,
...@@ -617,7 +622,7 @@ class EcontractApi { ...@@ -617,7 +622,7 @@ class EcontractApi {
// var list = await this.econtractSve.findSinedByThree(userName, userIdNo, userBankNo); // var list = await this.econtractSve.findSinedByThree(userName, userIdNo, userBankNo);
let exists = await this.bankthreelogSve.findOne({ let exists = await this.bankthreelogSve.findOne({
userName: userName, userName: userName,
userIdNo: userIdNo, userIdNo: userIdNo.toUpperCase(),
userBankNo: userBankNo, userBankNo: userBankNo,
result: 1, result: 1,
}); });
...@@ -632,7 +637,7 @@ class EcontractApi { ...@@ -632,7 +637,7 @@ class EcontractApi {
var bankthreeParams = { var bankthreeParams = {
name: userName, //姓名 必填 name: userName, //姓名 必填
idno: userIdNo, //身份证 必填 idno: userIdNo.toUpperCase(), //身份证 必填
cardno: userBankNo //银行卡 必填 cardno: userBankNo //银行卡 必填
}; };
...@@ -683,7 +688,7 @@ class EcontractApi { ...@@ -683,7 +688,7 @@ class EcontractApi {
let exists = await this.bankthreelogSve.findOne({ let exists = await this.bankthreelogSve.findOne({
userName: userName, userName: userName,
userIdNo: userIdNo, userIdNo: userIdNo.toUpperCase(),
userBankNo: userBankNo, userBankNo: userBankNo,
userMobile: userMobile, userMobile: userMobile,
result: 1, result: 1,
...@@ -692,7 +697,7 @@ class EcontractApi { ...@@ -692,7 +697,7 @@ class EcontractApi {
var btl = await this.bankthreelogSve.create({ var btl = await this.bankthreelogSve.create({
appId: appId, appId: appId,
userName: userName, userName: userName,
userIdNo: userIdNo, userIdNo: userIdNo.toUpperCase(),
userBankNo: userBankNo, userBankNo: userBankNo,
userMobile: userMobile, userMobile: userMobile,
nonceStr: nonceStr, nonceStr: nonceStr,
...@@ -729,7 +734,7 @@ class EcontractApi { ...@@ -729,7 +734,7 @@ class EcontractApi {
var bankParams = { var bankParams = {
name: userName, //姓名 必填 name: userName, //姓名 必填
idno: userIdNo, //身份证 必填 idno: userIdNo.toUpperCase(), //身份证 必填
cardno: userBankNo, //银行卡 必填 cardno: userBankNo, //银行卡 必填
mobile: userMobile, mobile: userMobile,
}; };
...@@ -791,7 +796,7 @@ class EcontractApi { ...@@ -791,7 +796,7 @@ class EcontractApi {
var btl = await this.bankthreelogSve.create({ var btl = await this.bankthreelogSve.create({
appId: appId, appId: appId,
userName: userName, userName: userName,
userIdNo: userIdNo, userIdNo: userIdNo.toUpperCase(),
userBankNo: userBankNo, userBankNo: userBankNo,
userMobile: userMobile, userMobile: userMobile,
nonceStr: nonceStr, nonceStr: nonceStr,
...@@ -828,7 +833,7 @@ class EcontractApi { ...@@ -828,7 +833,7 @@ class EcontractApi {
var bankParams = { var bankParams = {
name: userName, //姓名 必填 name: userName, //姓名 必填
idno: userIdNo, //身份证 必填 idno: userIdNo.toUpperCase(), //身份证 必填
cardno: userBankNo, //银行卡 必填 cardno: userBankNo, //银行卡 必填
mobile: userMobile, mobile: userMobile,
}; };
...@@ -964,6 +969,7 @@ class EcontractApi { ...@@ -964,6 +969,7 @@ class EcontractApi {
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.econtractSve.autoSign(param); var result = await this.econtractSve.autoSign(param);
return result; return result;
} catch (error) { } catch (error) {
...@@ -1064,6 +1070,7 @@ class EcontractApi { ...@@ -1064,6 +1070,7 @@ class EcontractApi {
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.econtractSve.autoSign4(param); var result = await this.econtractSve.autoSign4(param);
return result; return result;
} catch (error) { } catch (error) {
...@@ -1160,6 +1167,7 @@ class EcontractApi { ...@@ -1160,6 +1167,7 @@ class EcontractApi {
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.econtractSve.autoSigns(param); var result = await this.econtractSve.autoSigns(param);
return result; return result;
} catch (error) { } catch (error) {
...@@ -1229,6 +1237,7 @@ class EcontractApi { ...@@ -1229,6 +1237,7 @@ class EcontractApi {
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.econtractSve.autoSignTest(param); var result = await this.econtractSve.autoSignTest(param);
return result; return result;
} catch (error) { } catch (error) {
...@@ -1318,6 +1327,7 @@ class EcontractApi { ...@@ -1318,6 +1327,7 @@ class EcontractApi {
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.econtractSve.autoSignPersonalTwo(param); var result = await this.econtractSve.autoSignPersonalTwo(param);
return result; return result;
} catch (error) { } catch (error) {
...@@ -1390,7 +1400,7 @@ class EcontractApi { ...@@ -1390,7 +1400,7 @@ class EcontractApi {
async validateUser(obj, req) { async validateUser(obj, req) {
// 验证合法性 // 验证合法性
var idName = this.trim(obj.idName); var idName = this.trim(obj.idName);
var idNo = this.trim(obj.idNo); var idNo = this.trim(obj.idNo.toUpperCase());
var accNo = this.trim(obj.accNo); var accNo = this.trim(obj.accNo);
var nonceStr = obj.nonceStr; var nonceStr = obj.nonceStr;
var sign = obj.sign; var sign = obj.sign;
...@@ -1687,7 +1697,7 @@ class EcontractApi { ...@@ -1687,7 +1697,7 @@ class EcontractApi {
var idNoList = []; var idNoList = [];
var idNameList = []; var idNameList = [];
for (var u of userList) { for (var u of userList) {
idNoList.push(u.idNo); idNoList.push(u.idNo.toUpperCase());
idNameList.push(u.idName); idNameList.push(u.idName);
} }
......
...@@ -97,6 +97,7 @@ class EntcontractApi { ...@@ -97,6 +97,7 @@ class EntcontractApi {
return this.returnjson(1001001, "签名错误"); return this.returnjson(1001001, "签名错误");
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.entcontractSve.autoSign(param); var result = await this.entcontractSve.autoSign(param);
return result; return result;
} catch (error) { } catch (error) {
...@@ -181,6 +182,7 @@ class EntcontractApi { ...@@ -181,6 +182,7 @@ class EntcontractApi {
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.entcontractSve.autoSignToPer(param); var result = await this.entcontractSve.autoSignToPer(param);
return result; return result;
} catch (error) { } catch (error) {
...@@ -226,7 +228,7 @@ class EntcontractApi { ...@@ -226,7 +228,7 @@ class EntcontractApi {
var params = { var params = {
entcompanyId: busi.ecompany_id, entcompanyId: busi.ecompany_id,
startId: startId, startId: startId,
idNo: idNo, idNo: idNo.toUpperCase(),
pageSize: pageSize, pageSize: pageSize,
userId3rd: userId, userId3rd: userId,
}; };
......
...@@ -203,6 +203,7 @@ class YZContractApi { ...@@ -203,6 +203,7 @@ class YZContractApi {
return this.returnjson(1001001, "签名错误"); return this.returnjson(1001001, "签名错误");
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.entcontractSve.yzMerchantAutoSigns(param,enttemplate); var result = await this.entcontractSve.yzMerchantAutoSigns(param,enttemplate);
return result; return result;
} catch (error) { } catch (error) {
...@@ -288,6 +289,7 @@ class YZContractApi { ...@@ -288,6 +289,7 @@ class YZContractApi {
return this.returnjson(1001001, "签名错误"); return this.returnjson(1001001, "签名错误");
} }
try { try {
param.idNo = param.idNo.toUpperCase();
var result = await this.econtractSve.autoSignNoBank(param); var result = await this.econtractSve.autoSignNoBank(param);
return result; return result;
} catch (error) { } catch (error) {
...@@ -334,7 +336,7 @@ class YZContractApi { ...@@ -334,7 +336,7 @@ class YZContractApi {
var params = { var params = {
ecompanyId: busi.ecompany_id, ecompanyId: busi.ecompany_id,
startId: startId, startId: startId,
idNo: idNo, idNo: idNo.toUpperCase(),
pageSize: pageSize, pageSize: pageSize,
userId3rd: userId, userId3rd: userId,
}; };
...@@ -400,7 +402,7 @@ class YZContractApi { ...@@ -400,7 +402,7 @@ class YZContractApi {
} }
var params = { var params = {
startId: startId, startId: startId,
idNo: idNo, idNo: idNo.toUpperCase(),
pageSize: pageSize, pageSize: pageSize,
userId3rd: merchantId, userId3rd: merchantId,
}; };
......
...@@ -23,6 +23,7 @@ class ecompanywxuserCtl extends CtlBase { ...@@ -23,6 +23,7 @@ class ecompanywxuserCtl extends CtlBase {
return system.getErrResult2("您的身份证号格式错误"); return system.getErrResult2("您的身份证号格式错误");
} }
p.id_no = p.id_no.toUpperCase();
var wxuser = { var wxuser = {
ecompany_id: Number(p.ecompany_id), ecompany_id: Number(p.ecompany_id),
openId: this.trim(p.openId), openId: this.trim(p.openId),
......
...@@ -118,13 +118,13 @@ class UserCtl extends CtlBase { ...@@ -118,13 +118,13 @@ class UserCtl extends CtlBase {
async getCurrentUser(qobj, pobj, req) { async getCurrentUser(qobj, pobj, req) {
var userid = req.headers.referer.substr(req.headers.referer.indexOf('userid') + 7); var userid = req.headers.referer.substr(req.headers.referer.indexOf('userid') + 7);
// var accountInfo = await this.redisClient.get("yd_user_" + userid); // var accountInfo = await this.redisClient.get("yd_user_" + userid);
// var mobile = accountInfo.substr(accountInfo.indexOf('mobile') + 9,11); // var mobile = accountInfo.substr(accountInfo.indexOf('mobile') + 9,11);
// var name = accountInfo.substr(accountInfo.indexOf('userName') + 11,accountInfo.indexOf('mobile')-16); // var name = accountInfo.substr(accountInfo.indexOf('userName') + 11,accountInfo.indexOf('mobile')-16);
// var personSign = accountInfo.substr(accountInfo.indexOf('personsSign') + 14,18); // var personSign = accountInfo.substr(accountInfo.indexOf('personsSign') + 14,18);
// var bankno = accountInfo.substr(accountInfo.indexOf('bankno') + 9,16); // var bankno = accountInfo.substr(accountInfo.indexOf('bankno') + 9,16);
var accountInfoJson = await this.redisClient.get("yd_user_" + userid) || ""; var accountInfoJson = await this.redisClient.get("yd_user_" + userid) || "";
var accountInfo = {}; var accountInfo = {};
if(accountInfoJson) { if(accountInfoJson) {
...@@ -141,7 +141,7 @@ class UserCtl extends CtlBase { ...@@ -141,7 +141,7 @@ class UserCtl extends CtlBase {
userName: name, userName: name,
bankno: bankno, bankno: bankno,
} }
var result = { var result = {
status: 0, status: 0,
message: "success", message: "success",
...@@ -154,7 +154,7 @@ class UserCtl extends CtlBase { ...@@ -154,7 +154,7 @@ class UserCtl extends CtlBase {
//return system.getResult2(req.session.user); //return system.getResult2(req.session.user);
} }
async loginUser(qobj, pobj, req) { async loginUser(qobj, pobj, req) {
var u = await super.findById(req.session.user.id); var u = await super.findById(req.session.user.id);
...@@ -230,7 +230,7 @@ class UserCtl extends CtlBase { ...@@ -230,7 +230,7 @@ class UserCtl extends CtlBase {
var name = accountInfo.userName || ""; var name = accountInfo.userName || "";
var personSign = accountInfo.personsSign || ""; var personSign = accountInfo.personsSign || "";
var bankno = accountInfo.bankno || ""; var bankno = accountInfo.bankno || "";
if(openid) { if(openid) {
var existedUser = await this.service.getUserByOpenId(openid, appkey); var existedUser = await this.service.getUserByOpenId(openid, appkey);
if(existedUser){ if(existedUser){
...@@ -241,7 +241,7 @@ class UserCtl extends CtlBase { ...@@ -241,7 +241,7 @@ class UserCtl extends CtlBase {
content: "cookie丢失,urlParam从新load," + JSON.stringify(req.query) + ",headers:"+ JSON.stringify(req.headers.referer), content: "cookie丢失,urlParam从新load," + JSON.stringify(req.query) + ",headers:"+ JSON.stringify(req.headers.referer),
clientIp: "" clientIp: ""
}); });
var tmp = { var tmp = {
id: existedUser.id, id: existedUser.id,
userName: existedUser.userName == "" ? name : existedUser.userName, userName: existedUser.userName == "" ? name : existedUser.userName,
...@@ -705,7 +705,7 @@ class UserCtl extends CtlBase { ...@@ -705,7 +705,7 @@ class UserCtl extends CtlBase {
var branchCode = req.query.branchCode || ecid; var branchCode = req.query.branchCode || ecid;
var openid3rd = req.query.openid || ""; var openid3rd = req.query.openid || "";
var userIdNo = (req.query.userIdNo || "").trim(); var userIdNo = (req.query.userIdNo || "").trim().toUpperCase();
var accountInfo = { var accountInfo = {
userName: decodeURI(req.query.userName || "") || "", userName: decodeURI(req.query.userName || "") || "",
...@@ -795,8 +795,8 @@ class UserCtl extends CtlBase { ...@@ -795,8 +795,8 @@ class UserCtl extends CtlBase {
}); });
} }
} }
async loginyd2(req) { async loginyd2(req) {
try { try {
//日志记录 //日志记录
...@@ -815,7 +815,7 @@ class UserCtl extends CtlBase { ...@@ -815,7 +815,7 @@ class UserCtl extends CtlBase {
var userCode = req.query.userCode || ""; var userCode = req.query.userCode || "";
var branchCode = req.query.branchCode || ecid; var branchCode = req.query.branchCode || ecid;
var userIdNo = (req.query.userIdNo || "").trim(); var userIdNo = (req.query.userIdNo || "").trim().toUpperCase();
var accountInfo = null; var accountInfo = null;
if (userIdNo) { if (userIdNo) {
...@@ -902,7 +902,7 @@ class UserCtl extends CtlBase { ...@@ -902,7 +902,7 @@ class UserCtl extends CtlBase {
var userCode = req.query.userCode || ""; var userCode = req.query.userCode || "";
var branchCode = req.query.branchCode || ecid; var branchCode = req.query.branchCode || ecid;
var userIdNo = (req.query.userIdNo || "").trim(); var userIdNo = (req.query.userIdNo || "").trim().toUpperCase();
var accountInfo = null; var accountInfo = null;
if (userIdNo) { if (userIdNo) {
...@@ -1002,7 +1002,7 @@ class UserCtl extends CtlBase { ...@@ -1002,7 +1002,7 @@ class UserCtl extends CtlBase {
} }
// var loginUser = await this.service.findById(userid); // var loginUser = await this.service.findById(userid);
//var loginUser = await this.service.findById(req.session.user.id); //var loginUser = await this.service.findById(req.session.user.id);
pobj.personsSign = pobj.personsSign.toUpperCase();
let uep = { let uep = {
personsSign: pobj.personsSign personsSign: pobj.personsSign
} }
...@@ -1319,4 +1319,4 @@ class UserCtl extends CtlBase { ...@@ -1319,4 +1319,4 @@ class UserCtl extends CtlBase {
} }
} }
module.exports = UserCtl; module.exports = UserCtl;
\ No newline at end of file
...@@ -9,84 +9,84 @@ class IdcardClient { ...@@ -9,84 +9,84 @@ class IdcardClient {
this.check_code = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2']; this.check_code = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'];
} }
// async checkIDCard(idcard) { async checkIDCard(idcard) {
// if (!idcard) { if (!idcard) {
// return false;
// }
// idcard = idcard.toUpperCase();
// var code = idcard.toString().toUpperCase();
// var last = idcard[17];//最后一个
//
// var seventeen = code.substring(0, 17);
//
// // ISO 7064:1983.MOD 11-2
// // 判断最后一位校验码是否正确
// var arr = seventeen.split("");
// var len = arr.length;
// var num = 0;
// for (var i = 0; i < len; i++) {
// num = num + arr[i] * this.weight_factor[i];
// }
//
// // 获取余数
// var resisue = num % 11;
// var last_no = this.check_code[resisue];
//
// // 格式的正则
// // 正则思路
// /*
// 第一位不可能是0
// 第二位到第六位可以是0-9
// 第七位到第十位是年份,所以七八位为19或者20
// 十一位和十二位是月份,这两位是01-12之间的数值
// 十三位和十四位是日期,是从01-31之间的数值
// 十五,十六,十七都是数字0-9
// 十八位可能是数字0-9,也可能是X
// */
// var idcard_patter = /^[1-9][0-9]{5}([1][9][0-9]{2}|[2][0][0|1][0-9])([0][1-9]|[1][0|1|2])([0][1-9]|[1|2][0-9]|[3][0|1])[0-9]{3}([0-9]|[X])$/;
//
// // 判断格式是否正确
// var format = idcard_patter.test(idcard);
//
// // 返回验证结果,校验码和格式同时正确才算是合法的身份证号码
// return last === last_no && format ? true : false;
// }
async checkIDCard(idCard) {
//15位和18位身份证号码的正则表达式
var regIdCard = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
//如果通过该验证,说明身份证格式正确,但准确性还需计算
if (regIdCard.test(idCard)) {
if (idCard.length == 18) {
var idCardWi = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); //将前17位加权因子保存在数组里
var idCardY = new Array(1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2); //这是除以11后,可能产生的11位余数、验证码,也保存成数组
var idCardWiSum = 0; //用来保存前17位各自乖以加权因子后的总和
for (var i = 0; i < 17; i++) {
idCardWiSum += idCard.substring(i, i + 1) * idCardWi[i];
}
var idCardMod = idCardWiSum % 11;//计算出校验码所在数组的位置
var idCardLast = idCard.substring(17);//得到最后一位身份证号码
//如果等于2,则说明校验码是10,身份证号码最后一位应该是X
if (idCardMod == 2) {
if (idCardLast == "X" || idCardLast == "x") {
return true;
} else {
return false;
}
} else {
//用计算出的验证码与最后一位身份证号码匹配,如果一致,说明通过,否则是无效的身份证号码
if (idCardLast == idCardY[idCardMod]) {
return true;
} else {
return false;
}
}
}
} else {
return false; return false;
} }
idcard = idcard.toUpperCase();
var code = idcard.toString().toUpperCase();
var last = idcard[17];//最后一个
var seventeen = code.substring(0, 17);
// ISO 7064:1983.MOD 11-2
// 判断最后一位校验码是否正确
var arr = seventeen.split("");
var len = arr.length;
var num = 0;
for (var i = 0; i < len; i++) {
num = num + arr[i] * this.weight_factor[i];
}
// 获取余数
var resisue = num % 11;
var last_no = this.check_code[resisue];
// 格式的正则
// 正则思路
/*
第一位不可能是0
第二位到第六位可以是0-9
第七位到第十位是年份,所以七八位为19或者20
十一位和十二位是月份,这两位是01-12之间的数值
十三位和十四位是日期,是从01-31之间的数值
十五,十六,十七都是数字0-9
十八位可能是数字0-9,也可能是X
*/
var idcard_patter = /^[1-9][0-9]{5}([1][9][0-9]{2}|[2][0][0|1][0-9])([0][1-9]|[1][0|1|2])([0][1-9]|[1|2][0-9]|[3][0|1])[0-9]{3}([0-9]|[X])$/;
// 判断格式是否正确
var format = idcard_patter.test(idcard);
// 返回验证结果,校验码和格式同时正确才算是合法的身份证号码
return last === last_no && format ? true : false;
} }
// async checkIDCard(idCard) {
// //15位和18位身份证号码的正则表达式
// var regIdCard = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
// //如果通过该验证,说明身份证格式正确,但准确性还需计算
// if (regIdCard.test(idCard)) {
// if (idCard.length == 18) {
// var idCardWi = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); //将前17位加权因子保存在数组里
// var idCardY = new Array(1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2); //这是除以11后,可能产生的11位余数、验证码,也保存成数组
// var idCardWiSum = 0; //用来保存前17位各自乖以加权因子后的总和
// for (var i = 0; i < 17; i++) {
// idCardWiSum += idCard.substring(i, i + 1) * idCardWi[i];
// }
// var idCardMod = idCardWiSum % 11;//计算出校验码所在数组的位置
// var idCardLast = idCard.substring(17);//得到最后一位身份证号码
// //如果等于2,则说明校验码是10,身份证号码最后一位应该是X
// if (idCardMod == 2) {
// if (idCardLast == "X" || idCardLast == "x") {
// return true;
// } else {
// return false;
// }
// } else {
// //用计算出的验证码与最后一位身份证号码匹配,如果一致,说明通过,否则是无效的身份证号码
// if (idCardLast == idCardY[idCardMod]) {
// return true;
// } else {
// return false;
// }
// }
// }
// } else {
// return false;
// }
// }
/** /**
* *
* @param card * @param card
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment