tokenRefresh, crear y editar productos con img funcionando

This commit is contained in:
2025-08-21 14:57:55 -04:00
parent 6a28e141a9
commit c45307d47d
22 changed files with 301 additions and 193 deletions

View File

@@ -52,43 +52,34 @@ export class UsersController {
}
@Post()
// @Roles('admin')
@ApiOperation({ summary: 'Create a new product' })
@ApiResponse({ status: 201, description: 'Product created successfully.' })
@ApiResponse({ status: 500, description: 'Internal server error.' })
@UseInterceptors(FilesInterceptor('urlImg'))
async create(
@Req() req: Request,
@Body() createUserDto: CreateProductDto,
@UploadedFiles() files: Express.Multer.File[],
@Query('roleId') roleId?: string,
) {
const data = await this.inventoryService.create(createUserDto)
const id = Number(req['user'].id);
const data = await this.inventoryService.create(files,createUserDto,id)
return { message: 'User created successfully', data };
}
@Patch('/id/:id')
// @Roles('admin')
@ApiOperation({ summary: 'Update a product' })
@ApiResponse({ status: 200, description: 'Product updated successfully.' })
@ApiResponse({ status: 404, description: 'Product not found.' })
async update(@Param('id') id: string, @Body() UpdateProductDto: UpdateProductDto) {
const data = await this.inventoryService.update(id, UpdateProductDto);
return { message: 'User updated successfully', data };
}
@Patch('/upload')
@ApiOperation({ summary: 'Update a product' })
@ApiResponse({ status: 200, description: 'Product uploaded successfully.'})
@ApiResponse({ status: 404, description: 'Product not found.' })
@ApiResponse({ status: 500, description: 'Internal server error.' })
@UseInterceptors(FilesInterceptor('urlImg'))
async uploadFile(@Req() req: Request, @UploadedFiles() files: Express.Multer.File[], @Body() body: any) {
// Aquí puedes acceder a los campos del formulario
// console.log('Archivos:', files);
async uploadFile(
@Req() req: Request,
@UploadedFiles() files: Express.Multer.File[],
@Body() body: any
) {
const id = Number(req['user'].id);
// console.log(req['user'].id)
// console.log('Otros campos del formulario:', body);
const result = await this.inventoryService.saveImages(files,body,id);
// const result = ['result']
return { data: result };
}