added settings table api

This commit is contained in:
Patrick Alvin Alcala 2025-03-27 10:28:17 +08:00
parent 023db31270
commit 4bafd53916
3 changed files with 54 additions and 1 deletions

View file

@ -8,7 +8,6 @@ class Carts {
Future<List> getCart(String uuid) async {
try {
final data = await _supabase.from('carts').select('carts_uuid').eq('user_id', uuid);
log('data: $data');
return data.toList();
} catch (e) {
return [];

51
lib/tables/settings.dart Normal file
View file

@ -0,0 +1,51 @@
import 'package:supabase_flutter/supabase_flutter.dart';
import 'package:uuid/uuid.dart';
class Carts {
final SupabaseClient _supabase = Supabase.instance.client;
Future<List> getSettings(String user) async {
try {
final data = await _supabase.from('settings').select('language, name').eq('user_id', user);
return data.toList();
} catch (e) {
return [];
}
}
Future<bool> postSettings(String user, String language, String name) async {
final uuid = Uuid().v4();
final setting = {
'settings_uuid': uuid,
'user_id': user,
'language': language,
'name': name,
};
try {
await _supabase.from('settings').insert(setting);
return true;
} catch (e) {
return false;
}
}
Future<bool> updateLanguage(String uuid, String language) async {
try {
await _supabase.from('settings').update({'language': language}).eq('settings_uuid', uuid).select();
return true;
} catch (e) {
return false;
}
}
Future<bool> updateName(String uuid, String name) async {
try {
await _supabase.from('settings').update({'name': name}).eq('settings_uuid', uuid).select();
return true;
} catch (e) {
return false;
}
}
}