优化同步
This commit is contained in:
parent
fe98879597
commit
f8f3fbe74d
@ -36,19 +36,16 @@ DECLARE
|
|||||||
temp_service_end_at TIMESTAMP;
|
temp_service_end_at TIMESTAMP;
|
||||||
activated_at TIMESTAMP;
|
activated_at TIMESTAMP;
|
||||||
BEGIN
|
BEGIN
|
||||||
FOR row IN (SELECT cards.sim, virtual_activated_at FROM vd.cards WHERE cards.sim = ANY ($1))
|
SELECT jsonb_object_agg(cards.sim, virtual_activated_at) INTO activate_cards FROM vd.cards WHERE cards.sim = ANY ($1);
|
||||||
LOOP
|
|
||||||
activate_cards := activate_cards || jsonb_build_object(row.sim, row_to_json(row));
|
|
||||||
END LOOP;
|
|
||||||
|
|
||||||
FOR row IN (SELECT virtual_packages.id,
|
IF activate_cards IS NOT NULL THEN
|
||||||
|
SELECT jsonb_object_agg(t.id, row_to_json(t)) INTO packages FROM (
|
||||||
|
SELECT virtual_packages.id,
|
||||||
virtual_packages.service_months,
|
virtual_packages.service_months,
|
||||||
virtual_packages.effect_months,
|
virtual_packages.effect_months,
|
||||||
virtual_packages.delay_months
|
virtual_packages.delay_months
|
||||||
FROM vd.virtual_packages)
|
FROM vd.virtual_packages
|
||||||
LOOP
|
) t;
|
||||||
packages := packages || jsonb_build_object(row.id, row_to_json(row));
|
|
||||||
END LOOP;
|
|
||||||
|
|
||||||
query := 'SELECT id, type, sim, package_id, created_at, counts, service_start_at, service_end_at
|
query := 'SELECT id, type, sim, package_id, created_at, counts, service_start_at, service_end_at
|
||||||
FROM vd.virtual_order_cards_partition
|
FROM vd.virtual_order_cards_partition
|
||||||
@ -136,6 +133,8 @@ BEGIN
|
|||||||
service_end_at := (order_row->>'service_end_at')::TIMESTAMP;
|
service_end_at := (order_row->>'service_end_at')::TIMESTAMP;
|
||||||
RETURN NEXT;
|
RETURN NEXT;
|
||||||
END LOOP;
|
END LOOP;
|
||||||
|
END IF;
|
||||||
|
|
||||||
END;
|
END;
|
||||||
$$ LANGUAGE plpgsql;
|
$$ LANGUAGE plpgsql;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user