97 lines
4.2 KiB
PHP
97 lines
4.2 KiB
PHP
<?php
|
|
require_once 'includes/header.php';
|
|
|
|
// Verificar si se proporcionó un ID
|
|
if (!isset($_GET['id']) || empty($_GET['id'])) {
|
|
header('Location: liquidaciones.php?error=invalid_id');
|
|
exit();
|
|
}
|
|
|
|
$movimiento_id = $_GET['id'];
|
|
$pdo = db();
|
|
|
|
// Obtener los datos de la liquidación actual
|
|
$stmt = $pdo->prepare("SELECT * FROM movimientos WHERE id = ? AND tipo = 'Salida'");
|
|
$stmt->execute([$movimiento_id]);
|
|
$liquidacion = $stmt->fetch(PDO::FETCH_ASSOC);
|
|
|
|
if (!$liquidacion) {
|
|
header('Location: liquidaciones.php?error=not_found');
|
|
exit();
|
|
}
|
|
|
|
// Obtener productos y ciudades para los menús desplegables
|
|
$productos = $pdo->query("SELECT id, nombre FROM productos ORDER BY nombre")->fetchAll(PDO::FETCH_ASSOC);
|
|
$ciudades = $pdo->query("SELECT id, nombre FROM ciudades ORDER BY nombre")->fetchAll(PDO::FETCH_ASSOC);
|
|
|
|
?>
|
|
|
|
<h1 class="mb-4">Editar Liquidación</h1>
|
|
|
|
<?php
|
|
if (isset($_GET['error'])) {
|
|
$error_msg = 'Ocurrió un error.';
|
|
if ($_GET['error'] === 'missing_fields') {
|
|
$error_msg = 'Por favor, complete todos los campos requeridos.';
|
|
}
|
|
echo '<div class="alert alert-danger">' . $error_msg . '</div>';
|
|
}
|
|
?>
|
|
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<form action="handle_editar_liquidacion.php" method="POST">
|
|
<input type="hidden" name="movimiento_id" value="<?php echo htmlspecialchars($liquidacion['id']); ?>">
|
|
|
|
<div class="mb-3">
|
|
<label for="producto_id" class="form-label">Producto</label>
|
|
<select class="form-control" id="producto_id" name="producto_id" required>
|
|
<option value="">Seleccione un producto</option>
|
|
<?php foreach ($productos as $producto): ?>
|
|
<option value="<?php echo $producto['id']; ?>" <?php echo ($producto['id'] == $liquidacion['producto_id']) ? 'selected' : ''; ?>>
|
|
<?php echo htmlspecialchars($producto['nombre']); ?>
|
|
</option>
|
|
<?php endforeach; ?>
|
|
</select>
|
|
</div>
|
|
|
|
<div class="mb-3">
|
|
<label for="ciudad_id" class="form-label">Ciudad</label>
|
|
<select class="form-control" id="ciudad_id" name="ciudad_id" required>
|
|
<option value="">Seleccione una ciudad</option>
|
|
<?php foreach ($ciudades as $ciudad): ?>
|
|
<option value="<?php echo $ciudad['id']; ?>" <?php echo ($ciudad['id'] == $liquidacion['ciudad_origen_id']) ? 'selected' : ''; ?>>
|
|
<?php echo htmlspecialchars($ciudad['nombre']); ?>
|
|
</option>
|
|
<?php endforeach; ?>
|
|
</select>
|
|
</div>
|
|
|
|
<div class="mb-3">
|
|
<label for="cantidad" class="form-label">Cantidad</label>
|
|
<input type="number" class="form-control" id="cantidad" name="cantidad" value="<?php echo htmlspecialchars($liquidacion['cantidad']); ?>" required>
|
|
</div>
|
|
|
|
<div class="mb-3">
|
|
<label for="cantidad_pedidos" class="form-label">Cantidad de Pedidos</label>
|
|
<input type="number" class="form-control" id="cantidad_pedidos" name="cantidad_pedidos" value="<?php echo htmlspecialchars($liquidacion['cantidad_pedidos']); ?>" required>
|
|
</div>
|
|
|
|
<div class="mb-3">
|
|
<label for="precio_liquidacion" class="form-label">Precio Liquidación</label>
|
|
<input type="number" step="0.01" class="form-control" id="precio_liquidacion" name="precio_liquidacion" value="<?php echo htmlspecialchars($liquidacion['precio_liquidacion']); ?>" required>
|
|
</div>
|
|
|
|
<div class="mb-3">
|
|
<label for="fecha" class="form-label">Fecha</label>
|
|
<input type="datetime-local" class="form-control" id="fecha" name="fecha" value="<?php echo date('Y-m-d\TH:i', strtotime($liquidacion['fecha'])); ?>" required>
|
|
</div>
|
|
|
|
<button type="submit" class="btn btn-primary">Guardar Cambios</button>
|
|
<a href="liquidaciones.php" class="btn btn-secondary">Cancelar</a>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
<?php require_once 'includes/footer.php'; ?>
|