<?php
session_start();
require_once(__DIR__ . '/../db/conexion.php');
header('Content-Type: application/json');

if (!isset($_SESSION['rol']) || !in_array($_SESSION['rol'], ['contabilidad', 'adminTi'])) {
  echo json_encode(['success' => false, 'message' => 'Acceso denegado']);
  exit;
}

$curp = isset($_POST['curp']) ? trim($_POST['curp']) : '';
$field = isset($_POST['field']) ? trim($_POST['field']) : '';
$value = isset($_POST['value']) ? trim($_POST['value']) : '';

if (!$curp || !$field) {
  echo json_encode(['success' => false, 'message' => 'Datos incompletos']);
  exit;
}

// Campos que van en Plantilla_datos_financieros
$financieros = ['Numero_cuenta', 'Cuenta_clave', 'Folio_idse', 'Fecha_alta_idse', 'Fonacot'];
// Campos que van en Plantilla
$plantilla = ['NOMBRES', 'APELLIDO PATERNO', 'APELLIDO MATERNO', 'CURP', 'RFC', 'NSS', 'estatusConta'];

if (in_array($field, $financieros)) {
  // Actualizar en Plantilla_datos_financieros
  $sql = "UPDATE Plantilla_datos_financieros SET `$field` = ? WHERE CURP = ?";
  $stmt = $conn->prepare($sql);
  $stmt->bind_param('ss', $value, $curp);
} elseif (in_array($field, $plantilla)) {
  // Actualizar en Plantilla
  $sql = "UPDATE Plantilla SET `$field` = ? WHERE CURP = ?";
  $stmt = $conn->prepare($sql);
  $stmt->bind_param('ss', $value, $curp);
} else {
  echo json_encode(['success' => false, 'message' => 'Campo no permitido']);
  exit;
}

// No permitir actualización de estatusConta desde el backend
if ($field === 'estatusConta') {
  echo json_encode(['success' => false, 'message' => 'No está permitido modificar el estatus de contabilidad.']);
  exit;
}

if ($stmt->execute()) {
  echo json_encode(['success' => true]);
} else {
  echo json_encode(['success' => false, 'message' => 'Error al actualizar']);
}
$stmt->close();
$conn->close();
