diff --git a/migration/20220920131201_jsonb_to_summary.tx.down.sql b/migration/20220920131201_jsonb_to_summary.tx.down.sql new file mode 100644 index 0000000..ce25791 --- /dev/null +++ b/migration/20220920131201_jsonb_to_summary.tx.down.sql @@ -0,0 +1,23 @@ +update report_summary +set + customer_consumption = nullif(trim(customers->>'consumption'), '')::numeric(16,2), + customer_consumption_fee = nullif(trim(customers->>'consumptionFee'), '')::numeric(14,2), + customer_consumption_critical = nullif(trim(customers->>'critical'), '')::numeric(16,2), + customer_consumption_critical_fee = nullif(trim(customers->>'criticalFee'), '')::numeric(14,2), + customer_consumption_peak = nullif(trim(customers->>'peak'), '')::numeric(16,2), + customer_consumption_peak_fee = nullif(trim(customers->>'peakFee'), '')::numeric(14,2), + customer_consumption_flat = nullif(trim(customers->>'flat'), '')::numeric(16,2), + customer_consumption_flat_fee = nullif(trim(customers->>'flatFee'), '')::numeric(14,2), + customer_consumption_valley = nullif(trim(customers->>'valley'), '')::numeric(16,2), + customer_consumption_valley_fee = nullif(trim(customers->>'valleyFee'), '')::numeric(14,2), + public_consumption = nullif(trim(publics->>'consumption'), '')::numeric(16,2), + public_consumption_fee = nullif(trim(publics->>'consumptionFee'), '')::numeric(14,2), + public_consumption_critical = nullif(trim(publics->>'critical'), '')::numeric(16,2), + public_consumption_critical_fee = nullif(trim(publics->>'criticalFee'), '')::numeric(14,2), + public_consumption_peak = nullif(trim(publics->>'peak'), '')::numeric(16,2), + public_consumption_peak_fee = nullif(trim(publics->>'peakFee'), '')::numeric(14,2), + public_consumption_flat = nullif(trim(publics->>'flat'), '')::numeric(16,2), + public_consumption_flat_fee = nullif(trim(publics->>'flatFee'), '')::numeric(14,2), + public_consumption_valley = nullif(trim(publics->>'valley'), '')::numeric(16,2), + public_consumption_valley_fee = nullif(trim(publics->>'valleyFee'), '')::numeric(14,2), + public_consumption_proportion = nullif(trim(publics->>'proportion'), '')::numeric(16,15); \ No newline at end of file diff --git a/migration/20220920131201_summary_to_jsonb.tx.up.sql b/migration/20220920131201_summary_to_jsonb.tx.up.sql new file mode 100644 index 0000000..32de426 --- /dev/null +++ b/migration/20220920131201_summary_to_jsonb.tx.up.sql @@ -0,0 +1,46 @@ +alter table report_summary + add column if not exists customers jsonb, + add column if not exists publics jsonb, + add column if not exists diluteds jsonb; + +update report_summary +set + customers = jsonb_build_object( + 'consumption', customer_consumption, + 'fee', customer_consumption_fee, + 'critical', customer_consumption_critical, + 'criticalFee', customer_consumption_critical_fee, + 'peak', customer_consumption_peak, + 'peakFee', customer_consumption_peak_fee, + 'flat', customer_consumption_flat, + 'flatFee', customer_consumption_flat_fee, + 'valley', customer_consumption_valley, + 'valleyFee', customer_consumption_valley_fee, + 'proportion', null + ), + publics = jsonb_build_object( + 'consumption', public_consumption, + 'fee', public_consumption_fee, + 'critical', public_consumption_critical, + 'criticalFee', public_consumption_critical_fee, + 'peak', public_consumption_peak, + 'peakFee', public_consumption_peak_fee, + 'flat', public_consumption_flat, + 'flatFee', public_consumption_flat_fee, + 'valley', public_consumption_valley, + 'valleyFee', public_consumption_valley_fee, + 'proportion', public_consumption_proportion + ), + diluteds = jsonb_build_object( + 'consumption', null, + 'fee', null, + 'critical', null, + 'criticalFee', null, + 'peak', null, + 'peakFee', null, + 'flat', null, + 'flatFee', null, + 'valley', null, + 'valleyFee', null, + 'proportion', null + ); \ No newline at end of file