- Aggiornamento Viaggi

This commit is contained in:
Surya Paolo
2025-12-30 11:36:42 +01:00
parent 85141df8a4
commit fb40743694
46 changed files with 3676 additions and 2104 deletions

View File

@@ -20,7 +20,6 @@ const geoRoutes = require('./geoRoutes'); // 👈 Importa geoRoutes
router.use('/geo', geoRoutes); // 👈 Monta come sub-router
// Middleware di autenticazione (usa il tuo esistente)
const { authenticate } = require('../middleware/authenticate');
@@ -42,6 +41,7 @@ router.post('/rides', authenticate, rideController.createRide);
*/
router.get('/rides', rideController.getRides);
/**
* @route GET /api/viaggi/rides/search
* @desc Ricerca viaggi avanzata
@@ -71,6 +71,18 @@ router.get('/rides/my', authenticate, rideController.getMyRides);
*/
//router.get('/rides/match', authenticate, rideController.findMatches);
router.get('/rides/cancelled', authenticate, rideController.getCancelledRides);
router.get('/rides/statscomm', authenticate, rideController.getCommunityStatsComm);
router.get('/rides/community', authenticate, rideController.getCommunityRides);
router.get('/rides/calendar', authenticate, rideController.getCalendarRides);
/**
* @route POST /api/viaggi/rides/:rideId/request
* @desc Richiedi posto su un viaggio
* @access Private
*/
router.post('/rides/:rideId/request', authenticate, rideRequestController.createRequestFromRide);
/**
* @route GET /api/viaggi/rides/:id
* @desc Dettaglio singolo viaggio
@@ -99,6 +111,8 @@ router.delete('/rides/:id', authenticate, rideController.deleteRide);
*/
router.post('/rides/:id/complete', authenticate, rideController.completeRide);
router.post('/rides/:rideId/favorite', authenticate, rideController.toggleFavoriteRide);
// ============================================================
// 📊 WIDGET & STATS
// ============================================================
@@ -110,13 +124,6 @@ router.post('/rides/:id/complete', authenticate, rideController.completeRide);
*/
router.get('/widget/data', authenticate, rideController.getWidgetData);
/**
* @route GET /api/viaggi/stats/summary
* @desc Stats rapide per header widget (offerte, richieste, match)
* @access Public
*/
router.get('/stats/summary', authenticate, rideController.getStatsSummary);
/**
* @route GET /api/viaggi/cities/suggestions
* @desc Suggerimenti città per autocomplete (basato su viaggi esistenti)
@@ -434,8 +441,8 @@ router.get('/driver/user/:userId', async (req, res) => {
const idapp = req.query.idapp;
const { User } = require('../models/user');
const Ride = require('../models/Ride');
const Feedback = require('../models/Feedback');
const Ride = require('../models/viaggi/Ride');
const Feedback = require('../models/viaggi/Feedback');
// Dati utente
const user = await User.findById(userId).select(
@@ -463,8 +470,8 @@ router.get('/driver/user/:userId', async (req, res) => {
type: 'offer',
status: { $in: ['active', 'completed'] },
})
.select('departure destination dateTime status')
.sort({ dateTime: -1 })
.select('departure destination departureDate status')
.sort({ departureDate: -1 })
.limit(5);
// Statistiche feedback
@@ -1037,4 +1044,9 @@ router.delete('/upload/vehicle-photo', authenticate, async (req, res) => {
}
});
// ============================================
// EXPORT ROUTES
// ============================================
module.exports = router;