protected function gerarCodigoBarras() { if ($this->tipo == self::CEF_TIPO_POS11) { $this->codigoBarras = $this->getBanco(); $this->codigoBarras .= $this->numeroMoeda; $this->codigoBarras .= Util::fatorVencimento($this->getDataVencimento()); $this->codigoBarras .= Util::numberFormatValue($this->getValor(), 10, 0); $this->codigoBarras .= $this->gerarNossoNumero(); $this->codigoBarras .= Util::numberFormatGeral($this->getAgencia(), 4, 0); $this->codigoBarras .= Util::numberFormatGeral($this->cedenteCodigo, 11, 0); } else { if ($this->tipo == self::CEF_TIPO_POS16) { $this->codigoBarras = $this->getBanco(); $this->codigoBarras .= $this->numeroMoeda; $this->codigoBarras .= Util::fatorVencimento($this->getDataVencimento()); $this->codigoBarras .= Util::numberFormatValue($this->getValor(), 10, 0); $this->codigoBarras .= substr($this->cedenteCodigo, -5); $this->codigoBarras .= $this->getAgencia(); $this->codigoBarras .= 87; $this->codigoBarras .= $this->gerarNossoNumero(); } else { throw new Exception("Tipo do bloqueto inválido"); } } $r = Util::modulo11($this->codigoBarras, 9, 1); $dv = $r == 0 || $r == 1 || $r == 10 ? 1 : 11 - $r; $this->codigoBarras = substr($this->codigoBarras, 0, 4) . $dv . substr($this->codigoBarras, 4); $this->carteira = $this->carteiraDesc[$this->getCarteira()]; return $this->codigoBarras; }
protected function gerarCodigoBarras() { if ($this->getCarteira() == 'cnr') { $this->agenciaConta = sprintf('%s %s', $this->getAgencia(), $this->cedenteCodigo); $this->codigoBarras = $this->getBanco(); $this->codigoBarras .= $this->numeroMoeda; $this->codigoBarras .= Util::fatorVencimento($this->getDataVencimento()); $this->codigoBarras .= Util::numberFormatValue($this->getValor(), 10, 0); $this->codigoBarras .= Util::numberFormatGeral($this->cedenteCodigo, 7, 0); $this->codigoBarras .= $this->geraNossoNumero(); $this->codigoBarras .= Util::dataJuliano($this->getDataVencimento()); $this->codigoBarras .= 2; } if ($this->carteira == 'csb') { $this->agenciaConta = sprintf('%s-%s', $this->getAgencia(), $this->getAgencia() . $this->getConta()); $this->codigoBarras = $this->getBanco(); $this->codigoBarras .= $this->numeroMoeda; $this->codigoBarras .= Util::fatorVencimento($this->getDataVencimento()); $this->codigoBarras .= Util::numberFormatValue($this->getValor(), 10, 0); $this->codigoBarras .= $this->geraNossoNumero(); $this->codigoBarras .= Util::numberFormatGeral($this->getAgencia(), 4, 0) . Util::numberFormatGeral($this->getConta(), 7, 0); $this->codigoBarras .= '00'; $this->codigoBarras .= '1'; } $r = Util::modulo11($this->codigoBarras, 9, 1); $dv = $r == 0 || $r == 1 || $r == 10 ? 1 : 11 - $r; $this->codigoBarras = substr($this->codigoBarras, 0, 4) . $dv . substr($this->codigoBarras, 4); return $this->codigoBarras; }
protected function gerarCodigoBarras() { $this->codigoBarras = $this->getBanco(); $this->codigoBarras .= $this->numeroMoeda; $this->codigoBarras .= Util::fatorVencimento($this->getDataVencimento()); $this->codigoBarras .= Util::numberFormatValue($this->getValor(), 10, 0); $this->codigoBarras .= Util::numberFormatGeral($this->getAgencia(), 4, 0); $this->codigoBarras .= Util::numberFormatGeral($this->getCarteira(), 2, 0); $this->codigoBarras .= $this->gerarNossoNumero(); $this->codigoBarras .= Util::numberFormatGeral($this->getConta(), 7, 0); $this->codigoBarras .= '0'; $r = Util::modulo11($this->codigoBarras, 9, 1); $dv = $r == 0 || $r == 1 || $r == 10 ? 1 : 11 - $r; $this->codigoBarras = substr($this->codigoBarras, 0, 4) . $dv . substr($this->codigoBarras, 4); return $this->codigoBarras; }
protected function gerarCodigoBarras() { $nossoNumero = $this->gerarNossoNumero(); $this->codigoBarras = $this->getBanco(); $this->codigoBarras .= $this->numeroMoeda; $this->codigoBarras .= Util::fatorVencimento($this->getDataVencimento()); $this->codigoBarras .= Util::numberFormatValue($this->getValor(), 10, 0); if ($this->convenioFormato == '8') { $this->codigoBarras .= '000000'; $this->codigoBarras .= $this->convenio; $this->codigoBarras .= $nossoNumero; $this->codigoBarras .= $this->getCarteira(); } else { if ($this->convenioFormato == "7") { $this->codigoBarras .= '000000'; $this->codigoBarras .= $this->convenio; $this->codigoBarras .= $nossoNumero; $this->codigoBarras .= $this->getCarteira(); } else { if ($this->convenioFormato == "6") { $this->codigoBarras .= $this->convenio; $this->codigoBarras .= $nossoNumero; if ($this->nossoNumeroFormato == 1) { $this->codigoBarras .= Util::numberFormatGeral($this->getAgencia(), 4, 0); $this->codigoBarras .= Util::numberFormatGeral($this->getConta(), 8, 0); $this->codigoBarras .= $this->getCarteira(); } else { if ($this->nossoNumeroFormato == 2) { $this->codigoBarras .= '21'; } else { throw new \Exception('Campo nossoNumeroFormato inválido, deve possuir {1|2}'); } } } else { throw new \Exception('Formato de convenio inválido, deve possuir {6|7|8} digitos'); } } } $dv_modulo = 11 - Util::modulo11($this->codigoBarras, 9, 1); $dv = $dv_modulo == 0 || $dv_modulo == 10 || $dv_modulo == 11 ? 1 : $dv_modulo; $this->codigoBarras = substr($this->codigoBarras, 0, 4) . $dv . substr($this->codigoBarras, 4); return $this->codigoBarras; }
/** * Retorna o codigo de barras * @return string * @throws \Exception */ public function getCodigoBarras() { if (!empty($this->campoCodigoBarras)) { return $this->campoCodigoBarras; } if (!$this->isValid()) { throw new \Exception('Campos requeridos pelo banco, aparentam estar ausentes'); } $codigo = Util::numberFormatGeral($this->getCodigoBanco(), 3) . $this->getMoeda() . Util::fatorVencimento($this->getDataVencimento()) . Util::numberFormatValue($this->getValor(), 10, 0) . $this->getCampoLivre(); $resto = Util::modulo11($codigo, 2, 9, false); $dv = in_array($resto, [0, 10, 11]) ? 1 : $resto; return $this->campoCodigoBarras = substr($codigo, 0, 4) . $dv . substr($codigo, 4); }