Conecciones de Promociones
This commit is contained in:
@ -94,7 +94,7 @@ class Proyecto extends Ideal\Repository
|
||||
->where("a.descripcion LIKE ?");
|
||||
return $this->fetchOne($query, ["%{$name}%"]);
|
||||
}
|
||||
public function fetchAllActive(): array
|
||||
public function fetchAllActive(null|string|array $orderBy = null): array
|
||||
{
|
||||
$etapaProyecto = $this->etapaRepository->fetchByDescripcion('Proyecto');
|
||||
$etapaTerminado = $this->etapaRepository->fetchByDescripcion('Terminado');
|
||||
@ -103,8 +103,12 @@ class Proyecto extends Ideal\Repository
|
||||
->from("{$this->getTable()} a")
|
||||
->joined($this->joinTerreno())
|
||||
->joined($this->joinEstado())
|
||||
->where("et.orden BETWEEN {$etapaProyecto->orden} AND ({$etapaTerminado->orden} - 1)")
|
||||
->order('a.descripcion');
|
||||
->where("et.orden BETWEEN {$etapaProyecto->orden} AND ({$etapaTerminado->orden} - 1)");
|
||||
if ($orderBy === null) {
|
||||
$query = $query->order('a.descripcion');
|
||||
} else {
|
||||
$query = $query->order($orderBy);
|
||||
}
|
||||
return $this->fetchMany($query);
|
||||
}
|
||||
public function fetchAllEscriturando(): array
|
||||
@ -175,8 +179,14 @@ class Proyecto extends Ideal\Repository
|
||||
$query = $this->connection->getQueryBuilder()
|
||||
->select('a.*')
|
||||
->from("{$this->getTable()} a")
|
||||
->joined('INNER JOIN promotion_projects pp ON pp.project_id = a.id')
|
||||
->where('pp.promotion_id = :promotion_id');
|
||||
->joined('LEFT OUTER JOIN proyecto_tipo_unidad ptu ON ptu.proyecto = a.id')
|
||||
->joined('LEFT OUTER JOIN unidad ON unidad.pt = ptu.id')
|
||||
->joined('LEFT OUTER JOIN promotion_units pu ON pu.unit_id = unidad.id')
|
||||
->joined('LEFT OUTER JOIN broker_contracts bc ON bc.project_id = a.id')
|
||||
->joined('LEFT OUTER JOIN promotion_contracts pc ON pc.contract_id = bc.id')
|
||||
->where('pu.promotion_id = :promotion_id OR pc.promotion_id = :promotion_id')
|
||||
->group('a.id');
|
||||
trigger_error($query . ' ' . json_encode(['promotion_id' => $promotion_id]));
|
||||
return $this->fetchMany($query, ['promotion_id' => $promotion_id]);
|
||||
}
|
||||
/*public function fetchSuperficieVendido(int $proyecto_id): float
|
||||
|
Reference in New Issue
Block a user