maestro connection with microservices - clients and modules

This commit is contained in:
rodrigo.zamboni
2022-03-18 10:16:27 -03:00
parent e15a680b9f
commit 1523c6b4d1
25 changed files with 1668 additions and 639 deletions
+90 -75
View File
@@ -1,83 +1,98 @@
// import {
// Body,
// Controller,
// Delete,
// Get,
// Param,
// Post,
// Put,
// Redirect,
// } from '@nestjs/common';
// import { Payload } from '@nestjs/microservices';
// import axios from 'axios';
// import { Console } from 'console';
// // import { CreateInputGrpcClientDto } from './dto/create-input-grpc-client.dto';
// // import { UpdateInputGrpcClientDto } from './dto/update-input-grpc-client.dto';
import {
Body,
Controller,
Delete,
Get,
Param,
Post,
Put,
} from '@nestjs/common';
import axios from 'axios';
import { InputsService } from './inputs.service';
import { InputsClientService } from 'src/clients/inputs/client.service';
import { Payload } from '@nestjs/microservices';
// @Controller('input')
// export class InputsController {
// @Get('/test-connection')
// async testConnection() {
// console.log(
// process.env.DEV_URL + `/test-connection`,
// 'ON TEST CONNECTION ROUTE',
// );
// await axios
// .get(process.env.DEV_URL + `/test-connection`)
// .then((response) => {
// return response;
// });
// }
@Controller('input')
export class InputsController {
// @Post()
// async create(@Body() createInputDto: CreateInputGrpcClientDto) {
// console.log(createInputDto);
// console.log(process.env.DEV_URL + `/input`, 'ON CREATE ROUTE');
constructor( private inputsClientService:InputsClientService){}
// await axios
// .post(process.env.DEV_URL + '/input', createInputDto)
// .then((response) => {
// return response;
// });
// }
@Get('/test-connection')
async testConnection(@Body() data) {
console.log(
process.env.DEV_URL + `/test-connection`,
'ON TEST CONNECTION ROUTE',
);
console.log(data)
// @Get()
// async list() {
// console.log(process.env.DEV_URL + `/input`, 'ON GET ROUTE');
// await axios.get(process.env.DEV_URL + `/input`).then((response) => {
// return response;
// });
// }
const inputService = new InputsService(this.inputsClientService)
const response = await inputService.testConnection(data)
// @Get('/:id')
// async show(@Param() id: string) {
// console.log(process.env.DEV_URL + `/input/${id}`, 'ON SHOW ROUTE');
// await axios.get(process.env.DEV_URL + `/input/${id}`).then((response) => {
// return response;
// });
// }
return response;
}
// @Put(':id')
// async update(
// @Payload() updateInputDto: UpdateInputGrpcClientDto,
// @Param() id: string,
// ) {
// console.log(process.env.DEV_URL + `/input/${id}`, 'ON UPDATE ROUTE');
// await axios
// .put(process.env.DEV_URL + `input/${id}`, updateInputDto)
// .then((response) => {
// return response;
// });
// }
@Post()
async create(@Body() createInputDto) {
console.log(process.env.DEV_URL + `/input`, 'ON CREATE ROUTE');
// @Delete(':id')
// async delete(@Param() id: string) {
// console.log(process.env.DEV_URL + `/input/${id}`, 'ON DELETE ROUTE');
const inputService = new InputsService(this.inputsClientService)
const response = await inputService.create(createInputDto)
// await axios
// .delete(process.env.DEV_URL + `/input/${id}`)
// .then((response) => {
// return response;
// });
// }
// }
return response;
}
@Get()
async findAll() {
console.log(process.env.DEV_URL + `/input`, 'ON FIND ALL ROUTE');
const inputService = new InputsService(this.inputsClientService)
const response = await inputService.findAll()
return response;
}
@Get('/:id')
async findOne(@Param() params) {
const { id } = params
console.log(process.env.DEV_URL + `/input/${id}`, 'ON FIND ONE ROUTE');
const inputService = new InputsService(this.inputsClientService)
const response = await inputService.findOne(id)
return response;
}
@Put(':id')
async update(
@Payload() updateInputDto,
@Param() params,
) {
const {id} = params;
console.log(process.env.DEV_URL + `/input/${id}`, 'ON UPDATE ROUTE');
const inputService = new InputsService(this.inputsClientService)
const response = await inputService.update(id,updateInputDto)
return response;
}
@Delete(':id')
async delete(@Param() params) {
const {id} = params
console.log(process.env.DEV_URL + `/input/${id}`, 'ON DELETE ROUTE');
const inputService = new InputsService(this.inputsClientService)
const response = await inputService.remove(id)
return response;
}
}
+82 -3
View File
@@ -1,8 +1,87 @@
import { Injectable } from '@nestjs/common';
import { HttpException, HttpStatus, Injectable } from '@nestjs/common';
import { InputsClientService } from 'src/clients/inputs/client.service';
@Injectable()
export class InputsService {
check() {
return { message: 'Ok' };
constructor( private inputClient: InputsClientService){}
async create(data){
try{
const createInputResponse = await this.inputClient.create(data)
return createInputResponse;
}catch(err){
throw new HttpException(err.message,HttpStatus.NOT_FOUND)
}
}
async findAll(){
try{
const findAllInputResponse = await this.inputClient.findAll({})
return findAllInputResponse;
}catch(err){
throw new HttpException(err.message,HttpStatus.NOT_FOUND)
}
}
async findOne(id:string){
try{
const findOneInputResponse = await this.inputClient.findOne({id})
return findOneInputResponse;
}catch(err){
throw new HttpException(err.message,HttpStatus.NOT_FOUND)
}
}
async update(id:string,data){
try{
const updateInputResponse = await this.inputClient.update({id,...data})
return updateInputResponse;
}catch(err){
throw new HttpException(err.message,HttpStatus.NOT_FOUND)
}
}
async remove(id:string){
try{
const removeInputResponse = await this.inputClient.remove({id})
return removeInputResponse;
}catch(err){
throw new HttpException(err.message,HttpStatus.NOT_FOUND)
}
}
async testConnection(data){
try{
const testConnectionInputResponse = await this.inputClient.testConnection(data)
return testConnectionInputResponse;
}catch(err){
throw new HttpException(err.message,HttpStatus.NOT_FOUND)
}
}
}