Pequeños cambios de estilo

This commit is contained in:
Alejandro Tasistro 2023-03-28 22:44:20 -03:00
parent ad4e6c359f
commit 2d16144cbd
1 changed files with 25 additions and 10 deletions

View File

@ -62,23 +62,20 @@ class ImportarProductoSeeder extends Seeder
//obtener talles //obtener talles
if ($tipo == "PTC") { if ($tipo == "PTC") {
$nombreLower = ucfirst(strtolower(str_replace('-', '', $nombre))); $nombre = $this->limpiarNombre($nombre);
// talles en una sola fila, // talles en una sola fila,
// asume que están como '$n a $m' con $n, $m numeros y $n < $m. // asume que están como '$n a $m' con $n, $m numeros y $n < $m.
// asume también que los talles van de uno en uno // asume también que los talles van de uno en uno, ej 8 - 9 - 10
if (str_contains($nombreLower, 'talles')) { if (str_contains($nombre, 'talles')) {
[$nombreLower, $talles] = explode('talles', $nombreLower); [$nombre, $talles] = $this->separarNombre($nombre, true);
$nombre = trim($nombreLower);
[$inf, $sup] = explode(' a ', $talles); [$inf, $sup] = explode(' a ', $talles);
for ($i=$inf; $i < $sup; $i++) $desc = $desc.$i.'-'; for ($i=$inf; $i < $sup; $i++) $desc = $desc.$i.'-';
$desc = $desc.$sup; $desc = $desc.$sup;
} }
// talles en varias filas, // talles en varias filas,
// asume que mismos productos con distinto talle están en filas consecutivas // asume que mismos productos con distinto talle están en filas consecutivas
if (str_contains($nombreLower, 'talle')) { if (str_contains($nombre, 'talle')) {
[$nombre, $talle] = explode('talle', $nombreLower); [$nombre, $talle] = $this->separarNombre($nombre, false);
$nombre = trim($nombre);
$talle = trim(str_replace('.', '', $talle));
$esUltimo = $this->esUltimoTalle($nombre, $precio, $i, $registrosArray); $esUltimo = $this->esUltimoTalle($nombre, $precio, $i, $registrosArray);
if ($esUltimo) { if ($esUltimo) {
$desc = $tallesVariasFilas . $talle; $desc = $tallesVariasFilas . $talle;
@ -122,7 +119,25 @@ class ImportarProductoSeeder extends Seeder
private function generarNombre($registro) private function generarNombre($registro)
{ {
return trim(str_replace('*', ' ',$registro['Producto'])); $res = trim(str_replace('*', ' ',$registro['Producto']));
return $res;
}
private function limpiarNombre($nombre)
{
$res = trim(ucfirst(strtolower(str_replace('-', '', $nombre))));
return $res;
}
private function separarNombre($nombreYtalles, $plural) {
$separador = $plural ? 'talles' : 'talle';
[$nombre, $talles] = explode($separador, $nombreYtalles);
$nombre = trim($nombre);
if (!$plural) {
$talles = trim(str_replace('.', '', $talles));
$talles = strtoupper($talles);
}
return [$nombre, $talles];
} }
private function esUltimoTalle($nombre, $precio, $indice, $registros) { private function esUltimoTalle($nombre, $precio, $indice, $registros) {