Skip to content

Commit 1a73252

Browse files
committed
Ajuste listado de productos para creacion pedido
1 parent dc3af15 commit 1a73252

3 files changed

Lines changed: 37 additions & 11 deletions

File tree

Frontend/app/Http/Controllers/Productos/ProductoController.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,4 +203,18 @@ public function destroy($id)
203203
->with('error', 'Error de conexión: ' . $e->getMessage());
204204
}
205205
}
206+
207+
// Añade esto a ProductoController.php
208+
public function getProductosJson()
209+
{
210+
try {
211+
$response = Http::timeout(10)->get($this->apiUrl);
212+
if ($response->successful()) {
213+
return response()->json($response->json());
214+
}
215+
return response()->json(['error' => 'API no disponible'], 500);
216+
} catch (\Exception $e) {
217+
return response()->json(['error' => $e->getMessage()], 500);
218+
}
219+
}
206220
}

Frontend/resources/views/pedidosviews/PedidosClientes/index-admin.blade.php

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -267,18 +267,28 @@
267267
let listaProductosGlobal = [];
268268
269269
async function cargarProductosDesdeJava() {
270-
try {
271-
const response = await fetch('http://32.193.167.191:8080/productos');
272-
const data = await response.json();
273-
listaProductosGlobal = data.map(p => ({
274-
id: p.id_PRODUCTO || p.idProducto || p["Id Producto:"],
275-
nombre: p.nombre_PRODUCTO || p.nombreProducto || p["Nombre Producto:"],
276-
precio: p.precio_UNITARIO || p.precio || p["Precio:"] || 0
277-
}));
278-
} catch (error) {
279-
console.error("Error productos:", error);
270+
try {
271+
// Cambiamos la IP por nuestra ruta interna de Laravel
272+
const response = await fetch("{{ route('api.productos.lista') }}");
273+
const data = await response.json();
274+
275+
if (data.error) {
276+
console.error("Error de la API:", data.error);
277+
return;
280278
}
279+
280+
listaProductosGlobal = data.map(p => ({
281+
// Ajustamos los campos según lo que devuelve tu API de Java
282+
id: p.ID_PRODUCTO || p.id_PRODUCTO || p.idProducto || p["Id Producto:"],
283+
nombre: p.NOMBRE_PRODUCTO || p.nombre_PRODUCTO || p.nombreProducto || p["Nombre Producto:"],
284+
precio: p.PRECIO_PRODUCTO || p.precio_UNITARIO || p.precio || p["Precio:"] || 0
285+
}));
286+
287+
console.log("Productos cargados correctamente desde el proxy de Laravel");
288+
} catch (error) {
289+
console.error("Error al cargar productos:", error);
281290
}
291+
}
282292
283293
document.addEventListener('DOMContentLoaded', function() {
284294
cargarProductosDesdeJava();

Frontend/routes/web.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,11 @@
4141
Route::patch('/{id}', [ProductoController::class, 'update'])->name('productos.update');
4242
Route::delete('/{id}', [ProductoController::class, 'destroy'])->name('productos.destroy');
4343
Route::resource('productos', ProductoController::class)->except(['show', 'create', 'edit']);
44-
4544
});
4645

46+
Route::get('/api/productos-lista', [App\Http\Controllers\Productos\ProductoController::class, 'getProductosJson'])
47+
->name('api.productos.lista');
48+
4749
// ============================================
4850
// AUTENTICACIÓN
4951
// ============================================

0 commit comments

Comments
 (0)