E aí gente beleza mais um vídeo aqui sobre Gol a gente vai dar continuidade no nosso projeto Hoje a gente vai criar mais uma camada aqui que é a camada de vídeo do nosso projeto agora a gente vai criar avio para poder fazer as conversões de objeto e retornar as informações apenas que a gente quer que sejam mostradas na nossa requisição Então vamos para o vídeo [Música] Então qual a ideia aqui tá se a gente rodar aqui o nosso projeto do jeito que está hoje e abrir aqui o Postman você vê que quando a gente
faz uma requisição não está retornando nada né a gente tá só retornando uma string vazia aqui e 200 Ok só que a gente quer retornar o objeto só que como eu faço para retornar objeto sendo que o nosso domen ele é privado já que a gente tornou nosso domínio privado e o nosso mesmo se não tivesse privado o nosso objeto do homem não tem nenhuma tag de Jason ou seja se a gente exportar se ele não seria possível exportar porque ninguém tem a tag de Jason aqui então o que que a gente tem que fazer
né O que a gente pode fazer nesse caso nesse caso que entram na camada de viola a camada de viola tem que saber exportar e fazer a conversão de objetos beleza porque se você vê que o nosso objeto de responsa ele tem as tag de Jason Ou seja a gente tem que transformar o nosso objeto que não tem as tags para um objeto que é exportável que tem as tags né Então como que a gente pode fazer isso então a gente vai vir aqui na nossa crci e vamos criar uma pasta nova e a gente
vai chamar ela de View beleza e aí aqui dentro da via a gente vai fazer um converte também e o respons beleza e a gente vai chamar pack de pack de View beleza e aqui a gente vai receber uma vai querer a primeira função essa função vai se chamar com o verde Dome to responde Beleza então vai se chamar dessa forma e o que que a gente vai receber por parâmetro a gente vai receber user doman que é do tipo e user na verdade que é do tipo Model né modo e o ponto e user
theme interface e a gente vai retornar o que para pessoa né a gente vai retornar um response ponto e os dribles certo e aqui dentro a gente vai poder fazer basicamente o seguinte a gente vai poder dar um return o response no caso ele tá ele criou aqui do nada um objeto novo tá então objeto respons.s e qual que vai ser o ID por enquanto vamos deixar vazio porque nosso objeto do homem não tem uma ideia ainda né e-mail qual que vai ser o e-mail e os do Meio em português qual que vai ser o
name e o user Dome o ponto get name qual que vai ser o Age e os herdoma em português aí aqui faltou a senha né então peçoword no caso aqui assim Ah isso daqui é um bom ponto tá vendo o nosso user ele não tem a senha eu não quero retornar a senha para pessoa então ele não vai ter a senha aqui dentro né então o que que a gente vai poder fazer a gente vai poder vir aqui no nosso no nosso controle dentro de user e a gente vai fazer uma alteração Aqui também tá
a gente vai fazer uma boa alteração aqui tá vendo que a gente tá tendo que criar um service novo toda vez que a gente chama a page Create user só que a gente não deveria fazer isso né o Crate user assim como delite user find user update user eles deveriam ter em distância de um service para poder chamar Então como que a gente pode fazer isso aqui não controla a gente pode criar um arquivo para a gente poder fazer basicamente a criação a gente poder criar o nosso Controller aqui tá então a gente pode colocar
aqui user Controller por exemplo ponto gol que no caso vai ser a Instância de tudo aqui né a gente pode chamar o pack de Controller beleza e aqui a gente vai ter a nossa interface do controle também tá então a gente vai ter um Type e user Controller interface aqui tá se e aqui vai ser a partir do tipo interface e aí a gente vai ter o creatuser que recebe o jinglene que Dele teaser que recebe ginnone que é simplesmente a gente vai copiar e colocar aqui dentro da nossa interface todos esses métodos Beleza então
eu vou completar aqui já volto então aqui temos os nossos métodos criados do nosso controle então o que que a gente vai poder fazer agora tá então aqui dentro do nosso dos nossos Finds das coisas aqui que a gente tem a gente na verdade vai vir no nosso controle e criar um objeto a gente poder colocar em Instância do Service lá dentro então a gente vai criar aqui um Type e user Controller interface beleza que vai ser do tipo strect só que agora o que que ele vai pedir para o parâmetro ele vai ter objeto
service aqui dentro tá então vai ter objeto service que vai ser privado que vai ser a partir de service ponto e domes que vai ser a nossa interface do Service pra gente poder chamar ele né então aqui a gente vai ter o nosso método Então a gente vai ter um método para inicializar o Controller função que recebe o nome de New user Controller interface que que ele recebe por parâmetro serve-se interface que vai ser a partir de service beleza e o que que ele vai retornar por parâmetro ele vai retornar e user controla a interface
só que a interface mesmo não nosso objeto beleza e aí que dentro a gente vai dar um return e comercial e user Controller interface que é o nosso objeto aquele vai dar erro porque a gente ainda não mudou nos nossos arquivos tá então a gente vai vir no nosso Create user e vamos criar um para cada aqui tá Então a gente vai colocar que vem a partir de user controla a interface Vamos colocar o c aqui beleza e a gente vai fazer isso em todos os métodos aqui de dentro do nosso controle então delite user
a gente vai vir aqui no começo vai colocar aqui o ser a partir de user controla a interface e a gente vai fazer isso com todos tá então vou copiar aqui vamos fazer com todos então agora ele vai parar de dar erro aqui tá vendo que ele vai só falar que tá sendo inutilizada aqui os servos basicamente só que no nosso creatchuler agora ao invés da gente dá no service aqui a gente instanciar o server se a gente vai apagar esse cara daqui e a gente vai basicamente tirar esses servos daqui a gente vai pegar
a partir da nossa Instância Então a gente vai fazer o c ponto service.createuser Então a gente vai tirar esse cara agora a gente não precisa mais distanciar o service todas as vezes beleza E agora o que que a gente vai ter que fazer a gente vai ter que mudar no nosso roads que ele vai começar a quebrar aqui né então agora a gente vai fazer o seguinte a gente vai ter que incensiar o nosso controle né então agora a gente vai ter que colocar o Controller recebe que pode até chamar de uilder Controller tá então
usa Controller recebe de controller.neu e user Controller e ele perde um service aqui pra gente então o nick roads Ele precisa saber inicializar as coisas pra gente só que você diz pô mas um Nick roads vai inicializar dependência não é mais fácil ele já recebeu Controller pro parâmetro e eu acho faz mais sentido a gente fazer isso né então vamos tirar ele daqui e Quem deveria fazer isso pra gente é um meio ponto gol tá aqui poderia ser uma em ponto Gol ou você pode criar um arquivo de dependência para poder fazer isso pra você
tá mas como a gente não tem muita dependência só de usuário aqui tem uma algumas coisas só para inicializar aqui dá para deixar aqui mesmo beleza Beleza então aqui embaixo a gente vai inicializar as dependências Então inite dependem-se beleza esse comentário aqui não precisa mas só para vocês entenderem a organização quem que a gente precisa criar primeiro a gente precisa criar primeiros Services né então a gente vai criar o service que vai vir a partir de service ponto New user doman service Beleza então ele vai vir a partir desse cara só que a gente vai
precisar criar o controle então user Controller que vai vir a partir de quem controlor ponto New youser Controller que pede quem o service que é o que a gente vai passar para o parâmetro e agora o nosso rolter aqui a gente vai passar esse cara para parâmetro Controller a gente vai passar ele para cá voltando no nosso ilser controller no nosso Nick roads no caso a gente vai colocar uma vírgula e colocar aqui e user controla que vai vir a partir controller. easer controla a interface e agora é só a gente mudar aqui nosso controle
para e usar Controller Então a gente vai colocar aqui contra o dele beleza vamos apagar e vamos colocar aí user Controller beleza temos tudo pronto agora agora Tá bonitinho aqui a nossa implementação a nossa dependência aqui certo então vamos vir agora vamos rodar o nosso projeto vamos ver o que que vai acontecer né Então na hora que a gente rodar aqui o nosso projeto ele ele deu 500 interna um server erro por que que ele deu esse erro né então se a gente vir aqui no controle tá vendo que a gente tá recebendo o series
interface Mas a gente não passou por parâmetro né então aqui é só a gente colocar service interface aqui né então serve esses dois pontos serve esse interface Beleza agora vamos parar de executar vamos voltar a executar o projeto Então na hora que a gente mandar essa requisição 200 Ok só que ele não retornou o nosso objeto Por que que aconteceu isso né ele não retornou o nosso objeto porque se a gente vir no nosso Create user a gente não converteu o objeto momento algum ele tá retornando vazio aqui ainda né então o que que a
gente pode fazer agora a gente pode vir aqui e colocar View ponto converter response e a gente vai passar aqui o nosso domínio que está ali em cima né que é o objeto que a gente tem então trocando aqui com alterando aqui para ver o converte o que que vai dar ele vai continuar dando erro por causa do string aqui tá Então a gente tem que tirar aqui a gente colocar Jason agora tá ele para de dar erro aqui no nosso projeto certo então tudo certo agora vamos voltar aqui vamos parar de executar rodar novamente
a nossa aplicação se a gente volta aqui no post em mãe envia e tá aqui nosso objeto criado e tá vendo que não tem objeto senha aqui o campo senha né porque a gente removeu na nossa View Beleza então tudo certo a nossa aplicação tá funcionando tá convertendo tudo bonitinho aqui fica até uma lição de casa para vocês de colocar no log aqui as informações Beleza eu vou voltar no próximo vídeo já com isso completo para mostrar como ficou beleza mas aqui fica com uma lição de casa vocês colocarem esse objeto no log para poder
colocar aqui tal o usuário criou que as informações criadas foram aquelas e assim por diante beleza mas esse vídeo vai ficar por aqui e temos Nossa aplicação já organizada agora é só sair criando mesmo beleza então esse foi o vídeo espero que vocês tenham gostado desse vídeo até a próxima e falou