Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function getJournalRecordsForPeriod($dateStart, $dateEnd, Connection $logsDbConnection, Connection $dbConnection)
- {
- $dbConnection->exec("
- SELECT dblink_connect_u(
- 'journal_records_download_connection',
- 'host = {$logsDbConnection->getHost()}
- user={$logsDbConnection->getUsername()}
- password={$logsDbConnection->getPassword()}
- dbname={$logsDbConnection->getDatabase()}'
- )
- ");
- $sql = <<<SQL
- WITH child_journal_records AS (
- SELECT cj.journal_record_id
- FROM journal.child_journal_house_quality_control cj
- WHERE cj.created_at >='$dateStart' AND cj.created_at <='$dateEnd'
- ) SELECT journal_records.*
- FROM dblink(
- 'journal_records_download_connection',
- '
- SELECT jr.id,
- jr.object_type_id,
- jr.object_pk,
- jr.changes,
- jr.context,
- jr.action,
- jr.user_id,
- jr.created_at
- FROM journal.journal_record jr
- WHERE jr.id IN child_journal_records
- '
- ) AS journal_records (id BIGINT,
- object_type_id SMALLINT,
- object_pk JSONB,
- changes JSON,
- context TEXT,
- action journal.JOURNAL_ACTIONS,
- user_id BIGINT,
- created_at TIMESTAMP(0) WITHOUT TIME ZONE
- )
- SQL;
- // $sql = <<<SQL
- //WITH child_journal_records AS (
- // SELECT cj.journal_record_id
- // FROM journal.child_journal_house_quality_control cj
- // WHERE cj.created_at >='$dateStart' AND cj.created_at <='$dateEnd'
- //) SELECT * FROM child_journal_records
- //SQL;
- $result = $dbConnection->fetchAll($sql);
- var_dump($result);
- die();
- $dbConnection->exec("SELECT dblink_disconnect('journal_records_download_connection')");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement