Skip to content

Commit

Permalink
Merge pull request #10 from Jhon-Henkel/add-lr-status-enum-php7
Browse files Browse the repository at this point in the history
Desenvolvido classe enum para o status Lr da Iugu
  • Loading branch information
idealizetecnologia authored Feb 6, 2023
2 parents 3b71319 + de8ffe5 commit 9179610
Showing 1 changed file with 299 additions and 0 deletions.
299 changes: 299 additions & 0 deletions src/Iugu/Enum/LrStatusEnum.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,299 @@
<?php

namespace Iugu\Enum;

class LrStatusEnum
{
const LR_CODE_0 = "0";
const LR_CODE_00 = "00";
const LR_CODE_1 = "1";
const LR_CODE_2 = "2";
const LR_CODE_3 = "3";
const LR_CODE_4 = "4";
const LR_CODE_5 = "5";
const LR_CODE_6 = "6";
const LR_CODE_7 = "7";
const LR_CODE_8 = "8";
const LR_CODE_9 = "9";
const LR_CODE_11 = "11";
const LR_CODE_12 = "12";
const LR_CODE_13 = "13";
const LR_CODE_14 = "14";
const LR_CODE_15 = "15";
const LR_CODE_19 = "19";
const LR_CODE_21 = "21";
const LR_CODE_22 = "22";
const LR_CODE_23 = "23";
const LR_CODE_24 = "24";
const LR_CODE_25 = "25";
const LR_CODE_28 = "28";
const LR_CODE_30 = "30";
const LR_CODE_39 = "39";
const LR_CODE_41 = "41";
const LR_CODE_43 = "43";
const LR_CODE_46 = "46";
const LR_CODE_51 = "51";
const LR_CODE_52 = "52";
const LR_CODE_53 = "53";
const LR_CODE_54 = "54";
const LR_CODE_55 = "55";
const LR_CODE_56 = "56";
const LR_CODE_57 = "57";
const LR_CODE_58 = "58";
const LR_CODE_59 = "59";
const LR_CODE_60 = "60";
const LR_CODE_61 = "61";
const LR_CODE_62 = "62";
const LR_CODE_63 = "63";
const LR_CODE_64 = "64";
const LR_CODE_65 = "65";
const LR_CODE_67 = "67";
const LR_CODE_70 = "70";
const LR_CODE_72 = "72";
const LR_CODE_74 = "74";
const LR_CODE_75 = "75";
const LR_CODE_76 = "76";
const LR_CODE_77 = "77";
const LR_CODE_78 = "78";
const LR_CODE_79 = "79";
const LR_CODE_80 = "80";
const LR_CODE_81 = "81";
const LR_CODE_82 = "82";
const LR_CODE_83 = "83";
const LR_CODE_85 = "85";
const LR_CODE_86 = "86";
const LR_CODE_88 = "88";
const LR_CODE_89 = "89";
const LR_CODE_90 = "90";
const LR_CODE_91 = "91";
const LR_CODE_92 = "92";
const LR_CODE_93 = "93";
const LR_CODE_94 = "94";
const LR_CODE_96 = "96";
const LR_CODE_97 = "97";
const LR_CODE_98 = "98";
const LR_CODE_99 = "99";
const LR_CODE_475 = "475";
const LR_CODE_999 = "999";
const LR_CODE_A2 = "A2";
const LR_CODE_A3 = "A3";
const LR_CODE_A5 = "A5";
const LR_CODE_A7 = "A7";
const LR_CODE_AA = "AA";
const LR_CODE_AB = "AB";
const LR_CODE_AC = "AC";
const LR_CODE_AE = "AE";
const LR_CODE_AF = "AF";
const LR_CODE_AG = "AG";
const LR_CODE_AH = "AH";
const LR_CODE_AI = "AI";
const LR_CODE_AJ = "AJ";
const LR_CODE_AV = "AV";
const LR_CODE_BD = "BD";
const LR_CODE_BL = "BL";
const LR_CODE_BM = "BM";
const LR_CODE_BN = "BN";
const LR_CODE_BO = "BO";
const LR_CODE_BP = "BP";
const LR_CODE_BP176 = "BP176";
const LR_CODE_BV = "BV";
const LR_CODE_CF = "CF";
const LR_CODE_CG = "CG";
const LR_CODE_DA = "DA";
const LR_CODE_DF = "DF";
const LR_CODE_DM = "DM";
const LR_CODE_DQ = "DQ";
const LR_CODE_DS = "DS";
const LR_CODE_EB = "EB";
const LR_CODE_EE = "EE";
const LR_CODE_EK = "EK";
const LR_CODE_FA = "FA";
const LR_CODE_FC = "FC";
const LR_CODE_FD = "FD";
const LR_CODE_FE = "FE";
const LR_CODE_FF = "FF";
const LR_CODE_FG = "FG";
const LR_CODE_GA = "GA";
const LR_CODE_GD = "GD";
const LR_CODE_HJ = "HJ";
const LR_CODE_IA = "IA";
const LR_CODE_JB = "JB";
const LR_CODE_P5 = "P5";
const LR_CODE_KA = "KA";
const LR_CODE_KB = "KB";
const LR_CODE_KE = "KE";
const LR_CODE_N7 = "N7";
const LR_CODE_R0 = "R0";
const LR_CODE_R1 = "R1";
const LR_CODE_R2 = "R2";
const LR_CODE_R3 = "R3";
const LR_CODE_U3 = "U3";
const LR_CODE_N3 = "N3";
const LR_CODE_N8 = "N8";
const LR_CODE_NR = "NR";
const LR_CODE_RP = "RP";
const LR_CODE_99A = "99A";
const LR_CODE_99B = "99B";
const LR_CODE_99C = "99C";
const LR_CODE_99Z = "99Z";
const LR_CODE_99TA = "99TA";
const LR_CODE_AF01 = "AF01";
const LR_CODE_AF02 = "AF02";
const LR_CODE_AF03 = "AF03";
const LR_CODE_126 = "126";

public static function getDescription($statusCode)
{
switch($statusCode) {
case static::LR_CODE_0: return "Transação autorizada com sucesso";
case static::LR_CODE_00: return "Transação autorizada com sucesso";
case static::LR_CODE_1: return "Transação não autorizada. Referida (suspeita de fraude) pelo banco emissor";
case static::LR_CODE_2: return "Transação não autorizada. Referida (suspeita de fraude) pelo banco emissor";
case static::LR_CODE_3: return "Não foi possível processar a transação. Entre com contato com a Loja Virtual";
case static::LR_CODE_4: return "Transação não autorizada. Cartão bloqueado pelo banco emissor";
case static::LR_CODE_5: return "Transação não autorizada. Cartão inadimplente";
case static::LR_CODE_6: return "Transação não autorizada. Cartão cancelado";
case static::LR_CODE_7: return "Transação negada. Reter cartão condição especial";
case static::LR_CODE_8: return "Transação não autorizada. Código de segurança inválido";
case static::LR_CODE_9: return "Transação cancelada parcialmente com sucesso";
case static::LR_CODE_11: return "Transação autorizada com sucesso para cartão emitido no exterior";
case static::LR_CODE_12: return "Transação inválida, erro no cartão";
case static::LR_CODE_13: return "Transação não permitida. Valor da transação Inválido";
case static::LR_CODE_14: return "Transação não autorizada. Cartão Inválido";
case static::LR_CODE_15: return "Banco emissor indisponível ou inexistente";
case static::LR_CODE_19: return "Refaça a transação ou tente novamente mais tarde";
case static::LR_CODE_21: return "Cancelamento não efetuado. Transação não localizada";
case static::LR_CODE_22: return "Parcelamento inválido. Número de parcelas inválidas";
case static::LR_CODE_23: return "Transação não autorizada. Valor da prestação inválido";
case static::LR_CODE_24: return "Quantidade de parcelas inválido";
case static::LR_CODE_25: return "Pedido de autorização não enviou número do cartão";
case static::LR_CODE_28: return "Arquivo temporariamente indisponível";
case static::LR_CODE_30: return "Transação não autorizada. Decline Message";
case static::LR_CODE_39: return "Transação não autorizada. Erro no banco emissor";
case static::LR_CODE_41: return "Transação não autorizada. Cartão bloqueado por perda";
case static::LR_CODE_43: return "Transação não autorizada. Cartão bloqueado por roubo";
case static::LR_CODE_46: return "Conta encerrada";
case static::LR_CODE_51: return "Transação não autorizada. Limite excedido/sem saldo";
case static::LR_CODE_52: return "Cartão com dígito de controle inválido";
case static::LR_CODE_53: return "Transação não permitida. Cartão poupança inválido";
case static::LR_CODE_54: return "Transação não autorizada. Cartão vencido";
case static::LR_CODE_55: return "Transação não autorizada. Senha inválida";
case static::LR_CODE_56: return "Número cartão não pertence ao emissor/Número cartão inválido";
case static::LR_CODE_57: return "Transação não permitida para o cartão";
case static::LR_CODE_58: return "Transação não permitida. Opção de pagamento inválida";
case static::LR_CODE_59: return "Transação não autorizada. Suspeita de fraude";
case static::LR_CODE_60: return "Transação não autorizada";
case static::LR_CODE_61: return "Banco emissor indisponível";
case static::LR_CODE_62: return "Transação não autorizada. Cartão restrito para uso doméstico";
case static::LR_CODE_63: return "Transação não autorizada. Violação de segurança";
case static::LR_CODE_64: return "Transação não autorizada. Valor abaixo do mínimo exigido pelo banco emissor";
case static::LR_CODE_65: return "Transação não autorizada. Excedida a quantidade de transações para o cartão";
case static::LR_CODE_67: return "Transação não autorizada. Cartão bloqueado para compras hoje";
case static::LR_CODE_70: return "Transação não autorizada. Limite excedido/sem saldo";
case static::LR_CODE_72: return "Cancelamento não efetuado. Saldo disponível para cancelamento insuficiente";
case static::LR_CODE_74: return "Transação não autorizada. A senha está vencida";
case static::LR_CODE_75: return "Senha bloqueada. Excedeu tentativas de cartão";
case static::LR_CODE_76: return "Cancelamento não efetuado. Banco emissor não localizou a transação original";
case static::LR_CODE_77: return "Cancelamento não efetuado. Não foi localizado a transação original";
case static::LR_CODE_78: return "Transação não autorizada. Cartão bloqueado primeiro uso";
case static::LR_CODE_79: return "Transação não autorizada. Entre em contato com o seu banco";
case static::LR_CODE_80: return "Transação não autorizada. Divergência na data de transação/pagamento";
case static::LR_CODE_81: return "Transação não autorizada. A senha está vencida";
case static::LR_CODE_82: return "Transação não autorizada. Cartão inválido";
case static::LR_CODE_83: return "Transação não autorizada. Erro no controle de senhas";
case static::LR_CODE_85: return "Transação não permitida. Falha da operação";
case static::LR_CODE_86: return "Transação não permitida. Falha da operação";
case static::LR_CODE_88: return "Falha na criptografia dos dados";
case static::LR_CODE_89: return "Erro na transação";
case static::LR_CODE_90: return "Transação não permitida. Falha da operação";
case static::LR_CODE_91: return "Transação não autorizada. Banco emissor temporariamente indisponível";
case static::LR_CODE_92: return "Transação não autorizada. Tempo de comunicação excedido";
case static::LR_CODE_93: return "Transação não autorizada. Violação de regra, possível erro no cadastro";
case static::LR_CODE_94: return "Transação duplicada";
case static::LR_CODE_96: return "Falha no processamento";
case static::LR_CODE_97: return "Valor não permitido para essa transação";
case static::LR_CODE_98: return "Sistema/comunicação indisponível";
case static::LR_CODE_99: return "Sistema/comunicação indisponível";
case static::LR_CODE_475: return "Timeout de Cancelamento";
case static::LR_CODE_999: return "Sistema/comunicação indisponível";
case static::LR_CODE_A2: return "Verifique os dados do cartão";
case static::LR_CODE_A3: return "Erro no cartão";
case static::LR_CODE_A5: return "Transação não permitida";
case static::LR_CODE_A7: return "Erro no cartão";
case static::LR_CODE_AA: return "Tempo Excedido";
case static::LR_CODE_AB: return "Função incorreta";
case static::LR_CODE_AC: return "Transação não permitida. Cartão de débito sendo usado com crédito";
case static::LR_CODE_AE: return "Tente Mais Tarde";
case static::LR_CODE_AF: return "Transação não permitida. Falha da operação";
case static::LR_CODE_AG: return "Transação não permitida. Falha da operação";
case static::LR_CODE_AH: return "Transação não permitida. Cartão de crédito sendo usado com débito";
case static::LR_CODE_AI: return "Transação não autorizada. Autenticação não foi realizada";
case static::LR_CODE_AJ: return "Transação não permitida. Transação de crédito ou débito em uma operação que permite apenas Private Label";
case static::LR_CODE_AV: return "Transação não autorizada. Dados Inválidos";
case static::LR_CODE_BD: return "Transação não permitida. Falha da operação";
case static::LR_CODE_BL: return "Transação não autorizada. Limite diário excedido";
case static::LR_CODE_BM: return "Transação não autorizada. Cartão Inválido";
case static::LR_CODE_BN: return "Transação não autorizada. Cartão ou conta bloqueado";
case static::LR_CODE_BO: return "Transação não permitida. Falha da operação";
case static::LR_CODE_BP: return "Transação não autorizada. Conta corrente inexistente";
case static::LR_CODE_BP176: return "Transação não permitida";
case static::LR_CODE_BV: return "Transação não autorizada. Cartão vencido";
case static::LR_CODE_CF: return "Transação não autorizada.C79:J79 Falha na validação dos dados";
case static::LR_CODE_CG: return "Transação não autorizada. Falha na validação dos dados";
case static::LR_CODE_DA: return "Transação não autorizada. Falha na validação dos dados";
case static::LR_CODE_DF: return "Transação não permitida. Falha no cartão ou cartão inválido";
case static::LR_CODE_DM: return "Transação não autorizada. Limite excedido/sem saldo";
case static::LR_CODE_DQ: return "Transação não autorizada. Falha na validação dos dados";
case static::LR_CODE_DS: return "Transação não permitida para o cartão";
case static::LR_CODE_EB: return "Transação não autorizada. Limite diário excedido";
case static::LR_CODE_EE: return "Transação não permitida. Valor da parcela inferior ao mínimo permitido";
case static::LR_CODE_EK: return "Transação não permitida para o cartão";
case static::LR_CODE_FA: return "Transação não autorizada";
case static::LR_CODE_FC: return "Transação não autorizada";
case static::LR_CODE_FD: return "Transação negada. Reter cartão condição especial";
case static::LR_CODE_FE: return "Transação não autorizada. Divergencia na data de transação/pagamento";
case static::LR_CODE_FF: return "Cancelamento OK";
case static::LR_CODE_FG: return "Transação não autorizada";
case static::LR_CODE_GA: return "Aguarde Contato";
case static::LR_CODE_GD: return "Transação não permitida";
case static::LR_CODE_HJ: return "Transação não permitida. Código da operação inválido";
case static::LR_CODE_IA: return "Transação não permitida. Indicador da operação inválido";
case static::LR_CODE_JB: return "Transação não permitida. Valor da operação inválido";
case static::LR_CODE_P5: return "Troca de senha/Desbloqueio";
case static::LR_CODE_KA: return "Transação não permitida. Falha na validação dos dados";
case static::LR_CODE_KB: return "Transação não permitida. Selecionado a opção incorrente";
case static::LR_CODE_KE: return "Transação não autorizada. Falha na validação dos dados";
case static::LR_CODE_N7: return "Transação não autorizada. Código de segurança inválido";
case static::LR_CODE_R0: return "Suspensão de pagamento recorrente para um serviço";
case static::LR_CODE_R1: return "Transação não autorizada. Cartão inadimplente";
case static::LR_CODE_R2: return "Transação não qualificada para visa pin";
case static::LR_CODE_R3: return "Suspensão de todas as ordens de autorização";
case static::LR_CODE_U3: return "Transação não permitida. Falha na validação dos dados";
case static::LR_CODE_N3: return "Saque não disponível";
case static::LR_CODE_N8: return "Diferença. Pré autorização ";
case static::LR_CODE_NR: return "Transação não permitida. Retentar a transação após 30 dias";
case static::LR_CODE_RP: return "Transação não permitida. Retentar a transação após 72 horas";
case static::LR_CODE_99A: return "Token não encontrado";
case static::LR_CODE_99B: return "Sistema indisponível/Falha na comunicação";
case static::LR_CODE_99C: return "Sistema indisponível/Exceção no processamento";
case static::LR_CODE_99Z: return "Sistema indisponível/Retorno desconhecido";
case static::LR_CODE_99TA: return "Timeout na requisição. O tempo para receber o retorno da requisição excedeu";
case static::LR_CODE_AF01: return "Recusado manualmente em analise antifraude";
case static::LR_CODE_AF02: return "Recusado automaticamente em analise antifraude";
case static::LR_CODE_AF03: return "Recusado pelo antifraude da adquirente de crédito, Transação não permitida conforme análise de acusa por suspeita a fraude";
case static::LR_CODE_126: return "A data de validade do cartão de crédito é inválida";
}
return 'Desconhecido';
}

public static function generateList()
{
$reflect = new \ReflectionClass('Iugu\Enum\LrStatusEnum');
$constantes = $reflect->getConstants();
$list = array();
foreach ($constantes as $value){
$list[$value] = self::getDescription($value);
}
return $list;
}
}

0 comments on commit 9179610

Please sign in to comment.