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; } }
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; } }
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; } }
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; } }