private function validar($atributo, $valor) { switch ($atributo) { case 'REG': if ($this->REG === 'E200') { throw new \InvalidArgumentException("O campo '{$atributo}' tem que ter o valor 'E200'"); } break; case 'UF': if (!TCodMunicipio::isCodigoUF($valor)) { throw new \InvalidArgumentException("No campo '{$atributo}' o valor {$valor} está com valor invalido"); } break; case 'DT_INI': if (strlen($valor) != 8) { throw new \InvalidArgumentException("O campo '{$atributo}' só pode ter 8 caracteres"); } break; case 'DT_FIN': if (strlen($valor) != 8) { throw new \InvalidArgumentException("O campo '{$atributo}' só pode ter 8 caracteres"); } break; } }
private function validar($atributo, $valor) { switch ($atributo) { case 'REG': if ($this->REG === '0150') { throw new \InvalidArgumentException("O campo '{$atributo}' tem que ter o valor '0150'"); } break; case 'COD_PART': if (strlen($valor) > 60) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 60 caracteres"); } break; case 'NOME': if (strlen($valor) > 100) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 100 caracteres"); } break; case 'COD_PAIS': if (!T321::isCodigo($valor)) { throw new \InvalidArgumentException("O campo '{$atributo}' está com um valor invalido"); } break; case 'CNPJ': if (strlen($valor) > 14) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 14 caracteres"); } break; case 'CPF': if (strlen($valor) > 11) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 11 caracteres"); } break; case 'IE': if (strlen($valor) > 14) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 11 caracteres"); } break; case 'COD_MUN': if (strlen($valor) > 14) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 11 caracteres"); } break; case 'COD_MUN': if (TCodMunicipio::isCodigoMunicipio($valor)) { throw new \InvalidArgumentException("No campo '{$atributo}' o valor {$valor} está com valor invalido"); } break; case 'SUFRAMA': if (strlen($valor) > 9) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 7 caracteres"); } break; case 'END': if (strlen($valor) > 60) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 60 caracteres"); } break; case 'NUM': if (strlen($valor) > 10) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 10 caracteres"); } break; case 'COMPL': if (strlen($valor) > 60) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 60 caracteres"); } break; case 'BAIRRO': if (strlen($valor) > 60) { throw new \InvalidArgumentException("O campo '{$atributo}' não pode ter mais que 60 caracteres"); } break; } }
public function makeE210(Efd $efd, E200 $e200) { $bloco0 = $efd->bloco0; $blocoC = $efd->blocoC; $vC190 = array(); if (!empty($blocoC->C100)) { foreach ($blocoC->C100 as $c100) { $codParticipanete = $c100->COD_PART; foreach ($bloco0->_0150 as $_0150) { if ($_0150->COD_PART == $codParticipanete) { $codMunicipio = $_0150->COD_MUN; break; } } $municipio = TCodMunicipio::buscaMunicipio($codMunicipio); if ($e200->UF == $municipio['uf']) { foreach ($c100->C190 as $c190) { $vC190[] = $c190; } } } } $e210 = new E210(); $e210->IND_MOV_ST = 0; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //04 - VL_DEVOL_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_DEVOL_ST = 0; if (!empty($vC190)) { foreach ($vC190 as $c190) { switch ($c190->CFOP) { case "1410": case "1411": case "1414": case "1415": case "1660": case "1661": case "1662": case "2410": case "2411": case "2414": case "2415": case "2660": case "2661": case "2662": $VL_DEVOL_ST += $c190->VL_ICMS_ST; break; } } } $e210->VL_DEVOL_ST = $VL_DEVOL_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //05 - VL_RESSARC_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_RESSARC_ST = 0; if (!empty($vC190)) { foreach ($vC190 as $c190) { switch ($c190->CFOP) { case "1603": case "2603": $VL_RESSARC_ST += $c190->VL_ICMS_ST; break; } } } $e210->VL_RESSARC_ST = $VL_RESSARC_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //06 - VL_OUT_CRED_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_OUT_CRED_ST = 0; if (!empty($vC190)) { foreach ($vC190 as $c190) { $cfop = substr($c190->CFOP, 0, 1); switch ($cfop) { case 1: case 2: if ($c190->CFOP != '1410' && $c190->CFOP != '1411' && $c190->CFOP != '1414' && $c190->CFOP != '1415' && $c190->CFOP != '1660' && $c190->CFOP != '1661' && $c190->CFOP != '1662' && $c190->CFOP != '2410' && $c190->CFOP != '2411' && $c190->CFOP != '2414' && $c190->CFOP != '2415' && $c190->CFOP != '2660' && $c190->CFOP != '2661' && $c190->CFOP != '2662') { $VL_OUT_CRED_ST += $c190->VL_ICMS_ST; } break; } } } $e210->VL_OUT_CRED_ST = $VL_OUT_CRED_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //07 - VL_OUT_CRED_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_AJ_CREDITOS_ST = 0; $e210->VL_AJ_CREDITOS_ST = $VL_AJ_CREDITOS_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //08 - VL_RETENÇAO_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_RETENCAO_ST = 0; $e210->VL_RETENCAO_ST = $VL_RETENCAO_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //09 - VL_OUT_DEB_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_OUT_DEB_ST = 0; $e210->VL_OUT_DEB_ST = $VL_OUT_DEB_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //10 - VL_AJ_DEBITOS_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_AJ_DEBITOS_ST = 0; $e210->VL_AJ_DEBITOS_ST = $VL_AJ_DEBITOS_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //11 - VL_SLD_DEV_ANT_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_SLD_DEV_ANT_ST = 0; $e210->VL_SLD_DEV_ANT_ST = $VL_SLD_DEV_ANT_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //12 - VL_DEDUÇÕES_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_DEDUCOES_ST = 0; $e210->VL_DEDUCOES_ST = $VL_DEDUCOES_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //13 - VL_ICMS_RECOL_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_ICMS_RECOL_ST = 0; $e210->VL_ICMS_RECOL_ST = $VL_ICMS_RECOL_ST; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //14 - VL_ICMS_RECOL_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $VL_SLD_CRED_ST_TRANSPORTAR = 0; $e210->VL_SLD_CRED_ST_TRANSPORTAR = $VL_SLD_CRED_ST_TRANSPORTAR; $espressao = $e210->VL_RETENCAO_ST + $e210->VL_OUT_DEB_ST + $e210->VL_AJ_DEBITOS_ST - $e210->VL_SLD_CRED_ANT_ST - $e210->VL_DEVOL_ST - $e210->VL_RESSARC_ST - $e210->VL_OUT_CRED_ST - $e210->VL_AJ_CREDITOS_ST; if ($espressao >= 0) { $e210->VL_SLD_CRED_ST_TRANSPORTAR = 0; } else { $e210->VL_SLD_CRED_ST_TRANSPORTAR = $espressao * -1; } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// //15 - DEB_ESP_ST ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// $DEB_ESP_ST = 0; $e210->DEB_ESP_ST = $DEB_ESP_ST; $this->addE210($e210); }