mudança
This commit is contained in:
@@ -442,15 +442,21 @@ export const AppProvider = ({ children }: { children: React.ReactNode }) => {
|
||||
};
|
||||
|
||||
const updateShopDetails: AppContextValue['updateShopDetails'] = async (shopId, payload) => {
|
||||
// Apenas enviar campos escalares para o Supabase (sem arrays de services/products/barbers)
|
||||
const { services, products, barbers, id: _id, ...dbPayload } = payload as any;
|
||||
// Remover arrays relacionais que não são colunas na tabela shops
|
||||
const { services, products, barbers, id: _id, imageUrl, ...rest } = payload as any;
|
||||
|
||||
// Construir o payload para o Supabase com os nomes de colunas corretos (snake_case)
|
||||
const dbPayload: any = { ...rest };
|
||||
if (imageUrl !== undefined) {
|
||||
dbPayload.image_url = imageUrl; // A coluna na BD chama-se image_url
|
||||
}
|
||||
|
||||
const { error } = await supabase.from('shops').update(dbPayload).eq('id', shopId);
|
||||
if (error) {
|
||||
console.error('updateShopDetails error:', error);
|
||||
}
|
||||
|
||||
// Sempre atualiza o estado local independentemente do resultado DB
|
||||
// Sempre atualiza o estado local (inclui imageUrl para o frontend)
|
||||
setState((s) => ({
|
||||
...s,
|
||||
shops: s.shops.map((shop) => (shop.id === shopId ? { ...shop, ...payload } : shop)),
|
||||
|
||||
Reference in New Issue
Block a user