Agregada ruta y metodo para obtener barrios de una region

This commit is contained in:
Alejandro Tasistro 2025-05-23 17:56:46 -03:00
parent aa545ff82a
commit 48cf57a6d8
2 changed files with 11 additions and 6 deletions

View file

@ -6,6 +6,7 @@ use App\GrupoDeCompra;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use App\Http\Resources\GrupoDeCompraReducido; use App\Http\Resources\GrupoDeCompraReducido;
use App\Http\Resources\GrupoDeCompraResource; use App\Http\Resources\GrupoDeCompraResource;
use http\Env\Request;
class GrupoDeCompraController extends Controller class GrupoDeCompraController extends Controller
{ {
@ -17,8 +18,13 @@ class GrupoDeCompraController extends Controller
{ {
return new GrupoDeCompraResource($grupoDeCompra); return new GrupoDeCompraResource($grupoDeCompra);
} }
public function reducido(GrupoDeCompra $grupoDeCompra) public function regiones()
{ {
return new GrupoDeCompraReducido($grupoDeCompra); return GrupoDeCompra::all()->pluck('region')->unique()->flatten();
}
public function region(string $region)
{
return GrupoDeCompra::where('region', $region)->get();
} }
} }

View file

@ -16,13 +16,12 @@ use App\Producto;
*/ */
Route::middleware('api')->group(function () { Route::middleware('api')->group(function () {
Route::get('/regiones', function() { Route::get('/regiones', 'Api\GrupoDeCompraController@regiones');
return GrupoDeCompra::all()->pluck('region')->unique()->flatten(); Route::get('/regiones/{region}', 'Api\GrupoDeCompraController@region');
});
Route::prefix('grupos-de-compra')->group( function(){ Route::prefix('grupos-de-compra')->group( function(){
Route::get('/', function() { Route::get('/', function() {
$atributos_a_ocultar = ['telefono', 'cantidad_de_nucleos', 'correo', 'referente_finanzas', 'created_at', 'updated_at']; $atributos_a_ocultar = ['created_at', 'updated_at'];
return GrupoDeCompra::all()->makeHidden($atributos_a_ocultar)->sortBy('nombre')->groupBy('region'); return GrupoDeCompra::all()->makeHidden($atributos_a_ocultar)->sortBy('nombre')->groupBy('region');
}); });