|
|
@@ -50,7 +50,8 @@ use App\Http\Controllers\RigaFatturazioneController;
|
|
50
|
50
|
use App\Http\Controllers\ListinoPrezziController;
|
|
51
|
51
|
use App\Http\Controllers\FatturaController;
|
|
52
|
52
|
use App\Http\Controllers\AsportoController;
|
|
53
|
|
-
|
|
|
53
|
+use App\Http\Controllers\CuponController;
|
|
|
54
|
+use App\Http\Controllers\EventoPiantinaController;
|
|
54
|
55
|
|
|
55
|
56
|
|
|
56
|
57
|
|
|
|
@@ -84,8 +85,11 @@ Route::group(['middleware' => ['role:superadmin']], function () {
|
|
84
|
85
|
Route::resource('fattura', FatturaController::class, ['only' => ['index', 'store']])->names(['index' => 'fattura.index', 'store' => 'fattura.store']);
|
|
85
|
86
|
Route::get('fattura/genera-fattura-mensile', [FatturaController::class, 'need_fatturazione_mensile'])->name('fattura.need_fatturazione_mensile');
|
|
86
|
87
|
Route::post('fattura/registra-pagamento', [FatturaController::class, 'registra_pagamento'])->name('fattura.registra_pagamento');
|
|
|
88
|
+
|
|
|
89
|
+ //FINE SUPERADMIN
|
|
87
|
90
|
});
|
|
88
|
91
|
|
|
|
92
|
+
|
|
89
|
93
|
//Listino prezzi per cliente
|
|
90
|
94
|
Route::get('listino-prezzi-cliente', [ListinoPrezziController::class, 'show_listino_cliente'])->name('listino-prezzi-cliente.show');
|
|
91
|
95
|
|
|
|
@@ -129,9 +133,22 @@ Route::group(['middleware' => ['role:superadmin']], function () {
|
|
129
|
133
|
|
|
130
|
134
|
// Evento
|
|
131
|
135
|
Route::resource('evento', EventoController::class, ['only' => ['index', 'store']]);
|
|
|
136
|
+ Route::get('evento/admin-show', [EventoController::class, 'admin_show'])->name('evento.admin.show');
|
|
132
|
137
|
Route::get('evento/gallery/edit', [EventoController::class, 'gallery_edit'])->name('evento.gallery.edit');
|
|
133
|
138
|
Route::post('evento/gallery/upload', [EventoController::class, 'gallery_upload'])->name('evento.gallery.upload');
|
|
134
|
139
|
Route::get('evento/edit', [EventoController::class, 'edit'])->name('evento.edit');
|
|
|
140
|
+ Route::get('evento/geocode-luogo', [EventoController::class, 'geocodeLuogo'])->name('evento.geocode-luogo');
|
|
|
141
|
+ Route::get('evento/crea', [EventoController::class, 'crea'])->name('evento.crea');
|
|
|
142
|
+ Route::put('evento/{evento_id}', [EventoController::class, 'update'])->name('evento.update');
|
|
|
143
|
+ Route::post('evento/{evento_id}/locandina', [EventoController::class, 'uploadLocandina'])->name('evento.locandina.upload');
|
|
|
144
|
+ Route::delete('evento/{evento_id}/locandina', [EventoController::class, 'destroyLocandina'])->name('evento.locandina.destroy');
|
|
|
145
|
+ Route::post('evento/{evento_id}/copertina', [EventoController::class, 'uploadCopertina'])->name('evento.copertina.upload');
|
|
|
146
|
+ Route::delete('evento/{evento_id}/copertina', [EventoController::class, 'destroyCopertina'])->name('evento.copertina.destroy');
|
|
|
147
|
+ Route::post('evento/preset-domande', [EventoController::class, 'applicaPresetDomande'])->name('evento.preset-domande');
|
|
|
148
|
+ Route::post('evento/domanda', [EventoController::class, 'storeDomanda'])->name('evento.domanda.store');
|
|
|
149
|
+ Route::put('evento/domanda/{domanda_id}', [EventoController::class, 'updateDomanda'])->name('evento.domanda.update');
|
|
|
150
|
+ Route::delete('evento/domanda/{domanda_id}', [EventoController::class, 'destroyDomanda'])->name('evento.domanda.destroy');
|
|
|
151
|
+ Route::post('evento/domanda/reorder', [EventoController::class, 'reorderDomande'])->name('evento.domanda.reorder');
|
|
135
|
152
|
|
|
136
|
153
|
// Evento Form
|
|
137
|
154
|
Route::resource('form-evento', EventoFormController::class, ['only' => ['index', 'store']])->names('form-evento');
|
|
|
@@ -144,9 +161,33 @@ Route::group(['middleware' => ['role:superadmin']], function () {
|
|
144
|
161
|
// Prenotazione
|
|
145
|
162
|
Route::resource('prenotazione', PrenotazioneController::class, ['only' => ['index', 'store']]);
|
|
146
|
163
|
Route::get('prenotazione/index/evento', [PrenotazioneController::class, 'index_evento'])->name('prenotazione.index.evento');
|
|
|
164
|
+ Route::get('prenotazione/nuova', [PrenotazioneController::class, 'nuova'])->name('prenotazione.nuova');
|
|
|
165
|
+ Route::post('prenotazione/nuova', [PrenotazioneController::class, 'storeNuova'])->name('prenotazione.storeNuova');
|
|
|
166
|
+ Route::get('prenotazione/edit/{prenotazione_id}', [PrenotazioneController::class, 'edit'])->name('prenotazione.edit');
|
|
|
167
|
+ Route::post('prenotazione/edit/{prenotazione_id}', [PrenotazioneController::class, 'update'])->name('prenotazione.update');
|
|
147
|
168
|
Route::get('prenotazione/show', [PrenotazioneController::class, 'show'])->name('prenotazione.show');
|
|
148
|
169
|
Route::get('prenotazione/report/index', [PrenotazioneController::class, 'report_index'])->name('prenotazione.report.index');
|
|
149
|
|
-
|
|
|
170
|
+ Route::get('prenotazione/report/print', [PrenotazioneController::class, 'report_print'])->name('prenotazione.report.print');
|
|
|
171
|
+ Route::post('prenotazione/conferma' , [PrenotazioneController::class , 'conferma'])->name('prenotazione.conferma');
|
|
|
172
|
+ Route::post('prenotazione/annulla' , [PrenotazioneController::class , 'annulla'])->name('prenotazione.annulla');
|
|
|
173
|
+
|
|
|
174
|
+ // Piantina / sala / tavoli evento
|
|
|
175
|
+ Route::get('evento/piantina', [EventoPiantinaController::class, 'edit'])->name('evento.piantina.edit');
|
|
|
176
|
+ Route::post('evento/{evento_id}/piantina/sala', [EventoPiantinaController::class, 'storeSala'])->name('evento.piantina.sala.store');
|
|
|
177
|
+ Route::put('evento/{evento_id}/piantina/sala', [EventoPiantinaController::class, 'updateSala'])->name('evento.piantina.sala.update');
|
|
|
178
|
+ Route::delete('evento/{evento_id}/piantina/sala/{sala_id}', [EventoPiantinaController::class, 'destroySala'])->name('evento.piantina.sala.destroy');
|
|
|
179
|
+ Route::post('evento/{evento_id}/piantina/immagine', [EventoPiantinaController::class, 'uploadPiantina'])->name('evento.piantina.immagine.upload');
|
|
|
180
|
+ Route::delete('evento/{evento_id}/piantina/immagine', [EventoPiantinaController::class, 'destroyPiantina'])->name('evento.piantina.immagine.destroy');
|
|
|
181
|
+ Route::post('evento/{evento_id}/piantina/tavolo', [EventoPiantinaController::class, 'storeTavolo'])->name('evento.piantina.tavolo.store');
|
|
|
182
|
+ Route::put('evento/{evento_id}/piantina/tavolo/{tavolo_id}', [EventoPiantinaController::class, 'updateTavolo'])->name('evento.piantina.tavolo.update');
|
|
|
183
|
+ Route::delete('evento/{evento_id}/piantina/tavolo/{tavolo_id}', [EventoPiantinaController::class, 'destroyTavolo'])->name('evento.piantina.tavolo.destroy');
|
|
|
184
|
+ Route::put('evento/{evento_id}/piantina/tavoli/batch', [EventoPiantinaController::class, 'batchTavoli'])->name('evento.piantina.tavolo.batch');
|
|
|
185
|
+ Route::get('evento/piantina/assegnazioni', [EventoPiantinaController::class, 'assegnazioni'])->name('evento.piantina.assegnazioni');
|
|
|
186
|
+ Route::post('evento/{evento_id}/piantina/assegna', [EventoPiantinaController::class, 'assegna'])->name('evento.piantina.assegna');
|
|
|
187
|
+ Route::post('evento/{evento_id}/piantina/assegna-automatico', [EventoPiantinaController::class, 'assegnaAutomatico'])->name('evento.piantina.assegna.automatico');
|
|
|
188
|
+ Route::delete('evento/{evento_id}/piantina/assegnazione/{assegnazione_id}', [EventoPiantinaController::class, 'rimuoviAssegnazione'])->name('evento.piantina.assegnazione.destroy');
|
|
|
189
|
+
|
|
|
190
|
+
|
|
150
|
191
|
// Fornitore
|
|
151
|
192
|
Route::resource('fornitore', FornitoreController::class, ['only' => ['index', 'store']]);
|
|
152
|
193
|
Route::get('fornitore/show', [FornitoreController::class, 'show'])->name('fornitore.show');
|
|
|
@@ -197,19 +238,22 @@ Route::group(['middleware' => ['role:superadmin']], function () {
|
|
197
|
238
|
|
|
198
|
239
|
// Prima Nota
|
|
199
|
240
|
Route::get('prima-nota/statistiche', [PrimaNotaController::class, 'statistiche'])->name('prima-nota.statistiche');
|
|
|
241
|
+ Route::get('prima-nota/show', [PrimaNotaController::class, 'show'])->name('prima-nota.show');
|
|
200
|
242
|
Route::resource('prima-nota', PrimaNotaController::class, ['only' => ['index', 'store']])->names('prima-nota');
|
|
201
|
243
|
|
|
202
|
244
|
// Pagamento
|
|
203
|
245
|
Route::resource('pagamento', PagamentoController::class, ['only' => ['index', 'store']]);
|
|
204
|
246
|
Route::get('pagamento/show', [PagamentoController::class, 'show'])->name('pagamento.show');
|
|
|
247
|
+ Route::get('pagamento/show_modal', [PagamentoController::class, 'show_modal'])->name('pagamento.show_modal');
|
|
|
248
|
+ Route::post('pagamento/storna-pagamento', [PagamentoController::class, 'stornaPagamento'])->name('pagamento.storna-pagamento');
|
|
205
|
249
|
|
|
206
|
250
|
// Bilancio
|
|
207
|
251
|
Route::resource('bilancio', BilancioController::class, ['only' => ['index', 'store']]);
|
|
208
|
252
|
Route::get('bilancio/oggi', [BilancioController::class, 'oggi'])->name('bilancio.oggi');
|
|
209
|
253
|
|
|
210
|
254
|
// Report
|
|
211
|
|
- Route::resource('report', ReportController::class, ['only' => ['index', 'store']]);
|
|
212
|
|
- Route::get('report/movimenti', [ReportController::class, 'movimenti'])->name('report.movimenti');
|
|
|
255
|
+ Route::resource('report', ReportController::class, ['only' => ['index']]);
|
|
|
256
|
+ Route::get('report/tab/{tab}', [ReportController::class, 'tab'])->name('report.tab');
|
|
213
|
257
|
Route::get('report/export-pdf', [ReportController::class, 'exportPdf'])->name('report.export-pdf');
|
|
214
|
258
|
|
|
215
|
259
|
|
|
|
@@ -311,6 +355,17 @@ Route::post('asporto/postazione/chiamata/{asporto}/completa', [AsportoController
|
|
311
|
355
|
Route::get('asporto/postazione/ritiro', [AsportoController::class, 'ritiro'])->name('asporto.postazione.ritiro');
|
|
312
|
356
|
Route::post('asporto/postazione/ritiro/{asporto}/completa', [AsportoController::class, 'completaRitiro'])->name('asporto.postazione.ritiro.completa');
|
|
313
|
357
|
Route::get('asporto/postazione/{stazione}/sync', [AsportoController::class, 'sync'])->name('asporto.postazione.sync');
|
|
|
358
|
+
|
|
|
359
|
+// Cupon
|
|
|
360
|
+Route::resource('cupon', CuponController::class, ['only' => ['index', 'store']]);
|
|
|
361
|
+Route::get('cupon/stampa-cupon', [CuponController::class, 'stampaCupon'])->name('cupon.stampa');
|
|
|
362
|
+Route::post('cupon/genera-batch', [CuponController::class, 'generaBatch'])->name('cupon.genera-batch');
|
|
|
363
|
+Route::post('cupon/check', [CuponController::class, 'check'])->name('cupon.check');
|
|
|
364
|
+Route::get('cupon/stampa-cupon/pdf', [CuponController::class, 'pdfCupon'])->name('cupon.stampa.pdf');
|
|
|
365
|
+Route::get('cupon/stampa-cupon/pdf-personalizzato', [CuponController::class, 'pdfCuponPersonalizzato'])->name('cupon.stampa.pdf-personalizzato');
|
|
|
366
|
+Route::post('cupon/template/upload', [CuponController::class, 'uploadCuponTemplate'])->name('cupon.template.upload');
|
|
|
367
|
+Route::post('cupon/stampa-cupon/termica', [CuponController::class, 'printCupon'])->name('cupon.stampa.termica');
|
|
|
368
|
+Route::get('cupon/checklist-cupon', [CuponController::class, 'checklistCupon'])->name('cupon.checklist-cupon');
|
|
314
|
369
|
});
|
|
315
|
370
|
|
|
316
|
371
|
|
|
|
@@ -321,9 +376,16 @@ Route::get('asporto/postazione/{stazione}/sync', [AsportoController::class, 'syn
|
|
321
|
376
|
Route::prefix('consulta')->group(function () {
|
|
322
|
377
|
// Scontrino per cliente
|
|
323
|
378
|
Route::get('index', [ConsultaController::class, 'index'])->name('consulta.index');
|
|
324
|
|
-Route::get('scontrino/show/{ordine_id}', [ConsultaController::class, 'scontrino_show'])->name('consulta.scontrino.show');
|
|
325
|
|
-Route::get('comanda/show/{ordine_id}', [ConsultaController::class, 'comanda_show'])->name('consulta.comanda.show');
|
|
326
|
|
-Route::get('prenotazione/show', [ConsultaController::class, 'prenotazione_show'])->name('consulta.prenotazione.show');
|
|
|
379
|
+Route::get('scontrino/show/{ordine_codice}', [ConsultaController::class, 'scontrino_show'])->name('consulta.scontrino.show');
|
|
|
380
|
+Route::get('comanda/show/{ordine_codice}', [ConsultaController::class, 'comanda_show'])->name('consulta.comanda.show');
|
|
|
381
|
+Route::get('prenotazione/show/{codice}', [ConsultaController::class, 'prenotazione_show'])->middleware('throttle:5,1')->name('consulta.prenotazione.show');
|
|
|
382
|
+// Route::get('prenotazione/calendario', [ConsultaController::class, 'prenotazione_calendario'])->name('consulta.prenotazione.calendario');
|
|
|
383
|
+Route::post('prenotazione/richiedi-modifica', [ConsultaController::class, 'prenotazione_richiedi_modifica'])->middleware('throttle:5,1')->name('consulta.prenotazione.richiedi-modifica');
|
|
|
384
|
+Route::get('prenotazione/modifica/apri', [ConsultaController::class, 'prenotazione_modifica_apri'])->name('consulta.prenotazione.modifica.apri');
|
|
|
385
|
+Route::get('prenotazione/modifica', [ConsultaController::class, 'prenotazione_modifica_form'])->name('consulta.prenotazione.modifica.form');
|
|
|
386
|
+Route::post('prenotazione/modifica', [ConsultaController::class, 'prenotazione_modifica_salva'])->name('consulta.prenotazione.modifica.salva');
|
|
|
387
|
+Route::get('prenotazione/annulla', [ConsultaController::class, 'prenotazione_annulla_form'])->name('consulta.prenotazione.annulla.form');
|
|
|
388
|
+Route::post('prenotazione/annulla', [ConsultaController::class, 'prenotazione_annulla_conferma'])->name('consulta.prenotazione.annulla.conferma');
|
|
327
|
389
|
Route::get('monitor/check-reload', [MonitorController::class, 'checkReload'])->name('consulta.monitor.check-reload');
|
|
328
|
390
|
|
|
329
|
391
|
//Listino Prezzi pubblico
|
|
|
@@ -334,12 +396,17 @@ Route::get('listino-prezzi/pdf', [ListinoPrezziController::class, 'export_listin
|
|
334
|
396
|
//Rotte per clienti, sena auth
|
|
335
|
397
|
Route::prefix('cliente')->group(function(){
|
|
336
|
398
|
// Attività
|
|
337
|
|
- Route::get('attivita/show', [AttivitaController::class, 'show_public'])->name('cliente.attivita.show');
|
|
|
399
|
+ Route::get('attivita/show/{slug}', [AttivitaController::class, 'show_public'])->name('cliente.attivita.show');
|
|
|
400
|
+
|
|
|
401
|
+ // Prenotazione / Evento (pubblico: identificati da codice)
|
|
|
402
|
+ Route::get('evento/{codice}', [EventoController::class, 'show'])->name('evento.show');
|
|
|
403
|
+ Route::get('prenota/{codice}', [PrenotazioneController::class, 'prenota_form'])->name('prenotazone.prenota_form');
|
|
|
404
|
+ Route::post('prenota/{codice}', [PrenotazioneController::class, 'prenota'])->name('prenotazone.prenota');
|
|
|
405
|
+
|
|
|
406
|
+ // Legacy query ?evento_id=… → redirect al codice
|
|
|
407
|
+ Route::get('evento/show', [EventoController::class, 'showLegacy'])->name('evento.show.legacy');
|
|
|
408
|
+ Route::get('prenota/form', [PrenotazioneController::class, 'prenotaFormLegacy'])->name('prenotazone.prenota_form.legacy');
|
|
338
|
409
|
|
|
339
|
|
- // Prenotazione
|
|
340
|
|
- Route::get('prenota/form' , [PrenotazioneController::class , 'prenota_form'])->name('prenotazone.prenota_form');
|
|
341
|
|
- Route::post('prenota' , [PrenotazioneController::class , 'prenota'])->name('prenotazone.prenota');
|
|
342
|
|
- Route::get('evento/show', [EventoController::class, 'show'])->name('evento.show');
|
|
343
|
410
|
Route::get('testi/show', [TestiController::class, 'show_cliente'])->name('testi.show_cliente');
|
|
344
|
411
|
Route::get('punto-vendita', [PuntoVenditaController::class, 'show_cliente'])->name('punto-vendita.cliente.testi.show');
|
|
345
|
412
|
|
|
|
@@ -347,12 +414,12 @@ Route::prefix('cliente')->group(function(){
|
|
347
|
414
|
Route::post('avvisami-quando-il-piatto-e-pronto', [RigaOrdineNotificaController::class, 'salva_fcm_token'])->name('riga-ordine-notifica.salva-fcm-token');
|
|
348
|
415
|
|
|
349
|
416
|
// Saltacoda
|
|
350
|
|
- Route::get('saltacoda/show', [SaltacodaController::class, 'show'])->name('cliente.saltacoda.show');
|
|
351
|
|
- Route::post('saltacoda/pre-ordine/salva', [SaltacodaController::class, 'pre_ordine_salva'])->name('saltacoda.pre-ordine.salva');
|
|
352
|
|
- Route::get('saltacoda/pre-ordine/show', [SaltacodaController::class, 'pre_ordine_show'])->name('saltacoda.pre-ordine.show');
|
|
|
417
|
+ Route::get('saltacoda/show/{slug}', [SaltacodaController::class, 'show'])->middleware('throttle:5,1')->name('cliente.saltacoda.show');
|
|
|
418
|
+ Route::post('saltacoda/pre-ordine/salva', [SaltacodaController::class, 'pre_ordine_salva'])->middleware('throttle:5,1')->name('saltacoda.pre-ordine.salva');
|
|
|
419
|
+ Route::get('saltacoda/pre-ordine/show', [SaltacodaController::class, 'pre_ordine_show'])->middleware('throttle:5,1')->name('saltacoda.pre-ordine.show');
|
|
353
|
420
|
|
|
354
|
421
|
// Tombola (pubblico, per QR)
|
|
355
|
|
- Route::get('tombola/{attivita_id}/estratti', [TombolaController::class, 'estratti'])->name('cliente.tombola.estratti');
|
|
|
422
|
+ Route::get('tombola/{attivita_id}/estratti', [TombolaController::class, 'estratti'])->middleware('throttle:2,1')->name('cliente.tombola.estratti');
|
|
356
|
423
|
|
|
357
|
424
|
// Prenotazione Tavolo
|
|
358
|
425
|
Route::get('prenota/tavolo' , [PrenotazioneTavoloController::class , 'cliente_index'])->name('cliente.prenotazione-tavolo.index');
|