- ส่งแล้ว
- 23 เมษายน 2569 เวลา 20:22 UTC
- ผู้เขียน
- Kamo
- ตั้งค่า
- b95bafe
- EntitlementService computes per-member feature grants by unioning active BillingGroupLicense plan features + KamoCRM Free-tier baseline. Caches 15-minute projections in Redis keyed on memberId. - EntitlementInvalidationListener subscribes to the kamo.entitlements.invalidate Redis channel (MEMBER:/GROUP:/ORG: payloads) so BillingService mutations propagate immediately. - EntitlementController at /api/security/entitlements exposes /me, **************** and a cache-invalidation POST. - SecurityModelMarketController at **************** attaches/detaches CommerceMarkets to a ChildOrgSecurityModel and flips the Public / Member / Team-Member scope booleans.