|
1570 | 1570 | WHERE ir.subinstanceid = :sourceAlias.id)::text", |
1571 | 1571 | valueFunction: 'lower(:value)' |
1572 | 1572 | }, |
1573 | | - { |
1574 | | - name: 'precedingTitles', |
1575 | | - sourceAlias: 'inst', |
1576 | | - isIdColumn: false, |
1577 | | - queryable: false, |
1578 | | - essential: true, |
1579 | | - visibleByDefault: false, |
1580 | | - hidden: true, |
1581 | | - dataType: { |
1582 | | - dataType: 'jsonbArrayType', |
1583 | | - itemDataType: { |
1584 | | - dataType: 'stringType', |
1585 | | - }, |
1586 | | - }, |
1587 | | - valueGetter: "(SELECT COALESCE(jsonb_agg(\ |
1588 | | - jsonb_build_object(\ |
1589 | | - 'id', pst.id,\ |
1590 | | - 'title', COALESCE(pst.jsonb ->> 'title',\ |
1591 | | - (CASE WHEN i.jsonb ->> 'source' != 'MARC' THEN i.jsonb ->> 'title'\ |
1592 | | - ELSE (\ |
1593 | | - SELECT pi.jsonb ->> 'title'\ |
1594 | | - FROM ${tenant_id}_mod_fqm_manager.src_inventory_instance pi\ |
1595 | | - WHERE pi.id = pst.precedingInstanceId) END)),\ |
1596 | | - 'hrid', (CASE WHEN i.jsonb ->> 'source' != 'MARC' THEN pst.jsonb ->> 'hrid'\ |
1597 | | - ELSE (\ |
1598 | | - SELECT pi.jsonb ->> 'hrid'\ |
1599 | | - FROM ${tenant_id}_mod_fqm_manager.src_inventory_instance pi\ |
1600 | | - WHERE pi.id = pst.precedingInstanceId) END),\ |
1601 | | - 'precedingInstanceId', pst.precedinginstanceid,\ |
1602 | | - 'identifiers', COALESCE(pst.jsonb -> 'identifiers', \ |
1603 | | - (CASE WHEN i.jsonb ->> 'source' != 'MARC' THEN i.jsonb -> 'identifiers'\ |
1604 | | - ELSE (\ |
1605 | | - SELECT pi.jsonb -> 'identifiers' \ |
1606 | | - FROM ${tenant_id}_mod_fqm_manager.src_inventory_instance pi\ |
1607 | | - WHERE pi.id = pst.precedingInstanceId) END))\ |
1608 | | - )\ |
1609 | | - ), '[]'::jsonb)\ |
1610 | | - FROM ${tenant_id}_mod_fqm_manager.src_preceding_succeeding_title pst\ |
1611 | | - LEFT JOIN ${tenant_id}_mod_fqm_manager.src_inventory_instance i \ |
1612 | | - ON (\ |
1613 | | - CASE WHEN i.jsonb ->> 'source' != 'MARC' THEN pst.succeedingInstanceId\ |
1614 | | - ELSE pst.precedingInstanceId END) = i.id\ |
1615 | | - WHERE pst.succeedingInstanceId = :sourceAlias.id)::text", |
1616 | | - valueFunction: 'lower(:value)' |
1617 | | - }, |
1618 | | - { |
1619 | | - name: 'succeedingTitles', |
1620 | | - sourceAlias: 'inst', |
1621 | | - isIdColumn: false, |
1622 | | - queryable: false, |
1623 | | - essential: true, |
1624 | | - visibleByDefault: false, |
1625 | | - hidden: true, |
1626 | | - dataType: { |
1627 | | - dataType: 'jsonbArrayType', |
1628 | | - itemDataType: { |
1629 | | - dataType: 'stringType', |
1630 | | - }, |
1631 | | - }, |
1632 | | - valueGetter: "(SELECT COALESCE(jsonb_agg(\ |
1633 | | - jsonb_build_object(\ |
1634 | | - 'id', pst.id,\ |
1635 | | - 'title', COALESCE(pst.jsonb ->> 'title',\ |
1636 | | - (CASE WHEN i.jsonb ->> 'source' != 'MARC' THEN i.jsonb ->> 'title'\ |
1637 | | - ELSE (\ |
1638 | | - SELECT pi.jsonb ->> 'title'\ |
1639 | | - FROM ${tenant_id}_mod_fqm_manager.src_inventory_instance pi\ |
1640 | | - WHERE pi.id = pst.succeedingInstanceId) END)),\ |
1641 | | - 'hrid', (CASE WHEN i.jsonb ->> 'source' != 'MARC' THEN pst.jsonb ->> 'hrid'\ |
1642 | | - ELSE (\ |
1643 | | - SELECT pi.jsonb ->> 'hrid'\ |
1644 | | - FROM ${tenant_id}_mod_fqm_manager.src_inventory_instance pi\ |
1645 | | - WHERE pi.id = pst.succeedingInstanceId) END),\ |
1646 | | - 'succeedingInstanceId', pst.succeedinginstanceid,\ |
1647 | | - 'identifiers', COALESCE(pst.jsonb -> 'identifiers',\ |
1648 | | - (CASE WHEN i.jsonb ->> 'source' != 'MARC' THEN i.jsonb -> 'identifiers'\ |
1649 | | - ELSE (\ |
1650 | | - SELECT pi.jsonb -> 'identifiers'\ |
1651 | | - FROM ${tenant_id}_mod_fqm_manager.src_inventory_instance pi\ |
1652 | | - WHERE pi.id = pst.succeedinginstanceid) END))\ |
1653 | | - )\ |
1654 | | - ), '[]'::jsonb)\ |
1655 | | - FROM ${tenant_id}_mod_fqm_manager.src_preceding_succeeding_title pst\ |
1656 | | - LEFT JOIN ${tenant_id}_mod_fqm_manager.src_inventory_instance i\ |
1657 | | - ON (\ |
1658 | | - CASE WHEN i.jsonb ->> 'source' != 'MARC' THEN pst.precedingInstanceId\ |
1659 | | - ELSE pst.succeedingInstanceId END) = i.id\ |
1660 | | - WHERE pst.precedingInstanceId = :sourceAlias.id)::text", |
1661 | | - valueFunction: 'lower(:value)' |
1662 | | - }, |
1663 | 1573 | ], |
1664 | 1574 | } |
0 commit comments