commit
This commit is contained in:
109
src/sales/customer/customer.controller.ts
Normal file
109
src/sales/customer/customer.controller.ts
Normal file
@@ -0,0 +1,109 @@
|
||||
import { Body, Controller, Get, HttpException, HttpStatus, Param, Post, Query } from '@nestjs/common';
|
||||
import { CustomerService } from './customer.service';
|
||||
import { ResultModel } from '../../domain/models/result.model';
|
||||
import { error } from 'console';
|
||||
import { Customer } from 'src/domain/models/customer.model';
|
||||
import { ApiTags } from '@nestjs/swagger';
|
||||
|
||||
@ApiTags('Customer')
|
||||
@Controller('api/v1/customer')
|
||||
export class CustomerController {
|
||||
|
||||
constructor(private readonly customerService: CustomerService){}
|
||||
|
||||
@Get(':name')
|
||||
async getCustomerByName(@Param('name') name: string){
|
||||
try{
|
||||
const customers = await this.customerService.findCustomerByName(name);
|
||||
return new ResultModel(true, null, customers, null);
|
||||
} catch(err){
|
||||
throw new HttpException(new ResultModel(false, 'Não foi possível consultar o cadastro de clientes.', {}, error),
|
||||
HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
@Get('categories/fechAll')
|
||||
async getCategories(){
|
||||
try{
|
||||
const categories = await this.customerService.getCategory();
|
||||
return categories;
|
||||
} catch(err){
|
||||
throw new HttpException(new ResultModel(false, err.message, {}, error),
|
||||
HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
@Get('subcategories/fechAll')
|
||||
async getSubCategories(){
|
||||
try{
|
||||
const subCategories = await this.customerService.getSubCategory();
|
||||
return subCategories;
|
||||
} catch(err){
|
||||
throw new HttpException(new ResultModel(false, err.message, {}, error),
|
||||
HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Get()
|
||||
async getCustomer(@Query() query){
|
||||
try{
|
||||
const field = query['field'];
|
||||
const textSearch = query['textsearch'];
|
||||
const customers = await this.customerService.findCustomerByQuery(field, textSearch);
|
||||
return new ResultModel(true, null, customers, null);
|
||||
} catch(err){
|
||||
// 'Não foi possível consultar o cadastro de clientes.'
|
||||
throw new HttpException(new ResultModel(false, err.message, {}, error),
|
||||
HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
@Get(':id')
|
||||
async getCustomerById(@Param('id') id: number){
|
||||
try{
|
||||
const customers = await this.customerService.findCustomerById(id);
|
||||
return new ResultModel(true, null, customers, null);
|
||||
} catch(err){
|
||||
throw new HttpException(new ResultModel(false, 'Não foi possível consultar o cadastro de clientes.', {}, error),
|
||||
HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
@Get('cpf/:cpf')
|
||||
async getCustomerByCpf(@Param('cpf') cpf: string){
|
||||
try{
|
||||
console.log("pesquisando por cpf");
|
||||
const customer = await this.customerService.findCustomerByCpf(cpf);
|
||||
if (!customer) return new ResultModel(false, 'Cliente não cadastrado', null, null);
|
||||
return new ResultModel(true, null, customer, null);
|
||||
} catch(err){
|
||||
throw new HttpException(new ResultModel(false, 'Não foi possível consultar o cadastro de clientes.', {}, error),
|
||||
HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
}
|
||||
@Get('create/proxnumcli')
|
||||
async IdCustomer(){
|
||||
try{
|
||||
console.log('proxnumcli');
|
||||
const id = await this.customerService.generateIdCustomer();
|
||||
return new ResultModel(true, null, id, null);
|
||||
} catch(err){
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Post('create')
|
||||
async createCustomer(@Body() customer: Customer){
|
||||
try{
|
||||
console.log(customer);
|
||||
const result = await this.customerService.createCustomer(customer);
|
||||
return new ResultModel(true, null, result, null);
|
||||
//return new ResultModel(true, null, id, null);
|
||||
} catch(err){
|
||||
throw new HttpException(new ResultModel(false, 'Erro ao cadastrar cliente.', {}, err),
|
||||
HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user