Beispiel #1
0
 /**
  * Formata o campo Agência/Codigo do Cliente no boleto, de acordo com as especificações de cada banco
  * Esse método é opcional na classe, e quando não é declarado, o boleto bancário exibe
  * a agência com dígito e a conta com dígito, no formato: 123-4/ 23346-3
  *
  * @version 0.1 18/01/2013 Initial
  * 
  * @param array $data Array com todos os dados constantes na classe
  * @return string String formatada no padrão do Nosso Número do banco
  */
 public function agenciaCodigoCedente()
 {
     $data = $this->parent->Data;
     $string = OB::zeros(Math::Mod11($data['Agencia'], 0, 0, true), 5) . ' / ' . OB::zeros(Math::Mod11($data['Conta'], 0, 0, true), 7);
     return $string;
 }
Beispiel #2
0
 /**
  * Normaliza as variáveis de acordo com os seus tamanhos exatos
  * 
  * @version 0.1 18/05/2011 Initial
  */
 public function normalize($valor, $variavel)
 {
     if (array_key_exists($variavel, $this->tamanhos)) {
         $length = $this->tamanhos[$variavel];
         if (strlen($valor) < $length) {
             return OB::zeros($valor, $length);
         } else {
             return String::left($valor, $length);
         }
     } else {
         throw new Exception(" A chave \"{$variavel}\" não existe no layout");
     }
 }
Beispiel #3
0
 /**
  * Calcula a data juliana para uma data informada no formato d/m/a
  *
  * @version 0.1 28/05/2011 Initial
  *          0.2 31/05/2011 Formatação geral
  */
 public function julianDays($date)
 {
     $date = preg_split('%[/-]+%', $date);
     $dataFinal = mktime(0, 0, 0, $date[1], $date[0], $date[2]);
     $dataInicial = mktime(0, 0, 0, 12, 31, $date[2] - 1);
     return OB::zeros((int) (($dataFinal - $dataInicial) / (60 * 60 * 24)), 3) . String::right($date[2], 1);
 }
 /**
  * particularidade() Faz em tempo de execução mudanças que sejam imprescindíveis
  * para a geração correta do código de barras
  * Particularmente para o Banrisul, ele acrescenta ao array OB::$Data, que
  * guarda as variáveis que geram o código de barras, uma nova variável
  * $DuploDigito, específica desse banco
  *
  * @version 0.1 28/05/2011 Initial
  */
 public function particularidade($object)
 {
     $object->Data['NumParcela'] = OB::zeros($object->Boleto->NumParcela, 3);
     $object->Data['AnoEmissao'] = date('y');
 }
Beispiel #5
0
 /**
  * particularidade() Faz em tempo de execução mudanças que sejam imprescindíveis
  * para a geração correta do código de barras
  * Particularmente para o Banrisul, ele acrescenta ao array OB::$Data, que
  * guarda as variáveis que geram o código de barras, uma nova variável
  * $DuploDigito, específica desse banco
  *
  * @version 0.1 28/05/2011 Initial
  */
 public function particularidade($object)
 {
     $object->Data['NumParcela'] = OB::zeros($object->Boleto->NumParcela, 3);
     $object->Data['AnoEmissao'] = date('y');
     $object->Boleto->NossoNumero = Math::Mod11($object->Boleto->NossoNumero, 0, 0, true);
 }
Beispiel #6
0
 /**
  * Configura a Razão Social
  * 
  * @version 0.1 27/05/2011 Initial
  *          0.2 27/05/2011 Renomeado de setNome() para setRazaoSocial()
  */
 public function setRazaoSocial($value)
 {
     $this->RazaoSocial = OB::zeros($value, 3);
     return $this;
 }