1 Commits

Author SHA1 Message Date
ad3285efd9 FIX: find ventas por proyecto y unidad 2024-01-30 12:07:43 -03:00
5 changed files with 11 additions and 84 deletions

View File

@ -56,7 +56,7 @@
unidad.html(unidad.html() + ' (I)') unidad.html(unidad.html() + ' (I)')
} }
propietario = $('<a></a>') propietario = $('<a></a>')
.attr('href','{{$urls->base}}/search/"' + encodeURIComponent(this.venta.propietario.nombre_completo) + '"/propietario') .attr('href','{{$urls->base}}/search/' + encodeURIComponent(this.venta.propietario.nombre_completo) + '/propietario')
.html(this.venta.propietario.nombre_completo) .html(this.venta.propietario.nombre_completo)
fecha = dateFormatter.format(new Date(this.venta.fecha)) fecha = dateFormatter.format(new Date(this.venta.fecha))
if (typeof this.venta.entrega !== 'undefined') { if (typeof this.venta.entrega !== 'undefined') {
@ -309,23 +309,15 @@
} }
} }
}, },
set: function() {
return {
query: value => {
$("[name='query']").val(value)
this.get().results()
}
}
},
setup: function(id) { setup: function(id) {
this.id = id this.id = id
this.get().results() this.get().results()
$('#tipo').dropdown().dropdown('set selected', '*') $('#tipo').dropdown().dropdown('set selected', '*')
@if (trim($post) !== '') @if (trim($post) !== '')
this.set().query('{!! $post !!}') $("[name='query']").val('{{$post}}')
@elseif (trim($query) !== '') @elseif (trim($query) !== '')
this.set().query('{!! $query !!}') $("[name='query']").val('{{$query}}')
@endif @endif
@if (trim($tipo) !== '') @if (trim($tipo) !== '')
$('#tipo').dropdown('set selected', '{{$tipo}}') $('#tipo').dropdown('set selected', '{{$tipo}}')

View File

@ -234,6 +234,7 @@
this.table = new DataTable(table, { this.table = new DataTable(table, {
order: [[0, 'asc']], order: [[0, 'asc']],
pageLength: 50
}) })
}, },
table: () => { table: () => {

View File

@ -4,10 +4,10 @@ use Psr\Container\ContainerInterface;
return [ return [
Incoviba\Common\Define\Database::class => function(ContainerInterface $container) { Incoviba\Common\Define\Database::class => function(ContainerInterface $container) {
return new Incoviba\Common\Implement\Database\MySQL( return new Incoviba\Common\Implement\Database\MySQL(
$container->has('DB_HOST') ? $container->get('DB_HOST') : 'db', $container->has('MYSQL_HOST') ? $container->get('MYSQL_HOST') : 'db',
$container->get('DB_DATABASE'), $container->get('MYSQL_DATABASE'),
$container->get('DB_USER'), $container->get('MYSQL_USER'),
$container->get('DB_PASSWORD') $container->get('MYSQL_PASSWORD')
); );
}, },
Incoviba\Common\Define\Connection::class => function(ContainerInterface $container) { Incoviba\Common\Define\Connection::class => function(ContainerInterface $container) {

View File

@ -182,15 +182,6 @@ GROUP BY a.`id`";*/
->joined('JOIN tipo_estado_venta tev ON tev.id = ev.estado') ->joined('JOIN tipo_estado_venta tev ON tev.id = ev.estado')
->where('ptu.proyecto = ? AND tev.activa') ->where('ptu.proyecto = ? AND tev.activa')
->group('a.id'); ->group('a.id');
/*$query = "SELECT a.`id`
FROM `{$this->getTable()}` a
JOIN `propiedad_unidad` pu ON pu.`propiedad` = a.`propiedad`
JOIN `unidad` ON `unidad`.`id` = pu.`unidad` AND pu.`principal` = 1
JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`
JOIN (SELECT e1.* FROM `estado_venta` e1 JOIN (SELECT MAX(`id`) AS 'id', `venta` FROM `estado_venta` GROUP BY `venta`) e0 ON e0.`id` = e1.`id`) ev ON ev.`venta` = a.`id`
JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`
WHERE ptu.`proyecto` = ? AND tev.`activa`
GROUP BY a.`id`";*/
return $this->fetchIds($query, [$proyecto_id]); return $this->fetchIds($query, [$proyecto_id]);
} }
public function fetchActivaByProyecto(int $proyecto_id): array public function fetchActivaByProyecto(int $proyecto_id): array
@ -203,17 +194,8 @@ GROUP BY a.`id`";*/
->joined('JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`') ->joined('JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`')
->joined("JOIN (SELECT e1.* FROM `estado_venta` e1 JOIN (SELECT MAX(`id`) AS 'id', `venta` FROM `estado_venta` GROUP BY `venta`) e0 ON e0.`id` = e1.`id`) ev ON ev.`venta` = a.`id`") ->joined("JOIN (SELECT e1.* FROM `estado_venta` e1 JOIN (SELECT MAX(`id`) AS 'id', `venta` FROM `estado_venta` GROUP BY `venta`) e0 ON e0.`id` = e1.`id`) ev ON ev.`venta` = a.`id`")
->joined('JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`') ->joined('JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`')
->where('WHERE ptu.`proyecto` = ? AND tev.`activa`') ->where('ptu.`proyecto` = ? AND tev.`activa`')
->group('a.id'); ->group('a.id');
/*$query = "SELECT a.*
FROM `{$this->getTable()}` a
JOIN `propiedad_unidad` pu ON pu.`propiedad` = a.`propiedad`
JOIN `unidad` ON `unidad`.`id` = pu.`unidad` AND pu.`principal` = 1
JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`
JOIN (SELECT e1.* FROM `estado_venta` e1 JOIN (SELECT MAX(`id`) AS 'id', `venta` FROM `estado_venta` GROUP BY `venta`) e0 ON e0.`id` = e1.`id`) ev ON ev.`venta` = a.`id`
JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`
WHERE ptu.`proyecto` = ? AND tev.`activa`
GROUP BY a.`id`";*/
return $this->fetchMany($query, [$proyecto_id]); return $this->fetchMany($query, [$proyecto_id]);
} }
public function fetchByProyectoAndUnidad(string $proyecto_nombre, int $unidad_descripcion): Model\Venta public function fetchByProyectoAndUnidad(string $proyecto_nombre, int $unidad_descripcion): Model\Venta
@ -227,16 +209,7 @@ GROUP BY a.`id`";*/
->joined('JOIN `proyecto` ON `proyecto`.`id` = ptu.`proyecto`') ->joined('JOIN `proyecto` ON `proyecto`.`id` = ptu.`proyecto`')
->joined("JOIN (SELECT e1.* FROM `estado_venta` e1 JOIN (SELECT MAX(`id`) AS 'id', `venta` FROM `estado_venta` GROUP BY `venta`) e0 ON e0.`id` = e1.`id`) ev ON ev.`venta` = a.`id`") ->joined("JOIN (SELECT e1.* FROM `estado_venta` e1 JOIN (SELECT MAX(`id`) AS 'id', `venta` FROM `estado_venta` GROUP BY `venta`) e0 ON e0.`id` = e1.`id`) ev ON ev.`venta` = a.`id`")
->joined('JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`') ->joined('JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`')
->where('WHERE `proyecto`.`descripcion` = ? AND `unidad`.`descripcion` = ? AND tev.`activa`'); ->where('`proyecto`.`descripcion` = ? AND `unidad`.`descripcion` = ? AND tev.`activa`');
/*$query = "SELECT a.*
FROM `{$this->getTable()}` a
JOIN `propiedad_unidad` pu ON pu.`propiedad` = a.`propiedad`
JOIN `unidad` ON `unidad`.`id` = pu.`unidad` AND pu.`principal` = 1
JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`
JOIN `proyecto` ON `proyecto`.`id` = ptu.`proyecto`
JOIN (SELECT e1.* FROM `estado_venta` e1 JOIN (SELECT MAX(`id`) AS 'id', `venta` FROM `estado_venta` GROUP BY `venta`) e0 ON e0.`id` = e1.`id`) ev ON ev.`venta` = a.`id`
JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`
WHERE `proyecto`.`descripcion` = ? AND `unidad`.`descripcion` = ? AND tev.`activa`";*/
return $this->fetchOne($query, [$proyecto_nombre, $unidad_descripcion]); return $this->fetchOne($query, [$proyecto_nombre, $unidad_descripcion]);
} }
public function fetchByPie(int $pie_id): Model\Venta public function fetchByPie(int $pie_id): Model\Venta
@ -265,13 +238,6 @@ WHERE `proyecto`.`descripcion` = ? AND `unidad`.`descripcion` = ? AND tev.`activ
->joined('JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`') ->joined('JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`')
->joined('JOIN `tipo_unidad` tu ON tu.`id` = ptu.`tipo`') ->joined('JOIN `tipo_unidad` tu ON tu.`id` = ptu.`tipo`')
->where('`unidad`.`descripcion` LIKE ? AND tu.`descripcion` = ?'); ->where('`unidad`.`descripcion` LIKE ? AND tu.`descripcion` = ?');
/*$query = "SELECT a.*
FROM `{$this->getTable()}` a
JOIN `propiedad_unidad` pu ON pu.`propiedad` = a.`propiedad`
JOIN `unidad` ON `unidad`.`id` = pu.`unidad`
JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`
JOIN `tipo_unidad` tu ON tu.`id` = ptu.`tipo`
WHERE `unidad`.`descripcion` LIKE ? AND tu.`descripcion` = ?";*/
return $this->fetchMany($query, [$unidad, $tipo]); return $this->fetchMany($query, [$unidad, $tipo]);
} }
public function fetchIdsByUnidad(string $unidad, string $tipo): array public function fetchIdsByUnidad(string $unidad, string $tipo): array
@ -284,13 +250,6 @@ WHERE `unidad`.`descripcion` LIKE ? AND tu.`descripcion` = ?";*/
->joined('JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`') ->joined('JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`')
->joined('JOIN `tipo_unidad` tu ON tu.`id` = ptu.`tipo`') ->joined('JOIN `tipo_unidad` tu ON tu.`id` = ptu.`tipo`')
->where('`unidad`.`descripcion` LIKE ? AND tu.`descripcion` = ?'); ->where('`unidad`.`descripcion` LIKE ? AND tu.`descripcion` = ?');
/*$query = "SELECT a.id
FROM `{$this->getTable()}` a
JOIN `propiedad_unidad` pu ON pu.`propiedad` = a.`propiedad`
JOIN `unidad` ON `unidad`.`id` = pu.`unidad`
JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`pt`
JOIN `tipo_unidad` tu ON tu.`id` = ptu.`tipo`
WHERE `unidad`.`descripcion` LIKE ? AND tu.`descripcion` = ?";*/
return $this->fetchIds($query, [$unidad, $tipo]); return $this->fetchIds($query, [$unidad, $tipo]);
} }
public function fetchByPrecio(string $precio): array public function fetchByPrecio(string $precio): array
@ -326,12 +285,6 @@ WHERE `unidad`.`descripcion` LIKE ? AND tu.`descripcion` = ?";*/
->where("CONCAT_WS('-', `propietario`.`rut`, `propietario`.`dv`) LIKE :propietario OR `propietario`.`nombres` LIKE :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 `propietario`.`apellido_paterno` LIKE :propietario OR `propietario`.`apellido_materno` LIKE :propietario
OR CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE :propietario"); OR CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE :propietario");
/*$query = "SELECT a.*
FROM `{$this->getTable()}` a
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->fetchMany($query, [':propietario' => "%{$propietario}%"]); return $this->fetchMany($query, [':propietario' => "%{$propietario}%"]);
} }
public function fetchIdsByPropietario(string $propietario): array public function fetchIdsByPropietario(string $propietario): array
@ -343,12 +296,6 @@ WHERE CONCAT_WS('-', `propietario`.`rut`, `propietario`.`dv`) LIKE :propietario
->where("CONCAT_WS('-', `propietario`.`rut`, `propietario`.`dv`) LIKE :propietario OR `propietario`.`nombres` LIKE :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 `propietario`.`apellido_paterno` LIKE :propietario OR `propietario`.`apellido_materno` LIKE :propietario
OR CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE :propietario"); OR CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE :propietario");
/*$query = "SELECT a.id
FROM `{$this->getTable()}` a
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}%"]); return $this->fetchIds($query, [':propietario' => "%{$propietario}%"]);
} }
public function fetchByPropietarioNombreCompleto(string $propietario): array public function fetchByPropietarioNombreCompleto(string $propietario): array
@ -358,10 +305,6 @@ WHERE CONCAT_WS('-', `propietario`.`rut`, `propietario`.`dv`) LIKE :propietario
->from("{$this->getTable()} a") ->from("{$this->getTable()} a")
->joined('JOIN `propietario` ON `propietario`.`rut` = a.`propietario`') ->joined('JOIN `propietario` ON `propietario`.`rut` = a.`propietario`')
->where("CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE ?"); ->where("CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE ?");
/*$query = "SELECT a.*
FROM `{$this->getTable()}` a
JOIN `propietario` ON `propietario`.`rut` = a.`propietario`
WHERE CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`, `propietario`.`apellido_materno`) LIKE ?";*/
return $this->fetchMany($query, [$propietario]); return $this->fetchMany($query, [$propietario]);
} }
public function fetchEscriturasByProyecto(int $proyecto_id): array public function fetchEscriturasByProyecto(int $proyecto_id): array
@ -376,15 +319,6 @@ WHERE CONCAT_WS(' ', `propietario`.`nombres`, `propietario`.`apellido_paterno`,
->joined('JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`') ->joined('JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`')
->where("ptu.`proyecto` = ? AND tev.`descripcion` IN ('firmado por inmobiliaria', 'escriturando')") ->where("ptu.`proyecto` = ? AND tev.`descripcion` IN ('firmado por inmobiliaria', 'escriturando')")
->group('a.id'); ->group('a.id');
/*$query = "SELECT DISTINCT a.*
FROM `{$this->getTable()}` a
JOIN `propiedad_unidad` pu ON pu.`propiedad` = a.`propiedad`
JOIN `unidad` ON `unidad`.`id` = pu.`unidad`
JOIN `proyecto_tipo_unidad` ptu ON ptu.`id` = `unidad`.`id`
JOIN (SELECT e1.* FROM `estado_venta` e1 JOIN (SELECT MAX(`id`) AS 'id', `venta` FROM `estado_venta` GROUP BY `venta`) e0 ON e0.`id` = e1.`id`) ev ON ev.`venta` = a.`id`
JOIN `tipo_estado_venta` tev ON tev.`id` = ev.`estado`
WHERE ptu.`proyecto` = ? AND tev.`descripcion` IN ('firmado por inmobiliaria', 'escriturando')
GROUP BY a.`id`";*/
return $this->fetchMany($query, [$proyecto_id]); return $this->fetchMany($query, [$proyecto_id]);
} }
public function fetchIdByEscritura(int $escritura_id): array public function fetchIdByEscritura(int $escritura_id): array

View File

@ -25,7 +25,7 @@ services:
<<: *restart <<: *restart
env_file: env_file:
- ${APP_PATH:-.}/.env - ${APP_PATH:-.}/.env
# - ${APP_PATH:-.}/.db.env - ${APP_PATH:-.}/.db.env
- ./.key.env - ./.key.env
#- ${APP_PATH:-.}/.remote.env #- ${APP_PATH:-.}/.remote.env
volumes: volumes: