UNPKG

util-helpers

Version:

一个基于业务场景的工具方法库

40 lines (36 loc) 1.05 kB
'use strict'; var ut2 = require('ut2'); var baseReg = /^\d{15}$/; function sumCheckCode(preCode) { var retNum; var pj = 10; for (var j = 0; j < 14; j++) { var sj = pj + Number(preCode[j]); var sj10 = sj % 10; sj10 = sj10 === 0 ? 10 : sj10; var pj1 = sj10 * 2; pj = pj1 % 11; } if (pj === 1) { retNum = 0; } else { retNum = 11 - pj; } return retNum; } function isBusinessLicense(value, options) { if (options === void 0) { options = {}; } var valueStr = ut2.toString(value); var _a = options.checkCode, needCheckCode = _a === void 0 ? true : _a; var passBaseRule = baseReg.test(valueStr); if (!needCheckCode || !passBaseRule) { return passBaseRule; } var preCode = valueStr.substring(0, 14); var lastCode = valueStr.substring(valueStr.length - 1); var checkCode = sumCheckCode(preCode); return lastCode === String(checkCode); } isBusinessLicense.sumCheckCode = sumCheckCode; module.exports = isBusinessLicense;