40097-vm/configuracion_rentabilidad.php
2026-05-22 18:19:30 +00:00

89 lines
3.9 KiB
PHP

<?php
session_start();
require_once 'db/config.php';
// Verificar si el usuario es Administrador
if (!isset($_SESSION['user_id']) || ($_SESSION['user_role'] !== 'admin' && $_SESSION['user_role'] !== 'Administrador')) {
header("Location: login.php");
exit;
}
$db = db();
$message = '';
// Crear tabla de configuración si no existe
$db->exec("CREATE TABLE IF NOT EXISTS configuracion_costos (
id INT AUTO_INCREMENT PRIMARY KEY,
clave VARCHAR(50) UNIQUE,
valor DECIMAL(10,2)
)");
// Valores por defecto
$defaults = [
'envio_contraentrega' => 10.00,
'envio_agencia' => 12.00,
'comision_venta' => 5.00,
'publicidad_diaria' => 50.00
];
foreach ($defaults as $clave => $valor) {
$stmt = $db->prepare("INSERT IGNORE INTO configuracion_costos (clave, valor) VALUES (?, ?)");
$stmt->execute([$clave, $valor]);
}
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
foreach ($_POST['costos'] as $clave => $valor) {
$stmt = $db->prepare("UPDATE configuracion_costos SET valor = ? WHERE clave = ?");
$stmt->execute([$valor, $clave]);
}
$message = '<div class="alert alert-success">Configuración actualizada correctamente.</div>';
}
$stmt = $db->query("SELECT clave, valor FROM configuracion_costos");
$config = $stmt->fetchAll(PDO::FETCH_KEY_PAIR);
$pageTitle = 'Configuración de Rentabilidad';
include 'layout_header.php';
?>
<div class="container-fluid mt-4">
<div class="row">
<div class="col-md-8 offset-md-2">
<div class="card shadow">
<div class="card-header bg-primary text-white">
<h4 class="mb-0"><i class="fas fa-calculator me-2"></i>Configuración de Costos y Rentabilidad</h4>
</div>
<div class="card-body">
<?php echo $message; ?>
<form method="POST">
<div class="row">
<div class="col-md-6 mb-3">
<label class="form-label">Costo Envío Contraentrega Estándar (S/)</label>
<input type="number" step="0.01" name="costos[envio_contraentrega]" class="form-control" value="<?php echo $config['envio_contraentrega']; ?>">
</div>
<div class="col-md-6 mb-3">
<label class="form-label">Costo Envío Agencia Estándar (S/)</label>
<input type="number" step="0.01" name="costos[envio_agencia]" class="form-control" value="<?php echo $config['envio_agencia']; ?>">
</div>
<div class="col-md-6 mb-3">
<label class="form-label">Comisión por Venta Estándar (S/)</label>
<input type="number" step="0.01" name="costos[comision_venta]" class="form-control" value="<?php echo $config['comision_venta']; ?>">
</div>
<div class="col-md-6 mb-3">
<label class="form-label">Presupuesto Publicidad Diario Estimado (S/)</label>
<input type="number" step="0.01" name="costos[publicidad_diaria]" class="form-control" value="<?php echo $config['publicidad_diaria']; ?>">
</div>
</div>
<hr>
<div class="alert alert-info">
<i class="fas fa-info-circle me-2"></i> Estos valores se utilizarán para calcular la rentabilidad automática en los reportes, sin necesidad de llenar datos en cada pedido.
</div>
<button type="submit" class="btn btn-primary w-100">Guardar Configuración</button>
</form>
</div>
</div>
</div>
</div>
</div>
<?php include 'layout_footer.php'; ?>