feat(api): .NET 10 multi-tenant REST API

Full backend implementation:
- Multi-tenant cafe/restaurant management (menus, orders, tables, staff)
- POS order flow with ZarinPal and Snappfood payment integration
- OTP authentication via Kavenegar SMS
- QR digital menu with public discover/finder endpoints
- Customer loyalty, coupons, CRM
- PostgreSQL via EF Core, Redis for caching/sessions
- Background jobs, webhook handlers
- Full migration history

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
soroush.asadi
2026-05-27 21:33:48 +03:30
parent 03376b3ea1
commit ef15fd6247
472 changed files with 120358 additions and 0 deletions
@@ -0,0 +1,27 @@
using Meezi.Core.Enums;
namespace Meezi.API.Models.Billing;
public record SubscribeRequest(PlanTier PlanTier, int Months, string? PaymentMethod = null);
public record PaymentMethodDto(string Id, string DisplayNameFa, bool IsDefault);
public record SubscribeResponse(string PaymentId, string PaymentUrl);
public record BillingStatusDto(
PlanTier PlanTier,
DateTime? PlanExpiresAt,
int OrdersToday,
int? OrdersDailyLimit,
int CustomersCount,
int? CustomersLimit,
int SmsUsedThisMonth,
int SmsMonthlyLimit,
bool Menu3dEnabled,
bool MenuAi3dEnabled,
int MenuAi3dUsedThisMonth,
int MenuAi3dMonthlyLimit,
bool DiscoverProfileEnabled,
bool IsPlanExpired);
public record BillingVerifyResult(bool Success, string RedirectUrl);