feat(database): Implement DatabaseManager for managing database structure and initialization
All checks were successful
SSH Backend Deploy / ssh-deploy (push) Successful in 1m51s
All checks were successful
SSH Backend Deploy / ssh-deploy (push) Successful in 1m51s
feat(routes): Add camera, image, measurement, project, and video routes with Swagger documentation feat(services): Create storageService and videoService for file management and video processing fix(errorHandler): Enhance error handling with standardized responses and database operation wrappers
This commit is contained in:
99
src/routes/measurementRoutes.js
Normal file
99
src/routes/measurementRoutes.js
Normal file
@@ -0,0 +1,99 @@
|
||||
// src/routes/measurementRoutes.js
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const MeasurementController = require('../controllers/measurementController');
|
||||
|
||||
/**
|
||||
* @swagger
|
||||
* /measurements:
|
||||
* get:
|
||||
* summary: Récupère toutes les mesures
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Liste de toutes les mesures
|
||||
* 404:
|
||||
* description: Aucune mesure trouvée
|
||||
* 500:
|
||||
* description: Erreur serveur
|
||||
*/
|
||||
router.get('/measurements', MeasurementController.getAllMeasurements);
|
||||
|
||||
/**
|
||||
* @swagger
|
||||
* /measurements/{id}:
|
||||
* get:
|
||||
* summary: Récupère une mesure par ID
|
||||
* parameters:
|
||||
* - in: path
|
||||
* name: id
|
||||
* required: true
|
||||
* schema:
|
||||
* type: integer
|
||||
* description: ID de la mesure
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Détails de la mesure
|
||||
* 400:
|
||||
* description: ID de mesure invalide
|
||||
* 404:
|
||||
* description: Mesure non trouvée
|
||||
* 500:
|
||||
* description: Erreur serveur
|
||||
*/
|
||||
router.get('/measurements/:id', MeasurementController.getMeasurementById);
|
||||
|
||||
/**
|
||||
* @swagger
|
||||
* /measurements/{projectId}/{orderId}:
|
||||
* get:
|
||||
* summary: Récupère une mesure par projet ID et ordre ID
|
||||
* parameters:
|
||||
* - in: path
|
||||
* name: projectId
|
||||
* required: true
|
||||
* schema:
|
||||
* type: integer
|
||||
* description: ID du projet
|
||||
* - in: path
|
||||
* name: orderId
|
||||
* required: true
|
||||
* schema:
|
||||
* type: integer
|
||||
* description: ID d'ordre
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Détails de la mesure
|
||||
* 400:
|
||||
* description: IDs invalides
|
||||
* 404:
|
||||
* description: Mesure non trouvée
|
||||
* 500:
|
||||
* description: Erreur serveur
|
||||
*/
|
||||
router.get('/measurements/:projectId/:orderId', MeasurementController.getMeasurementByProjectAndOrderId);
|
||||
|
||||
/**
|
||||
* @swagger
|
||||
* /measurements/{id}:
|
||||
* delete:
|
||||
* summary: Supprime une mesure
|
||||
* parameters:
|
||||
* - in: path
|
||||
* name: id
|
||||
* required: true
|
||||
* schema:
|
||||
* type: integer
|
||||
* description: ID de la mesure
|
||||
* responses:
|
||||
* 200:
|
||||
* description: Mesure supprimée avec succès
|
||||
* 400:
|
||||
* description: ID de mesure invalide
|
||||
* 404:
|
||||
* description: Mesure non trouvée
|
||||
* 500:
|
||||
* description: Erreur serveur
|
||||
*/
|
||||
router.delete('/measurements/:id', MeasurementController.deleteMeasurement);
|
||||
|
||||
module.exports = router;
|
||||
Reference in New Issue
Block a user