diff --git a/modules/turnero/api/create_solicitud.php b/modules/turnero/api/create_solicitud.php index 39ab56e..61a20ab 100644 --- a/modules/turnero/api/create_solicitud.php +++ b/modules/turnero/api/create_solicitud.php @@ -29,6 +29,8 @@ $total = isset($datos['total_cobrado']) && $datos['total_cobrado'] !== nul ? (float) $datos['total_cobrado'] : null; $metodoPago = isset($datos['metodo_pago']) ? trim((string) $datos['metodo_pago']) : null; $obs = isset($datos['observaciones']) ? trim((string) $datos['observaciones']) : null; +$numOrden = isset($datos['numero_orden']) ? trim((string) $datos['numero_orden']) : null; +if ($numOrden === '') $numOrden = null; // ── Validaciones ────────────────────────────────────────────── if ($turnoId <= 0) jsonError('turno_id inválido.'); @@ -90,11 +92,11 @@ try { $stmt = $pdo->prepare( "INSERT INTO turnero_solicitudes - (turno_id, paciente_id, lugar_id, total_cobrado, metodo_pago, observaciones, creado_por) - VALUES (?, ?, ?, ?, ?, ?, ?)" + (turno_id, paciente_id, lugar_id, numero_orden, total_cobrado, metodo_pago, observaciones, creado_por) + VALUES (?, ?, ?, ?, ?, ?, ?, ?)" ); $stmt->execute([ - $turnoId, $pacienteId, $lugarId, + $turnoId, $pacienteId, $lugarId, $numOrden, $total, $metodoPago ?: null, $obs ?: null, adminId(), ]); $solicitudId = (int) $pdo->lastInsertId(); diff --git a/modules/turnero/api/get_consecutivo.php b/modules/turnero/api/get_consecutivo.php new file mode 100644 index 0000000..c3abeb6 --- /dev/null +++ b/modules/turnero/api/get_consecutivo.php @@ -0,0 +1,23 @@ +prepare( + "SELECT MAX(CAST(SUBSTRING_INDEX(numero_orden,'-',-1) AS UNSIGNED)) AS ultimo + FROM turnero_solicitudes + WHERE numero_orden LIKE ?" +); +$row->execute([$prefix . '%']); +$ultimo = (int)($row->fetch(PDO::FETCH_ASSOC)['ultimo'] ?? 0); + +$siguiente = $prefix . str_pad($ultimo + 1, 3, '0', STR_PAD_LEFT); + +jsonOk(['consecutivo' => $siguiente]); diff --git a/modules/turnero/views/recepcion.php b/modules/turnero/views/recepcion.php index 0a2803d..3c4e088 100644 --- a/modules/turnero/views/recepcion.php +++ b/modules/turnero/views/recepcion.php @@ -330,6 +330,22 @@ require_once __DIR__ . '/../../../shared/components/sidebar.php'; + +