Limpieza de tablas previa a cargar + bono barrial

This commit is contained in:
Alejandro Tasistro 2024-12-22 10:28:05 -03:00
parent 76f2af2ef9
commit 30eb822201
3 changed files with 36 additions and 3 deletions

View File

@ -2,6 +2,7 @@
namespace App\Helpers;
use App\Producto;
use App\Proveedor;
use App\CanastaLog;
use DatabaseSeeder;
@ -28,6 +29,8 @@ class CanastaHelper
}
public static function cargarCanasta($archivo) {
self::limpiarTablas();
$csv = Reader::createFromPath(resource_path($archivo), 'r');
$csv->setDelimiter("|");
$iHeader = self::obtenerIndiceDeHeader($csv);
@ -82,6 +85,8 @@ class CanastaHelper
DB::table('productos')->insert($chunk);
}
self::agregarBonoBarrial();
self::log($archivo, self::CANASTA_CARGADA);
}
@ -122,4 +127,25 @@ class CanastaHelper
]);
$log->save();
}
private static function limpiarTablas()
{
DB::delete('delete from producto_subpedido');
DB::delete('delete from productos');
DB::delete('delete from subpedidos');
}
private static function agregarBonoBarrial()
{
$categoria = Producto::all()->pluck('categoria')->unique()->flatten()->first(function ($c) { return Str::contains($c, 'BONO'); });
DB::table('productos')->insert([
'fila' => 420,
'nombre' => "Bono barrial",
'precio' => 20,
'categoria' => $categoria,
'bono' => 1,
'proveedor_id' => null,
'requiere_notas'=> false,
]);
}
}

View File

@ -28,6 +28,13 @@
<li> El bono de transporte debe tener tipo 'T' </li>
</ul>
<a class="has-text-info" href="/compras/canasta/ejemplo">Planilla de ejemplo.</a>
<article class="message is-danger mt-2">
<div class="message-body">
<div class="content">
Cuidado! Cargar una nueva canasta elimina todos los pedidos de la aplicación.
</div>
</div>
</article>
</div>
</div>
</article>

View File

@ -13,10 +13,10 @@
<i class="fas fa-cloud-upload-alt"></i>
</span>
<span class="file-label">Subir canasta</span>
</span>
</span>
<span class="file-name" v-if="archivo">
{{ archivo.nombre }}
</span>
{{ archivo.nombre }}
</span>
</label>
</div>
</div>