const express = require('express');
const router = express.Router();

// Importă conexiunea la baza de date
const pool = require('../db'); 

// Importă middleware-ul de autentificare
const authenticateToken = require('../middleware/auth');

router.get('/select_firma', async (req, res) => {
    const sql = 'SELECT * FROM firma WHERE id_firma = "1";';

    try {
        const [results] = await pool.promise().query(sql);
        res.json(results);
    } catch (err) {
        console.error('Database error:', err);
        res.status(500).json({ error: 'Database error' });
    }
});
router.get('/select_firma/:id_firma', async (req, res) => {
    const { id_firma } = req.params;  // Preia id_furnizor din parametrii rutei

    if (!id_firma) {
        return res.status(400).json({ error: 'ID Firma is required' });
    }

    const sql = 'SELECT * FROM firma WHERE id_firma = ?';

    try {
        const [results] = await pool.promise().query(sql, [id_firma]);
        if (results.length === 0) {
            return res.status(404).json({ error: 'Firma not found' });
        }
        res.json(results[0]);  // Returnează doar un singur obiect, nu un array
    } catch (err) {
        console.error('Database error:', err);
        res.status(500).json({ error: 'Database error' });
    }
});
router.post('/', async (req, res) => {
    // Extragem câmpurile din corpul cererii
    const { denumire, cui, codInmatriculare, judet, adresa, tva, tel, contBancar } = req.body;
  
    // Poți adăuga validări aici dacă este necesar
  
    // Query pentru update - actualizează doar firma cu id_firma = 1
    const sql = `
      UPDATE firma
      SET denumire = ?,
          cui = ?,
          cod_inmatriculare = ?,
          judet = ?,
          adresa = ?,
          tva = ?,
          tel = ?,
          cont_bancar = ?
      WHERE id_firma = 1
    `;
  
    try {
      const [result] = await pool.promise().query(sql, [denumire, cui, codInmatriculare, judet, adresa, tva, tel, contBancar]);
      // Dacă update-ul a avut succes, returnează un mesaj de succes
      res.json({ message: 'Firma actualizată cu succes', affectedRows: result.affectedRows });
    } catch (err) {
      console.error('Database error:', err);
      res.status(500).json({ error: 'Eroare la actualizarea firmei' });
    }
  });

module.exports = router;
