mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-04 10:21:14 -05:00
notify-api-56 squash migrations
This commit is contained in:
@@ -1,27 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0013_add_loadtest_client
|
|
||||||
Revises: 0012_complete_provider_details
|
|
||||||
Create Date: 2016-05-05 09:14:29.328841
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
revision = '0013_add_loadtest_client'
|
|
||||||
down_revision = '0012_complete_provider_details'
|
|
||||||
|
|
||||||
import uuid
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
import sqlalchemy as sa
|
|
||||||
from sqlalchemy.dialects import postgresql
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
|
|
||||||
op.execute(
|
|
||||||
"INSERT INTO provider_details (id, display_name, identifier, priority, notification_type, active) values ('{}', 'Loadtesting', 'loadtesting', 30, 'sms', true)".format(str(uuid.uuid4()))
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.drop_table('provider_details')
|
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0014_add_template_version
|
Revision ID: 0014_add_template_version
|
||||||
Revises: 0013_add_loadtest_client
|
Revises: 0012_complete_provider_details
|
||||||
Create Date: 2016-05-11 16:00:51.478012
|
Create Date: 2016-05-11 16:00:51.478012
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0014_add_template_version'
|
revision = '0014_add_template_version'
|
||||||
down_revision = '0013_add_loadtest_client'
|
down_revision = '0012_complete_provider_details'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,35 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0027_update_provider_rates
|
|
||||||
Revises: 0026_rename_notify_service
|
|
||||||
Create Date: 2016-06-08 01:00:00.000000
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
revision = '0027_update_provider_rates'
|
|
||||||
down_revision = '0026_rename_notify_service'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
import sqlalchemy as sa
|
|
||||||
from datetime import datetime
|
|
||||||
import uuid
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
### commands auto generated by Alembic - please adjust! ###
|
|
||||||
op.get_bind()
|
|
||||||
op.execute((
|
|
||||||
"INSERT INTO provider_rates (id, valid_from, rate, provider_id) VALUES ('{}', '{}', 1.8, "
|
|
||||||
"(SELECT id FROM provider_details WHERE identifier = 'mmg'))").format(uuid.uuid4(), datetime.utcnow()))
|
|
||||||
op.execute((
|
|
||||||
"INSERT INTO provider_rates (id, valid_from, rate, provider_id) VALUES ('{}', '{}', 2.5, "
|
|
||||||
"(SELECT id FROM provider_details WHERE identifier = 'firetext'))").format(uuid.uuid4(), datetime.utcnow()))
|
|
||||||
### end Alembic commands ###
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
### commands auto generated by Alembic - please adjust! ###
|
|
||||||
op.get_bind()
|
|
||||||
op.execute("DELETE FROM provider_rates")
|
|
||||||
### end Alembic commands ###
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0028_fix_reg_template_history
|
Revision ID: 0028_fix_reg_template_history
|
||||||
Revises: 0027_update_provider_rates
|
Revises: 0026_rename_notify_service
|
||||||
Create Date: 2016-06-13 11:04:15.888017
|
Create Date: 2016-06-13 11:04:15.888017
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -10,7 +10,7 @@ Create Date: 2016-06-13 11:04:15.888017
|
|||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
revision = '0028_fix_reg_template_history'
|
revision = '0028_fix_reg_template_history'
|
||||||
down_revision = '0027_update_provider_rates'
|
down_revision = '0026_rename_notify_service'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,38 +0,0 @@
|
|||||||
"""mmg rates now set to 1.65 pence per sms
|
|
||||||
|
|
||||||
Revision ID: 0040_adjust_mmg_provider_rate
|
|
||||||
Revises: 0039_fix_notifications
|
|
||||||
Create Date: 2016-07-06 15:19:23.124212
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
revision = '0040_adjust_mmg_provider_rate'
|
|
||||||
down_revision = '0039_fix_notifications'
|
|
||||||
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
import sqlalchemy as sa
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
### commands auto generated by Alembic - please adjust! ###
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(
|
|
||||||
sa.sql.text(("INSERT INTO provider_rates (id, valid_from, rate, provider_id) "
|
|
||||||
"VALUES (:id, :valid_from, :rate, (SELECT id FROM provider_details WHERE identifier = 'mmg'))")),
|
|
||||||
id=uuid.uuid4(),
|
|
||||||
valid_from=datetime(2016, 7, 1),
|
|
||||||
rate=1.65
|
|
||||||
)
|
|
||||||
### end Alembic commands ###
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
### commands auto generated by Alembic - please adjust! ###
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(("DELETE FROM provider_rates "
|
|
||||||
"WHERE provider_id = (SELECT id FROM provider_details WHERE identifier = 'mmg') "
|
|
||||||
"AND rate = 1.65"))
|
|
||||||
### end Alembic commands ###
|
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0041_email_template
|
|
||||||
Revises: 0040_adjust_mmg_provider_rate
|
|
||||||
Create Date: 2016-07-07 16:02:06.241769
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
revision = '0041_email_template'
|
|
||||||
down_revision = '0040_adjust_mmg_provider_rate'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
user_id = '6af522d0-2915-4e52-83a3-3690455a5fe6'
|
|
||||||
service_id = 'd6aa2c68-a2d9-4437-ab19-3ae8eb202553'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
template_history_insert = """INSERT INTO templates_history (id, name, template_type, created_at,
|
|
||||||
content, archived, service_id,
|
|
||||||
subject, created_by_id, version)
|
|
||||||
VALUES ('{}', '{}', '{}', '{}', '{}', False, '{}', '{}', '{}', 1)
|
|
||||||
"""
|
|
||||||
template_insert = """INSERT INTO templates (id, name, template_type, created_at,
|
|
||||||
content, archived, service_id, subject, created_by_id, version)
|
|
||||||
VALUES ('{}', '{}', '{}', '{}', '{}', False, '{}', '{}', '{}', 1)
|
|
||||||
"""
|
|
||||||
content = """You already have a GOV.UK Notify account with this email address.
|
|
||||||
|
|
||||||
Sign in here: ((signin_url))
|
|
||||||
|
|
||||||
If you’ve forgotten your password, you can reset it here: ((forgot_password_url))
|
|
||||||
|
|
||||||
|
|
||||||
If you didn’t try to register for a GOV.UK Notify account recently, please let us know here: ((feedback_url))"""
|
|
||||||
|
|
||||||
op.get_bind()
|
|
||||||
op.execute(template_history_insert.format('0880fbb1-a0c6-46f0-9a8e-36c986381ceb',
|
|
||||||
'Your GOV.UK Notify account', 'email',
|
|
||||||
datetime.utcnow(), content, service_id,
|
|
||||||
'Your GOV.UK Notify account', user_id))
|
|
||||||
op.execute(
|
|
||||||
template_insert.format('0880fbb1-a0c6-46f0-9a8e-36c986381ceb', 'Your GOV.UK Notify account', 'email',
|
|
||||||
datetime.utcnow(), content, service_id,
|
|
||||||
'Your GOV.UK Notify account', user_id))
|
|
||||||
|
|
||||||
# If you are copying this migration, please remember about an insert to TemplateRedacted,
|
|
||||||
# which was not originally included here either by mistake or because it was before TemplateRedacted existed
|
|
||||||
# op.execute(
|
|
||||||
# """
|
|
||||||
# INSERT INTO template_redacted (template_id, redact_personalisation, updated_at, updated_by_id)
|
|
||||||
# VALUES ('0880fbb1-a0c6-46f0-9a8e-36c986381ceb', '{}', '{}', '{}')
|
|
||||||
# ;
|
|
||||||
# """.format(False, datetime.utcnow(), user_id)
|
|
||||||
# )
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.execute("delete from notifications where template_id = '0880fbb1-a0c6-46f0-9a8e-36c986381ceb'")
|
|
||||||
op.execute("delete from jobs where template_id = '0880fbb1-a0c6-46f0-9a8e-36c986381ceb'")
|
|
||||||
op.execute("delete from template_statistics where template_id = '0880fbb1-a0c6-46f0-9a8e-36c986381ceb'")
|
|
||||||
op.execute("delete from templates_history where id = '0880fbb1-a0c6-46f0-9a8e-36c986381ceb'")
|
|
||||||
op.execute("delete from templates where id = '0880fbb1-a0c6-46f0-9a8e-36c986381ceb'")
|
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0042_notification_history
|
Revision ID: 0042_notification_history
|
||||||
Revises: 0041_email_template
|
Revises: 0039_fix_notifications
|
||||||
Create Date: 2016-07-07 13:15:35.503107
|
Create Date: 2016-07-07 13:15:35.503107
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0042_notification_history'
|
revision = '0042_notification_history'
|
||||||
down_revision = '0041_email_template'
|
down_revision = '0039_fix_notifications'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0047_ukvi_spelling
|
|
||||||
Revises: 0046_organisations_and_branding
|
|
||||||
Create Date: 2016-08-22 16:06:32.981723
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
revision = '0047_ukvi_spelling'
|
|
||||||
down_revision = '0046_organisations_and_branding'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.execute("""
|
|
||||||
UPDATE organisation
|
|
||||||
SET name = 'UK Visas & Immigration'
|
|
||||||
WHERE id = '9d25d02d-2915-4e98-874b-974e123e8536'
|
|
||||||
""")
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.execute("""
|
|
||||||
UPDATE organisation
|
|
||||||
SET name = 'UK Visas and Immigration'
|
|
||||||
WHERE id = '9d25d02d-2915-4e98-874b-974e123e8536'
|
|
||||||
""")
|
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0048_job_scheduled_time
|
Revision ID: 0048_job_scheduled_time
|
||||||
Revises: 0047_ukvi_spelling
|
Revises: 0046_organisations_and_branding
|
||||||
Create Date: 2016-08-24 13:21:51.744526
|
Create Date: 2016-08-24 13:21:51.744526
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0048_job_scheduled_time'
|
revision = '0048_job_scheduled_time'
|
||||||
down_revision = '0047_ukvi_spelling'
|
down_revision = '0046_organisations_and_branding'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,67 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0057_change_email_template
|
|
||||||
Revises: 0056_minor_updates
|
|
||||||
Create Date: 2016-10-11 09:24:45.669018
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
from datetime import datetime
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
revision = '0057_change_email_template'
|
|
||||||
down_revision = '0056_minor_updates'
|
|
||||||
|
|
||||||
user_id = '6af522d0-2915-4e52-83a3-3690455a5fe6'
|
|
||||||
service_id = 'd6aa2c68-a2d9-4437-ab19-3ae8eb202553'
|
|
||||||
template_id = 'eb4d9930-87ab-4aef-9bce-786762687884'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
template_history_insert = """INSERT INTO templates_history (id, name, template_type, created_at,
|
|
||||||
content, archived, service_id,
|
|
||||||
subject, created_by_id, version)
|
|
||||||
VALUES ('{}', '{}', '{}', '{}', '{}', False, '{}', '{}', '{}', 1)
|
|
||||||
"""
|
|
||||||
template_insert = """INSERT INTO templates (id, name, template_type, created_at,
|
|
||||||
content, archived, service_id, subject, created_by_id, version)
|
|
||||||
VALUES ('{}', '{}', '{}', '{}', '{}', False, '{}', '{}', '{}', 1)
|
|
||||||
"""
|
|
||||||
template_content = \
|
|
||||||
"""Hi ((name)),\n\nClick this link to confirm your new email address:
|
|
||||||
\n\n((url))
|
|
||||||
\n\nIf you didn’t try to change the email address for your GOV.UK Notify account, let us know here:
|
|
||||||
\n\n((feedback_url))"""
|
|
||||||
|
|
||||||
template_name = 'Confirm new email address'
|
|
||||||
op.execute(template_history_insert.format(template_id,
|
|
||||||
template_name,
|
|
||||||
'email',
|
|
||||||
datetime.utcnow(), template_content,
|
|
||||||
service_id,
|
|
||||||
template_name, user_id))
|
|
||||||
op.execute(template_insert.format(template_id,
|
|
||||||
template_name,
|
|
||||||
'email',
|
|
||||||
datetime.utcnow(),
|
|
||||||
template_content,
|
|
||||||
service_id,
|
|
||||||
template_name, user_id))
|
|
||||||
|
|
||||||
# If you are copying this migration, please remember about an insert to TemplateRedacted,
|
|
||||||
# which was not originally included here either by mistake or because it was before TemplateRedacted existed
|
|
||||||
# op.execute(
|
|
||||||
# """
|
|
||||||
# INSERT INTO template_redacted (template_id, redact_personalisation, updated_at, updated_by_id)
|
|
||||||
# VALUES ('{}', '{}', '{}', '{}')
|
|
||||||
# ;
|
|
||||||
# """.format(template_id, False, datetime.utcnow(), user_id)
|
|
||||||
# )
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.execute("DELETE FROM notifications WHERE template_id = '{}'".format(template_id))
|
|
||||||
op.execute("DELETE FROM notification_history WHERE template_id = '{}'".format(template_id))
|
|
||||||
op.execute("delete from templates_history where id = '{}'".format(template_id))
|
|
||||||
op.execute("delete from templates where id = '{}'".format(template_id))
|
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0058_add_letters_flag
|
Revision ID: 0058_add_letters_flag
|
||||||
Revises: 0057_change_email_template
|
Revises: 0056_minor_updates
|
||||||
Create Date: 2016-10-25 17:37:27.660723
|
Create Date: 2016-10-25 17:37:27.660723
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0058_add_letters_flag'
|
revision = '0058_add_letters_flag'
|
||||||
down_revision = '0057_change_email_template'
|
down_revision = '0056_minor_updates'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,31 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0066_add_dvla_provider
|
|
||||||
Revises: 0065_users_current_session_id
|
|
||||||
Create Date: 2017-03-02 10:32:28.984947
|
|
||||||
|
|
||||||
"""
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
revision = '0066_add_dvla_provider'
|
|
||||||
down_revision = '0065_users_current_session_id'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
provider_id = str(uuid.uuid4())
|
|
||||||
op.execute(
|
|
||||||
"INSERT INTO provider_details (id, display_name, identifier, priority, notification_type, active, version) values ('{}', 'DVLA', 'dvla', 50, 'letter', true, 1)".format(provider_id)
|
|
||||||
)
|
|
||||||
op.execute(
|
|
||||||
"INSERT INTO provider_details_history (id, display_name, identifier, priority, notification_type, active, version) values ('{}', 'DVLA', 'dvla', 50, 'letter', true, 1)".format(provider_id)
|
|
||||||
)
|
|
||||||
op.execute("INSERT INTO provider_rates (id, valid_from, rate, provider_id) VALUES ('{}', '{}', 1.0, '{}')".format(uuid.uuid4(), datetime.utcnow(), provider_id))
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.execute("DELETE FROM provider_rates where provider_id = (SELECT id from provider_details where display_name='DVLA')")
|
|
||||||
op.execute("DELETE FROM provider_details_history where display_name = 'DVLA'")
|
|
||||||
op.execute("DELETE FROM provider_details where display_name = 'DVLA'")
|
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0067_service_contact_block
|
Revision ID: 0067_service_contact_block
|
||||||
Revises: 0066_add_dvla_provider
|
Revises: 0065_users_current_session_id
|
||||||
Create Date: 2017-02-28 11:23:40.299110
|
Create Date: 2017-02-28 11:23:40.299110
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0067_service_contact_block'
|
revision = '0067_service_contact_block'
|
||||||
down_revision = '0066_add_dvla_provider'
|
down_revision = '0065_users_current_session_id'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0074_update_sms_rate
|
|
||||||
Revises: 0073_add_international_sms_flag
|
|
||||||
Create Date: 2017-04-24 12:10:02.116278
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
import uuid
|
|
||||||
|
|
||||||
revision = '0074_update_sms_rate'
|
|
||||||
down_revision = '0073_add_international_sms_flag'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.get_bind()
|
|
||||||
op.execute("INSERT INTO provider_rates (id, valid_from, rate, provider_id) "
|
|
||||||
"VALUES ('{}', '2017-04-01 00:00:00', 1.58, "
|
|
||||||
"(SELECT id FROM provider_details WHERE identifier = 'mmg'))".format(uuid.uuid4())
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.get_bind()
|
|
||||||
op.execute("DELETE FROM provider_rates where valid_from = '2017-04-01 00:00:00' "
|
|
||||||
"and provider_id = (SELECT id FROM provider_details WHERE identifier = 'mmg')")
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0075_create_rates_table
|
Revision ID: 0075_create_rates_table
|
||||||
Revises: 0074_update_sms_rate
|
Revises: 0073_add_international_sms_flag
|
||||||
Create Date: 2017-04-24 15:12:18.907629
|
Create Date: 2017-04-24 15:12:18.907629
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -10,7 +10,7 @@ Create Date: 2017-04-24 15:12:18.907629
|
|||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
revision = '0075_create_rates_table'
|
revision = '0075_create_rates_table'
|
||||||
down_revision = '0074_update_sms_rate'
|
down_revision = '0073_add_international_sms_flag'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,25 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0079_update_rates
|
|
||||||
Revises: 0078_sent_notification_status
|
|
||||||
Create Date: 2017-05-03 12:31:20.731069
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
revision = '0079_update_rates'
|
|
||||||
down_revision = '0078_sent_notification_status'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.get_bind()
|
|
||||||
op.execute("UPDATE RATES SET rate = 0.0158 WHERE valid_from = '2017-04-01 00:00:00'")
|
|
||||||
op.execute("UPDATE RATES SET rate = 0.0165 WHERE valid_from = '2016-05-18 00:00:00'")
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.get_bind()
|
|
||||||
op.execute("UPDATE RATES SET rate = 1.58 WHERE valid_from = '2017-04-01 00:00:00'")
|
|
||||||
op.execute("UPDATE RATES SET rate = 1.65 WHERE valid_from = '2016-05-18 00:00:00'")
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0080_fix_rate_start_date
|
|
||||||
Revises: 0079_update_rates
|
|
||||||
Create Date: 2017-05-03 16:50:11.334116
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
revision = '0080_fix_rate_start_date'
|
|
||||||
down_revision = '0079_update_rates'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
import sqlalchemy as sa
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.get_bind()
|
|
||||||
op.execute("UPDATE RATES SET valid_from = '2017-03-31 23:00:00' WHERE valid_from = '2017-04-01 00:00:00'")
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.get_bind()
|
|
||||||
op.execute("UPDATE RATES SET valid_from = '2017-03-31 23:00:00' WHERE valid_from = '2017-04-01 00:00:00'")
|
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0081_noti_status_as_enum
|
Revision ID: 0081_noti_status_as_enum
|
||||||
Revises: 0080_fix_rate_start_date
|
Revises: 0078_sent_notification_status
|
||||||
Create Date: 2017-05-02 14:50:04.070874
|
Create Date: 2017-05-02 14:50:04.070874
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0081_noti_status_as_enum'
|
revision = '0081_noti_status_as_enum'
|
||||||
down_revision = '0080_fix_rate_start_date'
|
down_revision = '0078_sent_notification_status'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,32 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0093_data_gov_uk
|
|
||||||
Revises: 0092_add_inbound_provider
|
|
||||||
Create Date: 2017-06-05 16:15:17.744908
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
revision = '0093_data_gov_uk'
|
|
||||||
down_revision = '0092_add_inbound_provider'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
import sqlalchemy as sa
|
|
||||||
from sqlalchemy.dialects import postgresql
|
|
||||||
|
|
||||||
DATA_GOV_UK_ID = '123496d4-44cb-4324-8e0a-4187101f4bdc'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.execute("""INSERT INTO organisation VALUES (
|
|
||||||
'{}',
|
|
||||||
'',
|
|
||||||
'data_gov_uk_x2.png',
|
|
||||||
'data gov.uk'
|
|
||||||
)""".format(DATA_GOV_UK_ID))
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.execute("""
|
|
||||||
DELETE FROM organisation WHERE "id" = '{}'
|
|
||||||
""".format(DATA_GOV_UK_ID))
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0094_job_stats_update
|
Revision ID: 0094_job_stats_update
|
||||||
Revises: 0093_data_gov_uk
|
Revises: 0092_add_inbound_provider
|
||||||
Create Date: 2017-06-06 14:37:30.051647
|
Create Date: 2017-06-06 14:37:30.051647
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -10,7 +10,7 @@ import sqlalchemy as sa
|
|||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0094_job_stats_update'
|
revision = '0094_job_stats_update'
|
||||||
down_revision = '0093_data_gov_uk'
|
down_revision = '0092_add_inbound_provider'
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
def upgrade():
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0104_more_letter_orgs
|
|
||||||
Revises: 0103_add_historical_redact
|
|
||||||
Create Date: 2017-06-29 12:44:16.815039
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
|
||||||
revision = '0104_more_letter_orgs'
|
|
||||||
down_revision = '0103_add_historical_redact'
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
import sqlalchemy as sa
|
|
||||||
from sqlalchemy.dialects import postgresql
|
|
||||||
from flask import current_app
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.execute("""
|
|
||||||
INSERT INTO dvla_organisation VALUES
|
|
||||||
('003', 'Department for Work and Pensions'),
|
|
||||||
('004', 'Government Equalities Office')
|
|
||||||
""")
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
# data migration, no downloads
|
|
||||||
pass
|
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0105_opg_letter_org
|
Revision ID: 0105_opg_letter_org
|
||||||
Revises: 0104_more_letter_orgs
|
Revises: 0103_add_historical_redact
|
||||||
Create Date: 2017-06-29 12:44:16.815039
|
Create Date: 2017-06-29 12:44:16.815039
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0105_opg_letter_org'
|
revision = '0105_opg_letter_org'
|
||||||
down_revision = '0104_more_letter_orgs'
|
down_revision = '0103_add_historical_redact'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
|
|||||||
@@ -1,38 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: ea1c2f80a50e
|
|
||||||
Revises: 0152_kill_service_free_fragments
|
|
||||||
Create Date: 2018-01-04 10:27:01.014640
|
|
||||||
|
|
||||||
"""
|
|
||||||
from alembic import op
|
|
||||||
import sqlalchemy as sa
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0153_add_is_letter_contact_blank'
|
|
||||||
down_revision = '0152_kill_service_free_fragments'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.add_column('templates', sa.Column('is_letter_contact_blank', sa.Boolean(), nullable=True))
|
|
||||||
op.add_column('templates_history', sa.Column('is_letter_contact_blank', sa.Boolean(), nullable=True))
|
|
||||||
op.execute("update templates set is_letter_contact_blank = false")
|
|
||||||
op.execute("update templates_history set is_letter_contact_blank = false")
|
|
||||||
op.alter_column("templates", "is_letter_contact_blank", nullable=False)
|
|
||||||
op.alter_column("templates_history", "is_letter_contact_blank", nullable=False)
|
|
||||||
|
|
||||||
op.create_check_constraint(
|
|
||||||
"ck_templates_contact_block_is_blank",
|
|
||||||
"templates",
|
|
||||||
"Not(is_letter_contact_blank = True and service_letter_contact_id is not Null)"
|
|
||||||
)
|
|
||||||
op.create_check_constraint(
|
|
||||||
"ck_templates_history_contact_block_is_blank",
|
|
||||||
"templates_history",
|
|
||||||
"Not(is_letter_contact_blank = True and service_letter_contact_id is not Null)"
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.drop_column('templates_history', 'is_letter_contact_blank')
|
|
||||||
op.drop_column('templates', 'is_letter_contact_blank')
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0154_nullable_is_blank
|
|
||||||
Revises: 0153_add_is_letter_contact_blank
|
|
||||||
Create Date: 2018-01-05 15:49:36.522210
|
|
||||||
|
|
||||||
"""
|
|
||||||
from alembic import op
|
|
||||||
import sqlalchemy as sa
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0154_nullable_is_blank'
|
|
||||||
down_revision = '0153_add_is_letter_contact_blank'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.alter_column('templates', 'is_letter_contact_blank', nullable=True)
|
|
||||||
op.alter_column('templates_history', 'is_letter_contact_blank', nullable=True)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.alter_column('templates', 'is_letter_contact_blank', nullable=True)
|
|
||||||
op.alter_column('templates_history', 'is_letter_contact_blank', nullable=True)
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0155_revert_0153
|
|
||||||
Revises: 0154_nullable_is_blank
|
|
||||||
Create Date: 2018-01-05 14:09:21.200102
|
|
||||||
|
|
||||||
"""
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
revision = '0155_revert_0153'
|
|
||||||
down_revision = '0154_nullable_is_blank'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.drop_column('templates', 'is_letter_contact_blank')
|
|
||||||
op.drop_column('templates_history', 'is_letter_contact_blank')
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
pass
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
Revision ID: 0156_set_temp_letter_contact
|
Revision ID: 0156_set_temp_letter_contact
|
||||||
Revises: 0155_revert_0153
|
Revises: 0152_kill_service_free_fragments
|
||||||
Create Date: 2018-01-05 17:04:20.596271
|
Create Date: 2018-01-05 17:04:20.596271
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -9,7 +9,7 @@ from alembic import op
|
|||||||
|
|
||||||
|
|
||||||
revision = '0156_set_temp_letter_contact'
|
revision = '0156_set_temp_letter_contact'
|
||||||
down_revision = '0155_revert_0153'
|
down_revision = '0152_kill_service_free_fragments'
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
def upgrade():
|
||||||
|
|||||||
@@ -1,37 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0202_new_letter_pricing
|
|
||||||
Revises: 0201_another_letter_org
|
|
||||||
Create Date: 2017-07-09 12:44:16.815039
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
revision = '0202_new_letter_pricing'
|
|
||||||
down_revision = '0201_another_letter_org'
|
|
||||||
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
|
|
||||||
start = datetime(2018, 6, 30, 23, 0)
|
|
||||||
|
|
||||||
NEW_RATES = [
|
|
||||||
(uuid.uuid4(), start, 4, 0.39, True, 'second'),
|
|
||||||
(uuid.uuid4(), start, 4, 0.51, False, 'second'),
|
|
||||||
(uuid.uuid4(), start, 5, 0.42, True, 'second'),
|
|
||||||
(uuid.uuid4(), start, 5, 0.57, False, 'second'),
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
for id, start_date, sheet_count, rate, crown, post_class in NEW_RATES:
|
|
||||||
conn.execute("""
|
|
||||||
INSERT INTO letter_rates (id, start_date, sheet_count, rate, crown, post_class)
|
|
||||||
VALUES ('{}', '{}', '{}', '{}', '{}', '{}')
|
|
||||||
""".format(id, start_date, sheet_count, rate, crown, post_class))
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
pass
|
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0203_fix_old_incomplete_jobs
|
Revision ID: 0203_fix_old_incomplete_jobs
|
||||||
Revises: 0202_new_letter_pricing
|
Revises: 0201_another_letter_org
|
||||||
Create Date: 2017-06-29 12:44:16.815039
|
Create Date: 2017-06-29 12:44:16.815039
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0203_fix_old_incomplete_jobs'
|
revision = '0203_fix_old_incomplete_jobs'
|
||||||
down_revision = '0202_new_letter_pricing'
|
down_revision = '0201_another_letter_org'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
|
|
||||||
|
|||||||
@@ -1,25 +0,0 @@
|
|||||||
"""
|
|
||||||
Revision ID: 0217_default_email_branding
|
|
||||||
Revises: 0216_remove_colours
|
|
||||||
Create Date: 2018-08-24 13:36:49.346156
|
|
||||||
"""
|
|
||||||
from alembic import op
|
|
||||||
from app.models import BRANDING_ORG
|
|
||||||
|
|
||||||
revision = '0217_default_email_branding'
|
|
||||||
down_revision = '0216_remove_colours'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.execute("""
|
|
||||||
update
|
|
||||||
email_branding
|
|
||||||
set
|
|
||||||
brand_type = '{}'
|
|
||||||
where
|
|
||||||
brand_type = null
|
|
||||||
""".format(BRANDING_ORG))
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
pass
|
|
||||||
@@ -1,13 +1,13 @@
|
|||||||
"""empty message
|
"""empty message
|
||||||
|
|
||||||
Revision ID: 0218_another_letter_org
|
Revision ID: 0218_another_letter_org
|
||||||
Revises: 0217_default_email_branding
|
Revises: 0216_remove_colours
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# revision identifiers, used by Alembic.
|
# revision identifiers, used by Alembic.
|
||||||
revision = '0218_another_letter_org'
|
revision = '0218_another_letter_org'
|
||||||
down_revision = '0217_default_email_branding'
|
down_revision = '0216_remove_colours'
|
||||||
|
|
||||||
from alembic import op
|
from alembic import op
|
||||||
|
|
||||||
|
|||||||
@@ -1,77 +0,0 @@
|
|||||||
"""empty message
|
|
||||||
|
|
||||||
Revision ID: 0229_new_letter_rates
|
|
||||||
Revises: 0228_notification_postage
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
revision = '0229_new_letter_rates'
|
|
||||||
down_revision = '0228_notification_postage'
|
|
||||||
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
from alembic import op
|
|
||||||
from sqlalchemy.sql import text
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
START = datetime(2018, 9, 30, 23, 0)
|
|
||||||
|
|
||||||
NEW_RATES = [
|
|
||||||
(uuid.uuid4(), START, 1, 0.30, False, 'second'),
|
|
||||||
(uuid.uuid4(), START, 2, 0.35, True, 'second'),
|
|
||||||
(uuid.uuid4(), START, 2, 0.35, False, 'second'),
|
|
||||||
(uuid.uuid4(), START, 3, 0.40, True, 'second'),
|
|
||||||
(uuid.uuid4(), START, 3, 0.40, False, 'second'),
|
|
||||||
(uuid.uuid4(), START, 4, 0.45, True, 'second'),
|
|
||||||
(uuid.uuid4(), START, 4, 0.45, False, 'second'),
|
|
||||||
(uuid.uuid4(), START, 5, 0.50, True, 'second'),
|
|
||||||
(uuid.uuid4(), START, 5, 0.50, False, 'second'),
|
|
||||||
(uuid.uuid4(), START, 1, 0.56, True, 'first'),
|
|
||||||
(uuid.uuid4(), START, 1, 0.56, False, 'first'),
|
|
||||||
(uuid.uuid4(), START, 2, 0.61, True, 'first'),
|
|
||||||
(uuid.uuid4(), START, 2, 0.61, False, 'first'),
|
|
||||||
(uuid.uuid4(), START, 3, 0.66, True, 'first'),
|
|
||||||
(uuid.uuid4(), START, 3, 0.66, False, 'first'),
|
|
||||||
(uuid.uuid4(), START, 4, 0.71, True, 'first'),
|
|
||||||
(uuid.uuid4(), START, 4, 0.71, False, 'first'),
|
|
||||||
(uuid.uuid4(), START, 5, 0.76, True, 'first'),
|
|
||||||
(uuid.uuid4(), START, 5, 0.76, False, 'first'),
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(text("""
|
|
||||||
update
|
|
||||||
letter_rates
|
|
||||||
set
|
|
||||||
end_date = :start
|
|
||||||
where
|
|
||||||
rate != 0.30
|
|
||||||
"""), start=START)
|
|
||||||
|
|
||||||
for id, start_date, sheet_count, rate, crown, post_class in NEW_RATES:
|
|
||||||
conn.execute(text("""
|
|
||||||
INSERT INTO letter_rates (id, start_date, sheet_count, rate, crown, post_class)
|
|
||||||
VALUES (:id, :start_date, :sheet_count, :rate, :crown, :post_class)
|
|
||||||
"""), id=id, start_date=start_date, sheet_count=sheet_count, rate=rate, crown=crown, post_class=post_class)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(text("""
|
|
||||||
delete from
|
|
||||||
letter_rates
|
|
||||||
where
|
|
||||||
start_date = :start
|
|
||||||
"""), start=START)
|
|
||||||
|
|
||||||
conn.execute(text("""
|
|
||||||
update
|
|
||||||
letter_rates
|
|
||||||
set
|
|
||||||
end_date = null
|
|
||||||
where
|
|
||||||
end_date = :start
|
|
||||||
"""), start=START)
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
Revision ID: 0230_noti_postage_constraint_1
|
Revision ID: 0230_noti_postage_constraint_1
|
||||||
Revises: 0229_new_letter_rates
|
Revises: 0228_notification_postage
|
||||||
Create Date: 2018-09-19 11:42:52.229430
|
Create Date: 2018-09-19 11:42:52.229430
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -9,7 +9,7 @@ from alembic import op
|
|||||||
|
|
||||||
|
|
||||||
revision = '0230_noti_postage_constraint_1'
|
revision = '0230_noti_postage_constraint_1'
|
||||||
down_revision = '0229_new_letter_rates'
|
down_revision = '0228_notification_postage'
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
def upgrade():
|
||||||
|
|||||||
@@ -1,42 +0,0 @@
|
|||||||
import os
|
|
||||||
|
|
||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0305_add_gp_org_type
|
|
||||||
Revises: 0304_remove_org_to_service
|
|
||||||
Create Date: 2019-07-24 16:18:27.467361
|
|
||||||
|
|
||||||
"""
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0305_add_gp_org_type'
|
|
||||||
down_revision = '0304_remove_org_to_service'
|
|
||||||
GP_ORG_TYPE_NAME = 'nhs_gp'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.execute("""
|
|
||||||
INSERT INTO
|
|
||||||
organisation_types
|
|
||||||
(name, is_crown, annual_free_sms_fragment_limit)
|
|
||||||
VALUES
|
|
||||||
('{}', false, 25000)
|
|
||||||
""".format(GP_ORG_TYPE_NAME))
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
op.execute("""
|
|
||||||
UPDATE
|
|
||||||
organisation
|
|
||||||
SET
|
|
||||||
organisation_type = 'nhs_local'
|
|
||||||
WHERE
|
|
||||||
organisation_type = '{}'
|
|
||||||
""".format(GP_ORG_TYPE_NAME))
|
|
||||||
op.execute("""
|
|
||||||
DELETE FROM
|
|
||||||
organisation_types
|
|
||||||
WHERE
|
|
||||||
name = '{}'
|
|
||||||
""".format(GP_ORG_TYPE_NAME))
|
|
||||||
@@ -1,68 +0,0 @@
|
|||||||
"""
|
|
||||||
All prices going up 5p
|
|
||||||
|
|
||||||
1 sheet (double-sided) increases from 30p to 35p (plus VAT)
|
|
||||||
2 sheets (double-sided) increases from 35p to 40p (plus VAT)
|
|
||||||
3 sheets (double-sided) increases from 40p to 45p (plus VAT)
|
|
||||||
4 sheets (double-sided) increases from 45p to 50p (plus VAT)
|
|
||||||
5 sheets (double-sided) increases from 50p to 55p (plus VAT)
|
|
||||||
First class letters:
|
|
||||||
|
|
||||||
1 sheet (double-sided) increases from 56p to 61p (plus VAT)
|
|
||||||
2 sheets (double-sided) increases from 61p to 66p (plus VAT)
|
|
||||||
3 sheets (double-sided) increases from 66p to 71p (plus VAT)
|
|
||||||
4 sheets (double-sided) increases from 71p to 76p (plus VAT)
|
|
||||||
5 sheets (double-sided) increases from 76p to 81p (plus VAT)
|
|
||||||
|
|
||||||
Revision ID: 0306_letter_rates_price_rise
|
|
||||||
Revises: 0305_add_gp_org_type
|
|
||||||
Create Date: 2019-09-25 15:43:09.388251
|
|
||||||
|
|
||||||
"""
|
|
||||||
import itertools
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
from sqlalchemy.sql import text
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0306_letter_rates_price_rise'
|
|
||||||
down_revision = '0305_add_gp_org_type'
|
|
||||||
|
|
||||||
|
|
||||||
CHANGEOVER_DATE = datetime(2019, 9, 30, 23, 0)
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
# all old rates are going in the bin
|
|
||||||
conn = op.get_bind()
|
|
||||||
# conn.execute(text("UPDATE letter_rates SET end_date = :start WHERE end_date IS NULL"), start=CHANGEOVER_DATE)
|
|
||||||
|
|
||||||
# base_prices = {
|
|
||||||
# 'second': 30,
|
|
||||||
# 'first': 56,
|
|
||||||
# }
|
|
||||||
# op.bulk_insert('letter_rates', [
|
|
||||||
# {
|
|
||||||
# 'id': uuid.uuid4(),
|
|
||||||
# 'start_date': CHANGEOVER_DATE,
|
|
||||||
# 'end_date': None,
|
|
||||||
# 'sheet_count': sheet_count,
|
|
||||||
# 'rate': (base_prices[post_class] + (5 * sheet_count)) / 100.0,
|
|
||||||
# 'crown': crown,
|
|
||||||
# 'post_class': post_class,
|
|
||||||
# }
|
|
||||||
# for sheet_count, crown, post_class in itertools.product(
|
|
||||||
# range(1, 6),
|
|
||||||
# [True, False],
|
|
||||||
# ['first', 'second']
|
|
||||||
# )
|
|
||||||
# ])
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
# Make sure you've thought about billing implications etc before downgrading!
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(text("DELETE FROM letter_rates WHERE start_date = :start"), start=CHANGEOVER_DATE)
|
|
||||||
conn.execute(text("UPDATE letter_rates SET end_date = NULL WHERE end_date = :start"), start=CHANGEOVER_DATE)
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
Revision ID: 0307_delete_dm_datetime
|
Revision ID: 0307_delete_dm_datetime
|
||||||
Revises: 0306_letter_rates_price_rise
|
Revises: 0304_remove_org_to_service
|
||||||
Create Date: 2019-10-08 10:57:54.824807
|
Create Date: 2019-10-08 10:57:54.824807
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -10,7 +10,7 @@ import sqlalchemy as sa
|
|||||||
from sqlalchemy.dialects import postgresql
|
from sqlalchemy.dialects import postgresql
|
||||||
|
|
||||||
revision = '0307_delete_dm_datetime'
|
revision = '0307_delete_dm_datetime'
|
||||||
down_revision = '0306_letter_rates_price_rise'
|
down_revision = '0304_remove_org_to_service'
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
def upgrade():
|
||||||
|
|||||||
@@ -1,53 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0324_int_letter_rates
|
|
||||||
Revises: 0323_broadcast_message
|
|
||||||
Create Date: 2020-07-08 12:20:20.700128
|
|
||||||
|
|
||||||
"""
|
|
||||||
import itertools
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
from sqlalchemy.sql import text
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0324_int_letter_rates'
|
|
||||||
down_revision = '0323_broadcast_message'
|
|
||||||
|
|
||||||
base_rate = 76
|
|
||||||
start_date = datetime(2020, 7, 1, 0, 0)
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
"""
|
|
||||||
Insert these letter rates for a post_class of both `europe` and `rest-of-world`:
|
|
||||||
1 sheet - £0.84
|
|
||||||
2 sheets - £0.92
|
|
||||||
3 sheets - £1.00
|
|
||||||
4 sheets - £1.08
|
|
||||||
5 sheets - £1.16
|
|
||||||
"""
|
|
||||||
# op.bulk_insert('letter_rates', [
|
|
||||||
# {
|
|
||||||
# 'id': uuid.uuid4(),
|
|
||||||
# 'start_date': start_date,
|
|
||||||
# 'end_date': None,
|
|
||||||
# 'sheet_count': sheet_count,
|
|
||||||
# 'rate': (base_rate + (8 * sheet_count)) / 100.0,
|
|
||||||
# 'crown': crown,
|
|
||||||
# 'post_class': post_class,
|
|
||||||
# }
|
|
||||||
# for sheet_count, crown, post_class in itertools.product(
|
|
||||||
# range(1, 6),
|
|
||||||
# [True, False],
|
|
||||||
# ['europe', 'rest-of-world']
|
|
||||||
# )
|
|
||||||
# ])
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(text("DELETE FROM letter_rates WHERE start_date = :start"), start=start_date)
|
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0325_int_letter_rates_fix
|
|
||||||
Revises: 0324_int_letter_rates
|
|
||||||
Create Date: 2020-07-15 10:09:17.218183
|
|
||||||
|
|
||||||
"""
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
from sqlalchemy.sql import text
|
|
||||||
|
|
||||||
revision = '0325_int_letter_rates_fix'
|
|
||||||
down_revision = '0324_int_letter_rates'
|
|
||||||
|
|
||||||
|
|
||||||
old_start_date = datetime(2020, 7, 1, 0, 0)
|
|
||||||
new_start_date = datetime(2020, 6, 30, 23, 0)
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(text(
|
|
||||||
"""UPDATE letter_rates SET start_date = :new_start_date WHERE start_date = :old_start_date"""
|
|
||||||
), new_start_date=new_start_date, old_start_date=old_start_date)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(text(
|
|
||||||
"""UPDATE letter_rates SET start_date = :old_start_date WHERE start_date = :new_start_date"""
|
|
||||||
), old_start_date=old_start_date, new_start_date=new_start_date)
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
Revision ID: 0326_broadcast_event
|
Revision ID: 0326_broadcast_event
|
||||||
Revises: 0325_int_letter_rates_fix
|
Revises: 0323_broadcast_message
|
||||||
Create Date: 2020-07-24 12:40:35.809523
|
Create Date: 2020-07-24 12:40:35.809523
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -10,7 +10,7 @@ import sqlalchemy as sa
|
|||||||
from sqlalchemy.dialects import postgresql
|
from sqlalchemy.dialects import postgresql
|
||||||
|
|
||||||
revision = '0326_broadcast_event'
|
revision = '0326_broadcast_event'
|
||||||
down_revision = '0325_int_letter_rates_fix'
|
down_revision = '0323_broadcast_message'
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
def upgrade():
|
||||||
|
|||||||
@@ -1,60 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0341_new_letter_rates
|
|
||||||
Revises: 0340_stub_training_broadcasts
|
|
||||||
Create Date: 2021-01-27 11:58:21.393227
|
|
||||||
|
|
||||||
"""
|
|
||||||
import itertools
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
from sqlalchemy.sql import text
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0341_new_letter_rates'
|
|
||||||
down_revision = '0340_stub_training_broadcasts'
|
|
||||||
|
|
||||||
|
|
||||||
CHANGEOVER_DATE = datetime(2021, 2, 1, 0, 0)
|
|
||||||
|
|
||||||
|
|
||||||
def get_new_rate(sheet_count, post_class):
|
|
||||||
base_prices = {
|
|
||||||
'second': 34,
|
|
||||||
'first': 64,
|
|
||||||
'europe': 81,
|
|
||||||
'rest-of-world': 81,
|
|
||||||
}
|
|
||||||
multiplier = 5 if post_class in ('first', 'second') else 8
|
|
||||||
|
|
||||||
return (base_prices[post_class] + (multiplier * sheet_count)) / 100.0
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
# conn.execute(text("UPDATE letter_rates SET end_date = :start WHERE end_date IS NULL"), start=CHANGEOVER_DATE)
|
|
||||||
|
|
||||||
# op.bulk_insert('letter_rates', [
|
|
||||||
# {
|
|
||||||
# 'id': uuid.uuid4(),
|
|
||||||
# 'start_date': CHANGEOVER_DATE,
|
|
||||||
# 'end_date': None,
|
|
||||||
# 'sheet_count': sheet_count,
|
|
||||||
# 'rate': get_new_rate(sheet_count, post_class),
|
|
||||||
# 'crown': crown,
|
|
||||||
# 'post_class': post_class,
|
|
||||||
# }
|
|
||||||
# for sheet_count, crown, post_class in itertools.product(
|
|
||||||
# range(1, 6),
|
|
||||||
# [True, False],
|
|
||||||
# ['first', 'second', 'europe', 'rest-of-world']
|
|
||||||
# )
|
|
||||||
# ])
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
# Make sure you've thought about billing implications etc before downgrading!
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(text("DELETE FROM letter_rates WHERE start_date = :start"), start=CHANGEOVER_DATE)
|
|
||||||
conn.execute(text("UPDATE letter_rates SET end_date = NULL WHERE end_date = :start"), start=CHANGEOVER_DATE)
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
Revision ID: 0342_service_broadcast_settings
|
Revision ID: 0342_service_broadcast_settings
|
||||||
Revises: 0341_new_letter_rates
|
Revises: 0340_stub_training_broadcasts
|
||||||
Create Date: 2021-01-28 21:30:23.102340
|
Create Date: 2021-01-28 21:30:23.102340
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -10,7 +10,7 @@ import sqlalchemy as sa
|
|||||||
from sqlalchemy.dialects import postgresql
|
from sqlalchemy.dialects import postgresql
|
||||||
|
|
||||||
revision = '0342_service_broadcast_settings'
|
revision = '0342_service_broadcast_settings'
|
||||||
down_revision = '0341_new_letter_rates'
|
down_revision = '0340_stub_training_broadcasts'
|
||||||
|
|
||||||
CHANNEL_TYPES = ["test", "severe"]
|
CHANNEL_TYPES = ["test", "severe"]
|
||||||
|
|
||||||
|
|||||||
@@ -1,23 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0350_update_rates
|
|
||||||
Revises: 0349_add_ft_processing_time
|
|
||||||
Create Date: 2021-04-01 08:00:24.775338
|
|
||||||
|
|
||||||
"""
|
|
||||||
import uuid
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
revision = '0350_update_rates'
|
|
||||||
down_revision = '0349_add_ft_processing_time'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.get_bind()
|
|
||||||
op.execute("INSERT INTO rates(id, valid_from, rate, notification_type) "
|
|
||||||
"VALUES('{}', '2021-03-31 23:00:00', 0.0160, 'sms')".format(uuid.uuid4()))
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
pass
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
Revision ID: 0351_unique_key_annual_billing
|
Revision ID: 0351_unique_key_annual_billing
|
||||||
Revises: 0350_update_rates
|
Revises: 0349_add_ft_processing_time
|
||||||
Create Date: 2021-04-12 09:02:45.098875
|
Create Date: 2021-04-12 09:02:45.098875
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -10,7 +10,7 @@ import os
|
|||||||
from alembic import op
|
from alembic import op
|
||||||
|
|
||||||
revision = '0351_unique_key_annual_billing'
|
revision = '0351_unique_key_annual_billing'
|
||||||
down_revision = '0350_update_rates'
|
down_revision = '0349_add_ft_processing_time'
|
||||||
|
|
||||||
environment = os.environ['NOTIFY_ENVIRONMENT']
|
environment = os.environ['NOTIFY_ENVIRONMENT']
|
||||||
|
|
||||||
|
|||||||
@@ -1,58 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0365_add_nhs_branding
|
|
||||||
Revises: 0364_drop_old_column
|
|
||||||
Create Date: 2022-02-17 16:31:21.415065
|
|
||||||
|
|
||||||
"""
|
|
||||||
import os
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
revision = '0365_add_nhs_branding'
|
|
||||||
down_revision = '0364_drop_old_column'
|
|
||||||
|
|
||||||
environment = os.environ['NOTIFY_ENVIRONMENT']
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
if environment not in ["live", "production"]:
|
|
||||||
op.execute("""
|
|
||||||
DELETE FROM service_email_branding
|
|
||||||
WHERE email_branding_id in (
|
|
||||||
SELECT id
|
|
||||||
FROM email_branding
|
|
||||||
WHERE name = 'NHS'
|
|
||||||
)
|
|
||||||
""")
|
|
||||||
|
|
||||||
op.execute("""
|
|
||||||
UPDATE organisation SET email_branding_id = null
|
|
||||||
WHERE email_branding_id in(
|
|
||||||
SELECT id
|
|
||||||
FROM email_branding
|
|
||||||
WHERE name = 'NHS'
|
|
||||||
)
|
|
||||||
""")
|
|
||||||
|
|
||||||
op.execute("""
|
|
||||||
DELETE FROM email_branding WHERE name = 'NHS'
|
|
||||||
""")
|
|
||||||
|
|
||||||
op.execute("""
|
|
||||||
INSERT INTO email_branding (
|
|
||||||
id, logo, name, brand_type
|
|
||||||
)
|
|
||||||
VALUES (
|
|
||||||
'a7dc4e56-660b-4db7-8cff-12c37b12b5ea',
|
|
||||||
'1ac6f483-3105-4c9e-9017-dd7fb2752c44-nhs-blue_x2.png',
|
|
||||||
'NHS',
|
|
||||||
'org'
|
|
||||||
)
|
|
||||||
""")
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
"""
|
|
||||||
No downgrade step since this is not fully reversible, but won't be run in production.
|
|
||||||
"""
|
|
||||||
@@ -1,61 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0366_letter_rates_2022
|
|
||||||
Revises: 0365_add_nhs_branding
|
|
||||||
Create Date: 2022-03-01 14:00:00
|
|
||||||
|
|
||||||
"""
|
|
||||||
import itertools
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
from sqlalchemy.sql import text
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0366_letter_rates_2022'
|
|
||||||
down_revision = '0365_add_nhs_branding'
|
|
||||||
|
|
||||||
|
|
||||||
CHANGEOVER_DATE = datetime(2022, 3, 1, 0, 0)
|
|
||||||
|
|
||||||
|
|
||||||
def get_new_rate(sheet_count, post_class):
|
|
||||||
base_prices = {
|
|
||||||
'second': 36,
|
|
||||||
'first': 58,
|
|
||||||
'europe': 88,
|
|
||||||
'rest-of-world': 88,
|
|
||||||
}
|
|
||||||
multiplier = 5 if post_class in ('first', 'second') else 8
|
|
||||||
|
|
||||||
return (base_prices[post_class] + (multiplier * sheet_count)) / 100.0
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
# conn.execute(text("UPDATE letter_rates SET end_date = :start WHERE end_date IS NULL"), start=CHANGEOVER_DATE)
|
|
||||||
|
|
||||||
# op.bulk_insert('letter_rates', [
|
|
||||||
# {
|
|
||||||
# 'id': uuid.uuid4(),
|
|
||||||
# 'start_date': CHANGEOVER_DATE,
|
|
||||||
# 'end_date': None,
|
|
||||||
# 'sheet_count': sheet_count,
|
|
||||||
# 'rate': get_new_rate(sheet_count, post_class),
|
|
||||||
# 'crown': crown,
|
|
||||||
# 'post_class': post_class,
|
|
||||||
# }
|
|
||||||
# for sheet_count, crown, post_class in itertools.product(
|
|
||||||
# range(1, 6),
|
|
||||||
# [True, False],
|
|
||||||
# ['first', 'second', 'europe', 'rest-of-world']
|
|
||||||
# )
|
|
||||||
# ])
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
# Make sure you've thought about billing implications etc before downgrading!
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(text("DELETE FROM letter_rates WHERE start_date = :start"), start=CHANGEOVER_DATE)
|
|
||||||
conn.execute(text("UPDATE letter_rates SET end_date = NULL WHERE end_date = :start"), start=CHANGEOVER_DATE)
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0367_add_reach
|
|
||||||
Revises: 0366_letter_rates_2022
|
|
||||||
Create Date: 2022-03-24 16:00:00
|
|
||||||
|
|
||||||
"""
|
|
||||||
import itertools
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
from sqlalchemy.sql import text
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0367_add_reach'
|
|
||||||
down_revision = '0366_letter_rates_2022'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(
|
|
||||||
"""
|
|
||||||
INSERT INTO provider_details (
|
|
||||||
id,
|
|
||||||
display_name,
|
|
||||||
identifier,
|
|
||||||
priority,
|
|
||||||
notification_type,
|
|
||||||
active,
|
|
||||||
version,
|
|
||||||
created_by_id
|
|
||||||
)
|
|
||||||
VALUES (
|
|
||||||
'{}',
|
|
||||||
'Reach',
|
|
||||||
'reach',
|
|
||||||
0,
|
|
||||||
'sms',
|
|
||||||
false,
|
|
||||||
1,
|
|
||||||
null
|
|
||||||
)
|
|
||||||
""".format(
|
|
||||||
str(uuid.uuid4()),
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute("DELETE FROM provider_details WHERE identifier = 'reach'")
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0368_move_orgs_to_nhs_branding
|
|
||||||
Revises: 0367_add_reach
|
|
||||||
Create Date: 2022-04-12 18:22:12.069016
|
|
||||||
|
|
||||||
"""
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
revision = '0368_move_orgs_to_nhs_branding'
|
|
||||||
down_revision = '0367_add_reach'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.execute("""
|
|
||||||
UPDATE
|
|
||||||
organisation
|
|
||||||
SET
|
|
||||||
email_branding_id = 'a7dc4e56-660b-4db7-8cff-12c37b12b5ea'
|
|
||||||
WHERE
|
|
||||||
organisation_type IN ('nhs_central', 'nhs_local', 'nhs_gp')
|
|
||||||
AND
|
|
||||||
email_branding_id IS NULL
|
|
||||||
""")
|
|
||||||
# ### end Alembic commands ###
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
# ### commands auto generated by Alembic - please adjust! ###
|
|
||||||
pass
|
|
||||||
# ### end Alembic commands ###
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0369_update_sms_rates
|
|
||||||
Revises: 0368_move_orgs_to_nhs_branding
|
|
||||||
Create Date: 2022-04-26 09:39:45.260951
|
|
||||||
|
|
||||||
"""
|
|
||||||
import uuid
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
revision = '0369_update_sms_rates'
|
|
||||||
down_revision = '0368_move_orgs_to_nhs_branding'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.execute(
|
|
||||||
"INSERT INTO rates(id, valid_from, rate, notification_type) "
|
|
||||||
f"VALUES('{uuid.uuid4()}', '2022-04-30 23:00:00', 0.0172, 'sms')"
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
pass
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0370_remove_reach
|
|
||||||
Revises: 0369_update_sms_rates
|
|
||||||
Create Date: 2022-04-27 16:00:00
|
|
||||||
|
|
||||||
"""
|
|
||||||
import itertools
|
|
||||||
import uuid
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
from sqlalchemy.sql import text
|
|
||||||
|
|
||||||
|
|
||||||
revision = '0370_remove_reach'
|
|
||||||
down_revision = '0369_update_sms_rates'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute("DELETE FROM provider_details WHERE identifier = 'reach'")
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
conn = op.get_bind()
|
|
||||||
conn.execute(
|
|
||||||
"""
|
|
||||||
INSERT INTO provider_details (
|
|
||||||
id,
|
|
||||||
display_name,
|
|
||||||
identifier,
|
|
||||||
priority,
|
|
||||||
notification_type,
|
|
||||||
active,
|
|
||||||
version,
|
|
||||||
created_by_id
|
|
||||||
)
|
|
||||||
VALUES (
|
|
||||||
'{}',
|
|
||||||
'Reach',
|
|
||||||
'reach',
|
|
||||||
0,
|
|
||||||
'sms',
|
|
||||||
false,
|
|
||||||
1,
|
|
||||||
null
|
|
||||||
)
|
|
||||||
""".format(
|
|
||||||
str(uuid.uuid4()),
|
|
||||||
)
|
|
||||||
)
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
"""
|
|
||||||
|
|
||||||
Revision ID: 0371_fix_apr_2022_sms_rate
|
|
||||||
Revises: 0370_remove_reach
|
|
||||||
Create Date: 2022-04-26 09:39:45.260951
|
|
||||||
|
|
||||||
"""
|
|
||||||
import uuid
|
|
||||||
|
|
||||||
from alembic import op
|
|
||||||
|
|
||||||
revision = '0371_fix_apr_2022_sms_rate'
|
|
||||||
down_revision = '0370_remove_reach'
|
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
|
||||||
op.execute(
|
|
||||||
"INSERT INTO rates(id, valid_from, rate, notification_type) "
|
|
||||||
f"VALUES('{uuid.uuid4()}', '2022-03-31 23:00:00', 0.0161, 'sms')"
|
|
||||||
)
|
|
||||||
op.execute(
|
|
||||||
"""
|
|
||||||
UPDATE ft_billing
|
|
||||||
SET rate = 0.0161
|
|
||||||
WHERE
|
|
||||||
notification_type = 'sms' AND
|
|
||||||
bst_date >= '2022-04-01' AND
|
|
||||||
bst_date < '2022-05-01'
|
|
||||||
"""
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def downgrade():
|
|
||||||
pass
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
Revision ID: 0372_remove_provider_rates
|
Revision ID: 0372_remove_provider_rates
|
||||||
Revises: 0371_fix_apr_2022_sms_rate
|
Revises: 0364_drop_old_column
|
||||||
Create Date: 2022-04-26 09:39:45.260951
|
Create Date: 2022-04-26 09:39:45.260951
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -11,7 +11,7 @@ import sqlalchemy as sa
|
|||||||
from sqlalchemy.dialects import postgresql
|
from sqlalchemy.dialects import postgresql
|
||||||
|
|
||||||
revision = '0372_remove_provider_rates'
|
revision = '0372_remove_provider_rates'
|
||||||
down_revision = '0371_fix_apr_2022_sms_rate'
|
down_revision = '0364_drop_old_column'
|
||||||
|
|
||||||
|
|
||||||
def upgrade():
|
def upgrade():
|
||||||
|
|||||||
Reference in New Issue
Block a user