Added value for created_at

This commit is contained in:
Ken Tsang
2017-05-26 17:45:33 +01:00
parent 4228e67486
commit d2ce7518b4

View File

@@ -12,26 +12,29 @@ down_revision = '0087_scheduled_notifications'
from alembic import op from alembic import op
import sqlalchemy as sa import sqlalchemy as sa
import time
migration_date = time.strftime('2017-05-26 17:30:00.000000')
def upgrade(): def upgrade():
def get_values(permission): def get_values(permission):
return "SELECT id, '{0}' FROM services WHERE "\ return "SELECT id, '{0}', '{1}' FROM services WHERE "\
"id NOT IN (SELECT service_id FROM service_permissions "\ "id NOT IN (SELECT service_id FROM service_permissions "\
"WHERE service_id=id AND permission='{0}')".format(permission) "WHERE service_id=id AND permission='{0}')".format(permission, migration_date)
def get_values_if_flag(permission, flag): def get_values_if_flag(permission, flag):
return "SELECT id, '{0}' FROM services WHERE "\ return "SELECT id, '{0}', '{1}' FROM services WHERE "\
"{1} AND id NOT IN (SELECT service_id FROM service_permissions "\ "{2} AND id NOT IN (SELECT service_id FROM service_permissions "\
"WHERE service_id=id AND permission='{0}')".format(permission, flag) "WHERE service_id=id AND permission='{0}')".format(permission, migration_date, flag)
op.execute("INSERT INTO service_permissions (service_id, permission) {}".format(get_values('sms'))) op.execute("INSERT INTO service_permissions (service_id, permission, created_at) {}".format(get_values('sms')))
op.execute("INSERT INTO service_permissions (service_id, permission) {}".format(get_values('email'))) op.execute("INSERT INTO service_permissions (service_id, permission, created_at) {}".format(get_values('email')))
op.execute("INSERT INTO service_permissions (service_id, permission) {}".format( op.execute("INSERT INTO service_permissions (service_id, permission, created_at) {}".format(
get_values_if_flag('letter', 'can_send_letters'))) get_values_if_flag('letter', 'can_send_letters')))
op.execute("INSERT INTO service_permissions (service_id, permission) {}".format( op.execute("INSERT INTO service_permissions (service_id, permission, created_at) {}".format(
get_values_if_flag('international_sms', 'can_send_international_sms'))) get_values_if_flag('international_sms', 'can_send_international_sms')))
def downgrade(): def downgrade():
op.execute("DELETE FROM service_permissions WHERE created_at IS NULL") op.execute("DELETE FROM service_permissions WHERE created_at = '{}'::timestamp".format(migration_date))