diff --git a/app/src/Repository/Venta.php b/app/src/Repository/Venta.php index 089e0d5..c9bb1f0 100644 --- a/app/src/Repository/Venta.php +++ b/app/src/Repository/Venta.php @@ -295,8 +295,11 @@ class Venta extends Ideal\Repository ->joined('JOIN `propietario` ON `propietario`.`rut` = a.`propietario`') ->where("CONCAT_WS('-', `propietario`.`rut`, `propietario`.`dv`) LIKE :propietario OR `propietario`.`nombres` LIKE :propietario OR `propietario`.`apellido_paterno` LIKE :propietario OR `propietario`.`apellido_materno` LIKE :propietario - OR CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE :propietario"); - return $this->fetchIds($query, [':propietario' => "%{$propietario}%"]); + OR CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE :propietario + OR rut = :rut + OR CONCAT_WS('-', rut, dv) = :rut"); + error_log($query.PHP_EOL,3,'/logs/debug'); + return $this->fetchIds($query, [':propietario' => "%{$propietario}%", ':rut' => $propietario]); } public function fetchByPropietarioNombreCompleto(string $propietario): array { diff --git a/app/src/Service/Search.php b/app/src/Service/Search.php index 620f9b4..43966dd 100644 --- a/app/src/Service/Search.php +++ b/app/src/Service/Search.php @@ -54,10 +54,10 @@ class Search } protected function find(string $query, string $tipo): array { - preg_match_all('/["\']([\s\w]+)["\']|(\w+)/iu', $query, $matches, PREG_SET_ORDER | PREG_UNMATCHED_AS_NULL); + preg_match_all('/["\']([\s\w\-]+)["\']|([\w\-]+)/iu', $query, $matches, PREG_SET_ORDER | PREG_UNMATCHED_AS_NULL); $queries = array_map(function($match) { array_shift($match); - $valid = array_filter($match, function($line) {return $line !== null;}); + $valid = array_filter($match, function($line) {return $line !== null and trim($line); }); return implode(' ', $valid); }, $matches); $tiposUnidades = $this->getTiposUnidades();