• erio's avatar
    refactor(payment): code standards fixes and regression repairs · e3a000e0
    erio authored
    Backend:
    - Split payment_order.go (546→314 lines) into payment_order_lifecycle.go
    - Replace magic strings with constants in factory, easypay, webhook handler
    - Add rate limit/validity unit constants in payment_order_lifecycle, payment_service
    - Fix critical regression: add PaymentEnabled to GetPublicSettings response
    - Add missing migration 099_fix_migrated_purchase_menu_label_icon.sql
    
    Frontend:
    - Fix StripePopupView.vue: replace `as any` with typed interface, use extractApiErrorMessage
    - Fix AdminOrderTable.vue: replace hardcoded column labels with i18n t() calls
    - Fix SubscriptionsView.vue: replace hardcoded Today/Tomorrow with i18n
    - Extract duplicate statusBadgeClass/canRefund/formatOrderDateTime to orderUtils.ts
    - Add missing i18n keys: common.today, common.tomorrow, payment.orders.orderType/actions
    - Remove dead PurchaseSubscriptionView.vue (replaced by PaymentView)
    e3a000e0
StripePopupView.vue 5.93 KB