Skip to content

Commit

Permalink
Merge pull request #2795 from bcgov/fix/hamed-correct-effective-date-…
Browse files Browse the repository at this point in the history
…of-transfer-2095-2768

Fix: Correct effective date of transfer 2095 - 2768
  • Loading branch information
AlexZorkin authored Jan 16, 2024
2 parents 40f5381 + 0708d03 commit e99930a
Showing 1 changed file with 39 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import logging
from django.db import migrations, transaction
from django.utils import timezone

def update_transfer_effective_date(apps, schema_editor):
"""
Update transfer ID #2095 to correct effective date from March 30, 2022 to March 30, 2023.
If any record is not updated, all changes are reverted.
"""
credit_trade_history = apps.get_model('api', 'CreditTradeHistory')
new_trade_effective_date = timezone.datetime.strptime('2023-03-30', "%Y-%m-%d").date()

# IDs of the CreditTradeHistory records to update
history_ids = [4666, 4709]

with transaction.atomic():
for history_id in history_ids:
try:
history = credit_trade_history.objects.get(id=history_id)
history.trade_effective_date = new_trade_effective_date
history.save()
except credit_trade_history.DoesNotExist:
logging.warning(
'Failed to update CreditTradeHistory: No entry found with id "%s"; '
'all changes within this transaction will be reverted.',
history_id
)

class Migration(migrations.Migration):
"""
Attaches the update function to the migration operations
"""
dependencies = [
('api', '0019_update_signing_authority_declaration_statement'),
]

operations = [
migrations.RunPython(update_transfer_effective_date, reverse_code=migrations.RunPython.noop),
]

0 comments on commit e99930a

Please sign in to comment.