package Ġbr . com . z up . academy . al isson pr ado . httpClient . it au . consult a Cart ao It au Ċ Ċ import Ġbr . com . z up . academy . al isson pr ado . Exception . C pf In consistent e It au Exception Ċ import Ġbr . com . z up . academy . al isson pr ado . Exception . Id N ao En contr ado It au Exception Ċ import Ġbr . com . z up . academy . al isson pr ado . Regist ra Pix Request Ċ import Ġbr . com . z up . academy . al isson pr ado . Tipo Ch ave Ċ import Ġio . mic ronaut . http . HttpResponse Ċ import Ġio . mic ronaut . http . HttpStatus Ċ import Ġio . mic ronaut . http . client . exceptions . HttpClient Exception Ċ import Ġjak arta . inject . Singleton Ċ import Ġorg . slf 4 j . LoggerFactory Ċ Ċ @ Singleton Ċ class ĠConsult a Cart ao It au Service ( ĊĠĠĠ Ġval Ġconsulta Cont a Client : ĠConsult a Cont a It au Client Ċ ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġlogger Ġ= ĠLoggerFactory . getLogger ( this :: class . java ) ĊĊĠĠĠ Ġfun Ġconsulta ( request : ĠRegist ra Pix Request ): ĠConsult a Cont a It au Response Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠConsult a ĠE RP ĠI tau ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresponse Consult a E rp It au : ĠHttpResponse < Consult a Cont a It au Response > Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconsulta Cont a Client . consult a Cont a ( request . id Cliente B anco , Ġrequest . tipo Cont a . toString ()) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSe Ġret orn ar ĠStatus Ġ 4 0 4 ĠNOT _ FOUND , ĠnÃ£o Ġen cont ro u Ġdados Ġno ĠE RP ĠI tau ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( response Consult a E rp It au . status Ġ== ĠHttpStatus . NOT _ FOUND ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . warn ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" NÃ£o Ġencontr ados Ġdados Ġdo Ġcart Ã£o Ġcom Ġa Ġinst it ui Ã§Ã£o Ġfin ance ira . Ġ${ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequest . id Cliente B anco . replace After ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"-", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" *** " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠId N ao En contr ado It au Exception () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSe Ġa Ġch ave Ġfor Ġo ĠC PF Ġdeve Ġser Ġo Ġmesmo Ġvalor Ġpresent a Ġno ĠE RP ĠI tau ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( request . tipo Ch ave Ġ== ĠTipo Ch ave . CP F Ġ&& Ġrequest . ch ave Ġ!= Ġresponse Consult a E rp It au . body (). tit ular . cpf ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . warn ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" T ent ativa Ġde Ġcad astro Ġde Ġch ave Ġcomo ĠC PF Ġdifer ente Ġdo Ġcada str ado Ġno ĠE RP ĠI tau . Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ request . id Cliente B anco . replace After ("- ", Ġ" *** ")} Ġ- Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ request . ch ave }" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠC pf In consistent e It au Exception () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresponse Consult a E rp It au . body () ĊĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠHttpClient Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . error (" NÃ£o Ġfoi Ġposs ÃŃvel Ġa cess ar Ġa ĠE RP Ġdo ĠI ta Ãº . Ġ${ e . localized Message }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠHttpClient Exception (" NÃ£o Ġfoi Ġposs ÃŃvel Ġconsult ar Ġos Ġdados Ġdo Ġcart Ã£o Ġcom Ġo ĠI tau .") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }