refactor nomi tabelle
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flux/core/blocs/session/session_cubit.dart';
|
||||
import 'package:flux/core/enums_and_consts/consts.dart';
|
||||
import 'package:flux/features/settings/document_sequence/data/document_sequence_repository.dart';
|
||||
import 'package:flux/features/settings/document_sequence/models/document_sequence_model.dart';
|
||||
import 'package:flux/features/tickets/models/ticket_model.dart';
|
||||
@@ -13,7 +14,7 @@ class TicketRepository {
|
||||
|
||||
TicketRepository();
|
||||
|
||||
static const String _tableName = 'ticket';
|
||||
static const String _tableName = Tables.tickets;
|
||||
|
||||
// --- RECUPERO PAGINATO CON FILTRI E JOIN DEI TICKET DI UNO STORE ---
|
||||
Future<List<TicketModel>> fetchStoreTickets({
|
||||
@@ -29,14 +30,14 @@ class TicketRepository {
|
||||
var query = _supabase
|
||||
.from(_tableName)
|
||||
.select('''
|
||||
*,
|
||||
customer (*),
|
||||
shipping_documents (*, attachment (*)),
|
||||
created_by:staff_member!ticket_staff_id_fkey (*),
|
||||
assigned_to:staff_member!ticket_assigned_to_id_fkey (*),
|
||||
target_model:model!ticket_model_id_1_fkey (*),
|
||||
source_model:model!ticket_model_id_2_fkey (*)
|
||||
''')
|
||||
*,
|
||||
${Tables.customers} (*),
|
||||
${Tables.shippingDocuments} (*, ${Tables.attachments} (*)),
|
||||
created_by:${Tables.staffMembers}!ticket_staff_id_fkey (*),
|
||||
assigned_to:${Tables.staffMembers}!ticket_assigned_to_id_fkey (*),
|
||||
target_model:${Tables.models}!ticket_model_id_1_fkey (*),
|
||||
source_model:${Tables.models}!ticket_model_id_2_fkey (*)
|
||||
''')
|
||||
.eq('store_id', GetIt.I.get<SessionCubit>().state.currentStore!.id!);
|
||||
|
||||
// Filtro Range Date
|
||||
@@ -88,12 +89,12 @@ class TicketRepository {
|
||||
.from(_tableName)
|
||||
.select('''
|
||||
*,
|
||||
customer (*),
|
||||
shipping_documents (*, attachment (*)),
|
||||
created_by:staff_member!ticket_staff_id_fkey (*),
|
||||
assigned_to:staff_member!ticket_assigned_to_id_fkey (*),
|
||||
target_model:model!ticket_model_id_1_fkey (*),
|
||||
source_model:model!ticket_model_id_2_fkey (*)
|
||||
${Tables.customers} (*),
|
||||
${Tables.shippingDocuments} (*, ${Tables.attachments} (*)),
|
||||
created_by:${Tables.staffMembers}!ticket_staff_id_fkey (*),
|
||||
assigned_to:${Tables.staffMembers}!ticket_assigned_to_id_fkey (*),
|
||||
target_model:${Tables.models}!ticket_model_id_1_fkey (*),
|
||||
source_model:${Tables.models}!ticket_model_id_2_fkey (*)
|
||||
''')
|
||||
.eq('company_id', GetIt.I.get<SessionCubit>().state.company!.id!);
|
||||
|
||||
@@ -199,12 +200,12 @@ class TicketRepository {
|
||||
.from(_tableName)
|
||||
.select('''
|
||||
*,
|
||||
customer (*),
|
||||
target_model:model!ticket_model_id_1_fkey (*),
|
||||
source_model:model!ticket_model_id_2_fkey (*),
|
||||
created_by:staff_member!ticket_staff_id_fkey (*),
|
||||
assigned_to:staff_member!ticket_assigned_to_id_fkey (*),
|
||||
shipping_documents (*, attachment (*))
|
||||
${Tables.customers} (*),
|
||||
target_model:${Tables.models}!ticket_model_id_1_fkey (*),
|
||||
source_model:${Tables.models}!ticket_model_id_2_fkey (*),
|
||||
created_by:${Tables.staffMembers}!ticket_staff_id_fkey (*),
|
||||
assigned_to:${Tables.staffMembers}!ticket_assigned_to_id_fkey (*),
|
||||
${Tables.shippingDocuments} (*, ${Tables.attachments} (*))
|
||||
''')
|
||||
.eq('id', ticketId)
|
||||
.single();
|
||||
@@ -215,30 +216,6 @@ class TicketRepository {
|
||||
}
|
||||
}
|
||||
|
||||
// Future<String> generateTicketReference(String companyId) async {
|
||||
// final response = await Supabase.instance.client.rpc(
|
||||
// 'get_next_document_number',
|
||||
// params: {'p_company_id': companyId, 'p_doc_type': 'ticket'},
|
||||
// );
|
||||
|
||||
// // Estraiamo i dati dal JSON
|
||||
// final int nextValue = response['next_value'];
|
||||
// final String prefix = response['prefix'] ?? '';
|
||||
|
||||
// final year = DateTime.now().year; // 2026
|
||||
|
||||
// // Formattazione con zeri iniziali (es. 000125)
|
||||
// final paddedNumber = nextValue.toString().padLeft(6, '0');
|
||||
|
||||
// // Costruiamo la stringa. Se c'è un prefisso mette "TCK-2026-000125",
|
||||
// // altrimenti solo "2026-000125"
|
||||
// if (prefix.isNotEmpty) {
|
||||
// return '$prefix-$year-$paddedNumber';
|
||||
// } else {
|
||||
// return '$year-$paddedNumber';
|
||||
// }
|
||||
// }
|
||||
|
||||
/// Salva il ticket
|
||||
Future<TicketModel> insertTicket(TicketModel ticket) async {
|
||||
if (ticket.id != null) {
|
||||
|
||||
Reference in New Issue
Block a user