refactor(payment): code standards fixes and regression repairs
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)
This commit is contained in:
@@ -271,11 +271,17 @@ func psSliceContains(sl []string, s string) bool {
|
||||
return false
|
||||
}
|
||||
|
||||
// Subscription validity period unit constants.
|
||||
const (
|
||||
validityUnitWeek = "week"
|
||||
validityUnitMonth = "month"
|
||||
)
|
||||
|
||||
func psComputeValidityDays(days int, unit string) int {
|
||||
switch unit {
|
||||
case "week":
|
||||
case validityUnitWeek:
|
||||
return days * 7
|
||||
case "month":
|
||||
case validityUnitMonth:
|
||||
return days * 30
|
||||
default:
|
||||
return days
|
||||
|
||||
Reference in New Issue
Block a user