diff --git a/app/Helpers/CanastaHelper.php b/app/Helpers/CanastaHelper.php index 84a6ab0..7b4c37d 100644 --- a/app/Helpers/CanastaHelper.php +++ b/app/Helpers/CanastaHelper.php @@ -50,7 +50,7 @@ class CanastaHelper } // completar producto - $toInsert[] = [ + $toInsert[] = DatabaseSeeder::addTimestamps([ 'fila' => $i, 'categoria' => $categoria, 'nombre' => trim(str_replace('*', '',$registro[self::PRODUCTO])), @@ -58,7 +58,7 @@ class CanastaHelper 'es_solidario' => Str::contains($registro[self::PRODUCTO],"*"), 'bono' => preg_match(self::REGEX_BONO, $registro[self::TIPO]), 'requiere_notas'=> $registro[self::TIPO] == self::PRODUCTO_TALLE_COLOR, - ]; + ]); } foreach (array_chunk($toInsert,DatabaseSeeder::CHUNK_SIZE) as $chunk) diff --git a/app/Subpedido.php b/app/Subpedido.php index 29d001e..26e38e4 100644 --- a/app/Subpedido.php +++ b/app/Subpedido.php @@ -16,12 +16,12 @@ class Subpedido extends Model public function productos(): BelongsToMany { - return $this->belongsToMany('App\Producto')->withPivot(["cantidad", "notas"]); + return $this->belongsToMany(Producto::class)->withPivot(["cantidad", "notas"]); } public function grupoDeCompra(): BelongsTo { - return $this->belongsTo('App\GrupoDeCompra'); + return $this->belongsTo(GrupoDeCompra::class); } // Permite que se apliquen los filtros al hacer una request (por ejemplo, de búsqueda) @@ -91,7 +91,7 @@ class Subpedido extends Model return TransporteHelper::cantidadTransporte($this->totalCentralesQuePaganTransporte()); } - //Actualiza el pedido, agregando o quitando del subpedido según sea necesario. Debe ser llamado desde el controlador de subpedidos, luego de validar que los parámetros $producto y $cantidad son correctos. También calcula el subtotal por producto. + // Actualiza el pedido, agregando o quitando del subpedido según sea necesario. Debe ser llamado desde el controlador de subpedidos, luego de validar que los parámetros $producto y $cantidad son correctos. También calcula el subtotal por producto. public function syncProducto(Producto $producto, int $cantidad, string $notas) { if ($cantidad) { @@ -106,11 +106,15 @@ class Subpedido extends Model //si la cantidad es 0, se elimina el producto del subpedido $this->productos()->detach($producto->id); } + + $this->updated_at = now(); + $this->save(); } public function toggleAprobacion(bool $aprobacion) { $this->aprobado = $aprobacion; + $this->update(['aprobado' => $aprobacion]); $this->save(); } diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index 845fa72..57f6ac4 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -1,10 +1,19 @@ orWhere('nombre', 'barrio_admin')->get(); + $roles = UserRole::where('nombre', 'barrio')->orWhere('nombre', 'admin_barrio')->get(); foreach($registros as $key => $registro){ - $gdcToInsert[] = [ + $gdcToInsert[] = DatabaseSeeder::addTimestamps([ 'nombre' => $registro['barrio'], 'region' => $registro['region'], - ]; + ]); foreach($roles as $role) { - $usersToInsert[] = [ - 'name' => $registro['barrio'], + $nombre = $registro['barrio'] . ($role->nombre == 'barrio' ? '' : '_admin'); + $usersToInsert[] = DatabaseSeeder::addTimestamps([ + 'name' => $nombre, 'password' => Hash::make("123"), 'role_id' => $role->id, 'grupo_de_compra_id' => $key, - ]; + ]); } } diff --git a/database/seeds/UserSeeder.php b/database/seeds/UserSeeder.php index 1f5533b..35bc3b9 100644 --- a/database/seeds/UserSeeder.php +++ b/database/seeds/UserSeeder.php @@ -16,11 +16,11 @@ class UserSeeder extends Seeder { $usersToInsert = []; - $usersToInsert[] = [ + $usersToInsert[] = DatabaseSeeder::addTimestamps([ 'name' => 'comi', 'password' => Hash::make("123"), 'role_id' => UserRole::where('nombre', 'comision')->first()->id, - ]; + ]); foreach (array_chunk($usersToInsert,DatabaseSeeder::CHUNK_SIZE) as $chunk)