JSFiddle - React, Tailwind, and code Playground
HTML
<label for="region">Регион</label>
<input id="region" type="number" value="77"/>
<label for="inspection">Отделение</label>
<input id="inspection" type="number" value="9"/>
<button id="create">
Сгенерить
</button>
<div id="result">
</div>
CSS
#result { font-size: 3em; padding-top: 3em; }
JavaScript
function zeros(str,lng) {
var factlength = str.length;
if (factlength < lng) {
for (var i = 0;i<(lng-factlength);i++)
{
str = '0' + str;
}
}
return str;
}
function innfl( region, inspection ) {
/* NNNN (4 знака): для российских организаций и физических лиц - код налогового органа, который присвоил ИНН; */
// var region = zeros(String(Math.floor((Math.random() * 92) + 1)),2);
var region = zeros(String(region), 2);
//var inspection = zeros(String(Math.floor((Math.random() * 48) + 52)),2); //exc, full range should be "* 99) + 1)),2);"
var inspection = zeros( String(inspection), 2);
/* XXXXX (XXXXXX): для российской организации (физического лица) - порядковый номер записи о лице в территориальном разделе Единого государственного реестра налогоплательщиков (далее - ЕГРН) налогового органа, который присвоил ИНН, - 5 знаков - для организации (6 знаков - для физического лица); */
var numba = zeros(String(Math.floor((Math.random() * 999999) + 1)),6);
var rezult = region + inspection + numba;
//console.log( rezult );
/* C (CC) - контрольное число (1 знак - для организации, 2 знака - для физического лица), рассчитанное по специальному алгоритму, установленному Федеральной налоговой службой.*/
var kontr = String(((
7*rezult[0] + 2*rezult[1] + 4*rezult[2] +
10*rezult[3] + 3*rezult[4] + 5*rezult[5] +
9*rezult[6] + 4*rezult[7] + 6*rezult[8] +
8*rezult[9]
) % 11) % 10);
kontr == 10 ? kontr = 0: kontr = kontr;
rezult = rezult + kontr;
kontr = String(((
3*rezult[0] + 7*rezult[1] + 2*rezult[2] +
4*rezult[3] + 10*rezult[4] + 3*rezult[5] +
5*rezult[6] + 9*rezult[7] + 4*rezult[8] +
6*rezult[9] + 8*rezult[10]
) % 11) % 10);
kontr == 10 ? kontr = 0: kontr = kontr;
rezult = rezult + kontr;
return rezult;
}
var btn = document.querySelector('#create');
btn.addEventListener('click', calculate );
function calculate (e) {
let region =...