From e8ecac05d8e73c42b0ed74638ac946e44c729a7c Mon Sep 17 00:00:00 2001 From: admtracksteel Date: Fri, 3 Apr 2026 20:38:03 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20Auto-deploy:=20GPI=20atualizado?= =?UTF-8?q?=20em=2003/04/2026=2020:38:03?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controllers/geometryTypeController.ts | 40 +++++++++++-------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/src/server/controllers/geometryTypeController.ts b/src/server/controllers/geometryTypeController.ts index 41e7bd2..e0348d1 100644 --- a/src/server/controllers/geometryTypeController.ts +++ b/src/server/controllers/geometryTypeController.ts @@ -1,26 +1,27 @@ import { Request, Response } from 'express'; import { supabase } from '../config/supabase.js'; +import { toCamelCase, toSnakeCase } from '../utils/caseMapper.js'; const DEFAULT_TYPES = [ - { name: 'Guarda-corpo/escada', efficiency_loss: 20 }, - { name: 'Vigas leves', efficiency_loss: 20 }, - { name: 'Vigas médias', efficiency_loss: 20 }, - { name: 'Vigas pesadas', efficiency_loss: 20 }, - { name: 'Chaparia comum', efficiency_loss: 20 }, - { name: 'Chapas de pisos (>0,5m²)', efficiency_loss: 20 }, - { name: 'Calhas', efficiency_loss: 20 }, - { name: 'Cantoneiras', efficiency_loss: 20 }, - { name: 'Telhas', efficiency_loss: 20 }, - { name: 'Tubulações (ret/red) <100mm', efficiency_loss: 20 }, - { name: 'Tubulações (ret/red) >100mm', efficiency_loss: 20 }, - { name: 'Peças diversas (outras)', efficiency_loss: 20 } + { name: 'Guarda-corpo/escada', efficiencyLoss: 20 }, + { name: 'Vigas leves', efficiencyLoss: 20 }, + { name: 'Vigas médias', efficiencyLoss: 20 }, + { name: 'Vigas pesadas', efficiencyLoss: 20 }, + { name: 'Chaparia comum', efficiencyLoss: 20 }, + { name: 'Chapas de pisos (>0,5m²)', efficiencyLoss: 20 }, + { name: 'Calhas', efficiencyLoss: 20 }, + { name: 'Cantoneiras', efficiencyLoss: 20 }, + { name: 'Telhas', efficiencyLoss: 20 }, + { name: 'Tubulações (ret/red) <100mm', efficiencyLoss: 20 }, + { name: 'Tubulações (ret/red) >100mm', efficiencyLoss: 20 }, + { name: 'Peças diversas (outras)', efficiencyLoss: 20 } ]; export const getAllnames = async (req: Request, res: Response) => { try { const { data, error } = await supabase.from('geometry_types').select('*'); if (error && error.code !== '42P01') throw error; - res.json(data || []); + res.json(toCamelCase(data || [])); } catch (error: unknown) { res.json(DEFAULT_TYPES); } @@ -36,13 +37,18 @@ export const restoreDefaults = async (req: Request, res: Response) => { export const createType = async (req: Request, res: Response) => { try { + const payload = toSnakeCase({ + ...req.body, + organizationId: (req as any).appUser?.organizationId + }); + const { data, error } = await supabase .from('geometry_types') - .insert({ ...req.body, organization_id: req.appUser?.organizationId }) + .insert(payload) .select() .single(); if (error) throw error; - res.status(201).json(data); + res.status(201).json(toCamelCase(data)); } catch (error: unknown) { res.json(req.body); } @@ -52,12 +58,12 @@ export const updateType = async (req: Request, res: Response) => { try { const { data, error } = await supabase .from('geometry_types') - .update(req.body) + .update(toSnakeCase(req.body)) .eq('id', req.params.id) .select() .single(); if (error) throw error; - res.json(data); + res.json(toCamelCase(data)); } catch (error: unknown) { res.json(req.body); }