diff --git a/app/Helpers/CanastaHelper.php b/app/Helpers/CanastaHelper.php index 9d3edcf..7a80fee 100644 --- a/app/Helpers/CanastaHelper.php +++ b/app/Helpers/CanastaHelper.php @@ -14,10 +14,12 @@ use Illuminate\Support\Str; class CanastaHelper { const TIPO = "Tipo"; - const TOTAL = "TOTAL"; + const PRODUCTO = 'Producto'; + const PRECIO = 'Precio'; + const REGEX_BONO = "/^[BF]/i"; const ARCHIVO_SUBIDO = 'Archivo subido'; const CANASTA_CARGADA = 'Canasta cargada'; - const TIPOS_BONO = ["B", "F", "BE"]; + const PRODUCTO_TALLE_COLOR = "PTC"; public static function guardarCanasta($data, $path): string { $nombre = $data->getClientOriginalName(); @@ -37,10 +39,6 @@ class CanastaHelper $categoria = ''; foreach($registros as $i => $registro) { - // finalizar - if ($registro[self::TIPO] == self::TOTAL) - break; - // saltear filas que no tienen tipo if (self::noTieneTipo($registro)) { var_dump("no hay tipo en la fila " . $i); @@ -53,7 +51,7 @@ class CanastaHelper } // obtener categoria si no hay producto - if ($registro['Producto'] == '') { + if ($registro[self::PRODUCTO] == '') { // no es la pregunta de la copa? if (!Str::contains($registro[self::TIPO],"¿")) $categoria = $registro[self::TIPO]; @@ -64,11 +62,11 @@ class CanastaHelper $toInsert[] = [ 'fila' => $i, 'categoria' => $categoria, - 'nombre' => trim(str_replace('*', '',$registro['Producto'])), - 'precio' => $registro['Precio'], - 'proveedor_id' => self::obtenerProveedor($registro['Producto']), - 'bono' => in_array($registro[self::TIPO], self::TIPOS_BONO), - 'requiere_notas'=> $registro[self::TIPO] =="PTC", + 'nombre' => trim(str_replace('*', '',$registro[self::PRODUCTO])), + 'precio' => $registro[self::PRECIO], + 'proveedor_id' => self::obtenerProveedor($registro[self::PRODUCTO]), + 'bono' => preg_match(self::REGEX_BONO, $registro[self::TIPO]), + 'requiere_notas'=> $registro[self::TIPO] == self::PRODUCTO_TALLE_COLOR, ]; }