UNPKG

skailan-core

Version:

Servicio de autenticación y multitenancy para Skailan.

67 lines 2.53 kB
import { PrismaClient } from "@prisma/client"; import { FeatureService } from "../services/FeatureService"; const prisma = new PrismaClient(); export class FeatureController { static async listFeatures(req, res) { try { const features = await FeatureService.listFeatures(prisma); res.json(features); } catch (error) { console.error("Error listing features:", error); res.status(500).json({ error: "Error interno del servidor" }); } } static async createFeature(req, res) { try { const { name, description } = req.body; if (!name) { res.status(400).json({ error: "El nombre es requerido" }); return; } const feature = await FeatureService.createFeature(prisma, name, description); res.status(201).json(feature); } catch (error) { console.error("Error creating feature:", error); res.status(500).json({ error: "Error interno del servidor" }); } } static async updateFeature(req, res) { try { const { id } = req.params; const { name, description } = req.body; if (!id) { res.status(400).json({ error: "ID es requerido" }); return; } const feature = await FeatureService.updateFeature(prisma, id, name, description); res.json(feature); } catch (error) { console.error("Error updating feature:", error); res.status(500).json({ error: "Error interno del servidor" }); } } static async deleteFeature(req, res) { try { const { id } = req.params; if (!id) { res.status(400).json({ error: "ID es requerido" }); return; } await FeatureService.deleteFeature(prisma, id); res.status(204).send(); } catch (error) { console.error("Error deleting feature:", error); res.status(500).json({ error: "Error interno del servidor" }); } } } // Exportar los métodos individualmente para las rutas export const listFeatures = FeatureController.listFeatures; export const createFeature = FeatureController.createFeature; export const updateFeature = FeatureController.updateFeature; export const deleteFeature = FeatureController.deleteFeature; //# sourceMappingURL=featureController.js.map