Executando verificação de segurança...
1

Não tenho certeza se é exatamente isso que você deseja, mas vou explicar como funciona o código de barras para produtos pesados, como o Queijo Mussarela com o código: 2003600017377.

Esse código de barras pode ser dividido em quatro seções:

  1. 2: O primeiro dígito indica que se trata de um produto pesado. Em muitos sistemas de balança, o número 2 é usado para identificar produtos que foram pesados e vendidos por peso, ao invés de uma quantidade fixa.

  2. 0036: Esses quatro dígitos representam o código do produto, que é definido manualmente por nós. Nesse caso, o código 0036 identifica o Queijo Mussarela. Podemos cadastrar produtos com códigos que vão de 0000 a 9999.

  3. 0001737: Essa sequência representa o valor do produto. No caso, o valor do Queijo é R$ 17,37 e podemos atribuir valores de até R$ 99.999,99.

  4. 7: O último dígito é o dígito verificador, utilizado para garantir a validade do código de barras. Esse dígito é calculado a partir dos outros 12 dígitos do código, utilizando o algoritmo detalhado neste artigo da Wikipédia.

Implementei o algoritmo nesta função em JavaScript. Ela recebe os primeiros 12 dígitos do código de barras, calcula o dígito verificador e retorna o código completo, com os 13 dígitos:

function calcularCodigoDeBarras(codigoCom12Digitos) {
  const array = codigoCom12Digitos.split('');
  const soma = array.reduce(
    (total, numero, i) => total + (i % 2 === 0 ? numero * 1 : numero * 3),
    0
  );
  const digitoVerificador = ((Math.floor(soma / 10) + 1) * 10 - soma) % 10;
  const codigoDeBarrasCompleto = codigoCom12Digitos + digitoVerificador;
  return codigoDeBarrasCompleto;
}

console.log(calcularCodigoDeBarras('200360001737')) // '2003600017377'
Carregando publicação patrocinada...