feat(events): harden registration checkout lifecycle

This commit is contained in:
2026-10-01 12:26:49 +03:30
parent 1daa755543
commit 962238c32c
29 changed files with 3048 additions and 207 deletions

View File

@@ -52,18 +52,26 @@ class PaymentAdmin(BaseModelAdmin, ImportExportModelAdmin):
list_display = (
'id', 'user', 'event', 'base_amount', 'discount_code', 'discount_amount', 'amount',
'status', 'created_at', 'verified_at', 'is_deleted'
'status', 'refund_status', 'refund_attempts', 'verification_attempts',
'verification_manual_review_at',
'created_at', 'verified_at', 'is_deleted'
)
list_filter = (
'status', 'event',
'status', 'refund_status', 'event', 'verification_manual_review_at',
SoftDeleteListFilter,
)
search_fields = (
'user__email', 'authority', 'ref_id', 'discount_code__code'
)
readonly_fields = (
'user', 'event', 'base_amount', 'discount_code', 'discount_code', 'discount_amount', 'amount', 'authority',
'status', 'ref_id', 'card_pan', 'card_hash', 'created_at', 'updated_at', 'deleted_at'
'user', 'event', 'base_amount', 'discount_code', 'discount_amount', 'amount', 'authority',
'status', 'ref_id', 'card_pan', 'card_hash', 'verified_at', 'gateway_paid_at',
'verification_attempts',
'verification_last_attempt_at', 'verification_next_attempt_at', 'verification_lease_until',
'verification_dispatch_expires_at', 'verification_manual_review_at', 'idempotency_key',
'refund_status', 'refund_attempts', 'refund_last_attempt_at', 'refund_next_attempt_at',
'refund_reference', 'refund_last_error',
'created_at', 'updated_at', 'deleted_at'
)
fieldsets = (
@@ -74,7 +82,20 @@ class PaymentAdmin(BaseModelAdmin, ImportExportModelAdmin):
'fields': ('base_amount', 'discount_code', 'discount_amount', 'amount')
}),
('Others', {
'fields': ('authority', 'ref_id', 'card_pan', 'card_hash')
'fields': ('authority', 'ref_id', 'card_pan', 'card_hash', 'verified_at', 'gateway_paid_at', 'idempotency_key')
}),
('Verification and Support Review', {
'fields': (
'verification_attempts', 'verification_last_attempt_at',
'verification_next_attempt_at', 'verification_lease_until',
'verification_dispatch_expires_at', 'verification_manual_review_at',
)
}),
('Refund and Reversal Review', {
'fields': (
'refund_status', 'refund_attempts', 'refund_last_attempt_at',
'refund_next_attempt_at', 'refund_reference', 'refund_last_error',
)
}),
('Soft Delete', {
'fields': ('is_deleted', 'deleted_at'),