Patentes en CRUD - Solicitudes de Importación

This commit is contained in:
2025-06-30 17:00:03 -06:00
parent 92e8c5d69e
commit 5eb96de51d
19 changed files with 417 additions and 122 deletions

View File

@@ -84,10 +84,10 @@
<?php foreach ($agentes as $a): ?>
<tr>
<td><?= $a['id_usuario'] ?></td>
<td><?= htmlspecialchars(decrypt($a['nombre'])) ?></td>
<td><?= htmlspecialchars(decrypt($a['email'])) ?></td>
<td><?= htmlspecialchars($a['tipo_usuario_sistema']) ?></td>
<td><?= htmlspecialchars($a['creado_por']) ?></td>
<td><?= htmlspecialchars(decrypt($a['nombre'] ?? '')) ?></td>
<td><?= htmlspecialchars(decrypt($a['email'] ?? '')) ?></td>
<td><?= htmlspecialchars($a['tipo_usuario_sistema'] ?? '') ?></td>
<td><?= htmlspecialchars(decrypt($a['nombre_creador'] ?? '')) ?></td>
<td><?= isset($a['creado_en']) && $a['creado_en'] instanceof DateTime ? $a['creado_en']->format('Y-m-d H:i') : '' ?></td>
<td>
<?php if (in_array($a['tipo_usuario_sistema'], ['agente_aduanal'])): ?>

View File

@@ -7,9 +7,11 @@
<title> Nueva Solicitud de Importación</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/choices.js/public/assets/styles/choices.min.css"/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<link href="https://cdn.datatables.net/1.13.4/css/jquery.dataTables.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script src="https://cdn.datatables.net/1.13.4/js/jquery.dataTables.min.js"></script>v
<style>
body { font-family: 'Segoe UI', sans-serif; background-color: #f4f6f9; }
.sidebar { width: 220px; height: 100vh; background-color: #343a40; position: fixed; top: 0; left: 0; padding-top: 56px; z-index: 1040; }
@@ -62,9 +64,20 @@
</div>
</div>
<!-- Segunda fila: Incoterm, País, Moneda -->
<!-- Segunda fila: Patente, Incoterm, País, Moneda -->
<div class="row">
<div class="col-md-4 mb-3">
<div class="col-md-3 mb-3">
<label for="patente" class="form-label">Patente Aduanal</label>
<select id="patente" name="patente" class="form-select searchable" required>
<option value="">-- Selecciona Patente --</option>
<?php foreach($patentes as $pt): ?>
<option value="<?= htmlspecialchars($pt['id_agente']) ?>">
<?= htmlspecialchars($pt['patente'].' - '.$pt['agente_aduanal']) ?>
</option>
<?php endforeach; ?>
</select>
</div>
<div class="col-md-3 mb-3">
<label for="incoterm" class="form-label">INCOTERM</label>
<select id="incoterm" name="incoterm" class="form-select searchable" required>
<option value="">-- Selecciona Incoterm --</option>
@@ -75,7 +88,7 @@
<?php endforeach; ?>
</select>
</div>
<div class="col-md-4 mb-3">
<div class="col-md-3 mb-3">
<label for="pais_proveedor" class="form-label">País (Proveedor)</label>
<select id="pais_proveedor" name="pais_proveedor" class="form-select searchable" required>
<option value="">-- Selecciona País --</option>
@@ -84,7 +97,7 @@
<?php endforeach; ?>
</select>
</div>
<div class="col-md-4 mb-3">
<div class="col-md-3 mb-3">
<label for="tipo_moneda" class="form-label">Moneda</label>
<select id="tipo_moneda" name="tipo_moneda" class="form-select searchable" required>
<?php foreach(['MXN'=>'Peso Mexicano','USD'=>'Dólar USD','EUR'=>'Euro','CNY'=>'Yuan','GBP'=>'Libra GBP','JPY'=>'Yen'] as $code=>$label): ?>

View File

@@ -9,9 +9,13 @@
<!-- Bootstrap CSS -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<!-- Choices.js CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/choices.js/public/assets/styles/choices.min.css"/>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<link href="https://cdn.datatables.net/1.13.4/css/jquery.dataTables.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script src="https://cdn.datatables.net/1.13.4/js/jquery.dataTables.min.js"></script>
<style>
body { font-family: 'Segoe UI', sans-serif; background-color: #f4f6f9; }
.sidebar { width: 220px; height: 100vh; background-color: #343a40; position: fixed; top: 0; left: 0; padding-top: 56px; z-index: 1040; }
@@ -67,9 +71,21 @@
</div>
</div>
<!-- Incoterm, País, Moneda -->
<!-- Patente, Incoterm, País, Moneda -->
<div class="row">
<div class="col-md-4 mb-3">
<div class="col-md-3 mb-3">
<label for="patente" class="form-label">Patente Aduanal</label>
<select id="patente" name="patente" class="form-select searchable" required>
<option value="">-- Selecciona Patente --</option>
<?php foreach($patentes as $pt): ?>
<option value="<?= htmlspecialchars($pt['id_agente']) ?>"
<?= $factura['patente_id'] == $pt['id_agente'] ? 'selected' : '' ?>>
<?= htmlspecialchars($pt['patente'].' - '.$pt['agente_aduanal']) ?>
</option>
<?php endforeach; ?>
</select>
</div>
<div class="col-md-3 mb-3">
<label for="incoterm" class="form-label">INCOTERM</label>
<select id="incoterm" name="incoterm" class="form-select searchable" required>
<option value="">-- Selecciona Incoterm --</option>
@@ -80,7 +96,7 @@
<?php endforeach; ?>
</select>
</div>
<div class="col-md-4 mb-3">
<div class="col-md-3 mb-3">
<label for="pais_proveedor" class="form-label">País (Proveedor)</label>
<select id="pais_proveedor" name="pais_proveedor" class="form-select searchable">
<option value="">-- Selecciona País --</option>
@@ -91,7 +107,7 @@
<?php endforeach; ?>
</select>
</div>
<div class="col-md-4 mb-3">
<div class="col-md-3 mb-3">
<label for="tipo_moneda" class="form-label">Moneda</label>
<select id="tipo_moneda" name="tipo_moneda" class="form-select searchable">
<?php foreach(['MXN'=>'Peso Mexicano','USD'=>'Dólar USD','EUR'=>'Euro','CNY'=>'Yuan','GBP'=>'Libra GBP','JPY'=>'Yen'] as $code=>$label): ?>

View File

@@ -10,7 +10,7 @@
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<link href="https://cdn.datatables.net/1.13.4/css/jquery.dataTables.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://code.jquery.com/jquery-3.7.0.min.js"></script>
<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script src="https://cdn.datatables.net/1.13.4/js/jquery.dataTables.min.js"></script>
<style>
table.dataTable thead th { background: #343a40; color: #fff; }
@@ -55,13 +55,14 @@
<th>Pedimento</th>
<th>Incoterm</th>
<th>País Proveedor</th>
<th>Patente</th>
<th>Moneda</th>
<th>Valor</th>
<th>Vinculación</th>
<th>Transportista</th>
<th>PDF</th>
<!-- Nueva columna Status -->
<th>Status</th>
<th>Estatus</th>
<th>Acciones</th>
</tr>
</thead>
@@ -77,6 +78,7 @@
<td><?= htmlspecialchars($f['numero_pedimento']) ?></td>
<td><?= htmlspecialchars($f['incoterm']) ?></td>
<td><?= htmlspecialchars($f['nombre_pais_proveedor']) ?></td>
<td><?= htmlspecialchars($f['patente']) ?></td>
<td><?= htmlspecialchars($f['tipo_moneda']) ?></td>
<td><?= number_format($f['valor_factura'],2) ?></td>
<!-- Celda de Vinculación -->