feat(internal-admin): expired/cancelled kullanıcı için yeni abonelik başlatma ucu #266
Reference in New Issue
Block a user
Delete Branch "feat/admin-start-subscription"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ne
POST /internal/admin/users/:id/subscriptions— Süper Panel'deki yeni "Yeni abonelik başlat" butonu için (expired / cancelled / aboneliği olmayan kullanıcı).manuallyActivateexpired/cancelled aboneliği "yeni subscription başlatın" diyerek reddediyordu ama bunu yapan bir uç yoktu; manuel paket tanımları DB'den elle yapılıyordu (son örnek: 2026-09-18, 3 yıllık Full Paket).Davranış
activeveyatrialaboneliği varsa 409 (activate / plan değiştir / uzat kullanılmalı).brandCount=0) → tüm aktif markalaruser_brands'e yazılır; marka-limitli plan →brandIdstam sayıda + aktif marka doğrulaması.daysverilirse bitiş = şimdi + days (1..3650); verilmezsebillingPerioddefault'u (aylık +1 ay, yıllık +1 yıl).activeaçılır (startDate=now).subscription_activated/ Meta CAPI Purchase tetiklenmez), referral kredisi tüketilmez — para hareketi olmayan founder tanımı. Ödeme alınmış EFT senaryosu için mevcut checkout→activate akışı kullanılmalı.Body
Test
billing.service.spec.ts— 7 test (Full plan + days, period default, marka-limitli plan, hatalı marka, 409 canlı abonelik, 404/pasif plan, girdi doğrulama).vitest runyeşil.biome checkdeğişen dosyalarda temiz (controller'dakifounderId!uyarıları mevcut koddan).tsc --noEmitmain'de zatencorgi.service.ts:40hatası veriyor, bu PR'dan bağımsız.Panel tarafı (SDK + route + buton) ayrı commit'le sp repo'sunda.
🤖 Generated with Claude Code
https://claude.ai/code/session_01Ww3tfpuxBcettz81dDvyYt