diff --git a/app/GrupoDeCompra.php b/app/GrupoDeCompra.php index 2f9ad4e..b36ea8d 100644 --- a/app/GrupoDeCompra.php +++ b/app/GrupoDeCompra.php @@ -17,6 +17,13 @@ class GrupoDeCompra extends Model protected $table = 'grupos_de_compra'; protected $hidden = ['password']; + public function toggleDevoluciones() + { + $this->devoluciones_habilitadas = !$this->devoluciones_habilitadas; + $this->save(); + return $this->devoluciones_habilitadas; + } + public function subpedidos() { return $this->hasMany('App\Subpedido'); } @@ -115,7 +122,7 @@ class GrupoDeCompra extends Model $fila = $productos_id_fila[$id]; $records[$fila][1] = $producto_pedido->cantidad_pedida; } - + $records[$this->obtenerFilaDeBonoTransporte()][1] = $this->calcularCantidadBDT(); try { @@ -131,12 +138,12 @@ class GrupoDeCompra extends Model // si no hay pedidos aprobados, salir if ($productos_en_pedido->count() == 0) { \Log::debug("El grupo de compra ". $this->nombre . " no tiene pedidos aprobados."); return; } - + $pedidos = $this->pedidosAprobados(); // Generar tabla vacía con una columna por núcleo $records = $this->obtenerTemplateDeFilasVacias($pedidos->count()); $productos_id_fila = Producto::productosIdFila(); - + foreach ($productos_en_pedido as $id => $producto_pedido) { $fila = $productos_id_fila[$id]; $i = 1; @@ -155,7 +162,7 @@ class GrupoDeCompra extends Model $i++; } array_splice($records, 0, 0, array($nucleos)); - + // Guardar en un archivo .csv try { $writer = Writer::createFromPath(resource_path('csv/exports/'.$this->nombre.'-completo.csv'), 'w'); diff --git a/routes/api.php b/routes/api.php index d1ebbe4..2c1c50f 100644 --- a/routes/api.php +++ b/routes/api.php @@ -36,9 +36,13 @@ Route::middleware('api')->group(function () { $grupo = GrupoDeCompra::where('id',$gdc)->first(); return ['bonos_barriales' => $grupo->totalBonosBarriales()]; }); - Route::get('/{gdc}/devoluciones-habilitadas', function($gdc) { + Route::get('/{gdc}/devoluciones', function($gdc) { $habilitadas = GrupoDeCompra::where('id',$gdc)->value('devoluciones_habilitadas'); - return ['devoluciones_habilitadas' => $habilitadas]; + return ['devoluciones' => $habilitadas]; + }); + Route::post('/{gdc}/devoluciones', function($gdc) { + $habilitadas = GrupoDeCompra::where('id',$gdc)->toggleDevoluciones(); + return ['devoluciones' => $habilitadas]; }); });