Esempio n. 1
0
 private function validar($atributo, $valor)
 {
     switch ($atributo) {
         case 'REG':
             if ($this->REG === 'C170') {
                 throw new \InvalidArgumentException("O campo '{$atributo}' tem que ter o valor 'C170'");
             }
             break;
         case 'NUM_ITEM':
             if (strlen($valor) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 3 carácter");
             }
             break;
         case 'COD_ITEM':
             if (strlen($valor) > 60) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 60 carácter");
             }
             break;
         case 'QTD':
             if (!is_numeric($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             if ($valor < 0) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ter valor maior que zero");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 5) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 5");
             }
             break;
         case 'UNID':
             if (strlen($valor) > 6) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 6 carácter");
             }
             break;
         case 'VL_ITEM':
         case 'VL_DESC':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'IND_MOV':
             if ($valor !== 0 && $valor !== 1) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' só pode ter valores 0 ou 1");
             }
             break;
         case 'CST_ICMS':
             if (!T431::isCodigo($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor invalido");
             }
             break;
         case 'CFOP':
             if (!empty($valor)) {
                 if (!t422::isCodigo($valor)) {
                     throw new \InvalidArgumentException("O campo '{$atributo}' está com '{$valor}' que é um valor invalido");
                 }
             }
             break;
         case 'COD_NAT':
             if (strlen($valor) > 10) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 10 carácter");
             }
             break;
         case 'VL_BC_ICMS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'ALIQ_ICMS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[0]) && strlen($v[0]) > 6) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um valor maior que 6");
             }
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'VL_ICMS':
         case 'VL_BC_ICMS_ST':
         case 'ALIQ_ST':
         case 'VL_ICMS_ST':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'IND_APUR':
             if ($valor !== 0 && $valor !== 1) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' só pode ter valores 0 ou 1");
             }
             break;
         case 'CST_IPI':
             if (!empty($valor)) {
                 if (!T432::isCodigo($valor)) {
                     throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor invalido");
                 }
             }
             break;
         case 'COD_ENQ':
             //                if( !T453::isCodigo($valor) ){
             //                    throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor invalido");
             //                }
             break;
         case 'VL_BC_IPI':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'ALIQ_IPI':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[0]) && strlen($v[0]) > 6) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um valor maior que 6");
             }
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'VL_IPI':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'CST_PIS':
             if (strlen($valor) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 2 carácter");
             }
             break;
         case 'VL_BC_PIS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'ALIQ_PIS_P':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[0]) && strlen($v[0]) > 8) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um valor maior que 8");
             }
             if (isset($v[1]) && strlen($v[1]) > 4) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 4");
             }
             break;
         case 'QUANT_BC_PIS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 3");
             }
             break;
         case 'ALIQ_PIS_R':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 3");
             }
             break;
         case 'VL_PIS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 3");
             }
             break;
         case 'CST_COFINS':
             if (!empty($valor)) {
                 if (!TSituacaoTributariaCOFINS::isCodigo($valor)) {
                     throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor '{$valor}' e é invalido");
                 }
             }
             break;
         case 'VL_BC_COFINS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'ALIQ_COFINS_P':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[0]) && strlen($v[0]) > 8) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um valor maior que 8");
             }
             if (isset($v[1]) && strlen($v[1]) > 4) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 4");
             }
             break;
         case 'QUANT_BC_COFINS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 3");
             }
             break;
         case 'ALIQ_COFINS_R':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 4) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 4");
             }
             break;
         case 'VL_COFINS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 4) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 4");
             }
             break;
     }
 }
Esempio n. 2
0
 private function validar($atributo, $valor)
 {
     switch ($atributo) {
         case 'REG':
             if ($this->REG === 'D510') {
                 throw new \InvalidArgumentException("O campo '{$atributo}' tem que ter o valor 'D510'");
             }
             break;
         case 'NUM_ITEM':
             if (strlen($valor) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 3 carácter");
             }
             break;
         case 'COD_ITEM':
             if (strlen($valor) > 60) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 60 carácter");
             }
             break;
         case 'COD_CLASS':
             if (!T441::isCodigo($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor inavlido");
             }
             break;
         case 'QTD':
             if (!is_numeric($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 3");
             }
             break;
         case 'UNID':
             if (strlen($valor) > 6) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 6 carácter");
             }
             break;
         case 'VL_ITEM':
             if (!is_numeric($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 3");
             }
             break;
         case 'CST_ICMS':
             if (!T431::isCodigo($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor invalido");
             }
             break;
         case 'CFOP':
             if (strlen($valor) > 4) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 4 carácter");
             }
             break;
         case 'IND_REC':
             if ($valor !== 0 && $valor !== 1 && $valor !== 2 && $valor !== 3 && $valor !== 4 && $valor !== 5 && $valor !== 9) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' só pode ter valores 0,1,2,3,4,5,9");
             }
             break;
     }
 }
Esempio n. 3
0
 private function validar($atributo, $valor)
 {
     switch ($atributo) {
         case 'REG':
             if ($this->REG === 'D590') {
                 throw new \InvalidArgumentException("O campo '{$atributo}' tem que ter o valor 'D590'");
             }
             break;
         case 'CST_ICMS':
             if (!T431::isCodigo($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor invalido");
             }
             break;
         case 'CFOP':
             if (!T422::isCodigo($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor invalido");
             }
             break;
         case 'VL_OPR':
         case 'VL_BC_ICMS':
         case 'VL_ICMS':
         case 'VL_BC_ICMS_UF':
         case 'VL_ICMS_UF':
             if (!is_numeric($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 3) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 3");
             }
             break;
     }
 }
Esempio n. 4
0
 private function validar($atributo, $valor)
 {
     switch ($atributo) {
         case 'REG':
             if ($this->REG === 'C190') {
                 throw new \InvalidArgumentException("O campo '{$atributo}' tem que ter o valor 'C190'");
             }
             break;
         case 'CST_ICMS':
             if (!T431::isCodigo($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor invalido");
             }
             break;
         case 'CFOP':
             if (strlen($valor) > 4) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 4 carácter");
             }
             break;
         case 'ALIQ_ICMS':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[0]) && strlen($v[0]) > 6) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um valor maior que 6");
             }
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
         case 'VL_OPR':
         case 'VL_BC_ICMS':
         case 'VL_ICMS':
         case 'VL_BC_ICMS_ST':
         case 'VL_ICMS_ST':
         case 'VL_RED_BC':
         case 'VL_IPI':
             if (!is_numeric($valor) && !empty($valor)) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' precisa ser um número");
             }
             $v = explode(".", $valor);
             if (isset($v[1]) && strlen($v[1]) > 2) {
                 throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter um decimal maior que 2");
             }
             break;
     }
 }