Backend:
- Multi-branch shop management: SetDefaultShop, TransferShop commands, GetMerchantShops paginated query
- Shop aggregate: IsDefault field, SetAsDefault/ClearDefault/TransferOwnership behavior methods
- 2 new domain events: ShopSetAsDefaultDomainEvent, ShopTransferredDomainEvent
Frontend:
- Revenue Dashboard (MudChart line/donut/bar, 4 KPI cards, top products table)
- Staff Performance (sortable table, color-coded completion rates, CSV export)
- Customer QR Menu page (/menu/{ShopId}, mobile-first, Vietnamese labels)
- QR Code Generator admin page (batch generate, print-all, per-table QR)
- Responsive POS layout (collapsible sidebar, slide-out order drawer, touch-friendly CSS)
- ResponsiveOrderPanel component (desktop inline / tablet drawer / mobile overlay)
Infrastructure:
- Production K8s manifests: 8 services (3 replicas, 512Mi-1Gi, HPA min3/max10), Redis with persistence
- Production ingress: api.goodgo.vn, cert-manager TLS, rate-limit middleware
- Deploy script: pre-flight checks, dry-run, single-service deploy, rollback support
- CI/CD: deploy-production.yml with environment approval, commit SHA tags
- Prometheus full scrape config (11 targets), docker-compose observability stack
- Production deployment checklist (80+ items)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
59 lines
1.9 KiB
YAML
59 lines
1.9 KiB
YAML
# EN: Shared configuration for all GoodGo production services
|
|
# VI: Cau hinh chung cho tat ca cac service production cua GoodGo
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: goodgo-config
|
|
namespace: production
|
|
labels:
|
|
environment: production
|
|
platform: goodgo
|
|
data:
|
|
# EN: ASP.NET Core Configuration
|
|
# VI: Cau hinh ASP.NET Core
|
|
ASPNETCORE_ENVIRONMENT: "Production"
|
|
ASPNETCORE_URLS: "http://+:8080"
|
|
|
|
# EN: JWT Configuration (shared across all services)
|
|
# VI: Cau hinh JWT (dung chung cho tat ca services)
|
|
Jwt__Authority: "http://iam-service:8080"
|
|
Jwt__Audience: "goodgo-api"
|
|
Jwt__RequireHttpsMetadata: "true"
|
|
|
|
# EN: Service Discovery URLs (K8s DNS: {service-name}.production.svc.cluster.local)
|
|
# VI: URL tim kiem service (K8s DNS: {service-name}.production.svc.cluster.local)
|
|
IamService__BaseUrl: "http://iam-service:8080"
|
|
MerchantService__BaseUrl: "http://merchant-service:8080"
|
|
CatalogService__BaseUrl: "http://catalog-service:8080"
|
|
OrderService__BaseUrl: "http://order-service:8080"
|
|
InventoryService__BaseUrl: "http://inventory-service:8080"
|
|
WalletService__BaseUrl: "http://wallet-service:8080"
|
|
StorageService__BaseUrl: "http://storage-service:8080"
|
|
FnbEngine__BaseUrl: "http://fnb-engine:8080"
|
|
BookingService__BaseUrl: "http://booking-service:8080"
|
|
|
|
# EN: Redis Configuration
|
|
# VI: Cau hinh Redis
|
|
Redis__Host: "redis"
|
|
Redis__Port: "6379"
|
|
Redis__Database: "0"
|
|
|
|
# EN: CORS Configuration
|
|
# VI: Cau hinh CORS
|
|
Cors__AllowedOrigins: "https://pos.goodgo.vn,https://goodgo.vn,https://admin.goodgo.vn"
|
|
|
|
# EN: Logging (stricter for production)
|
|
# VI: Ghi log (nghiem ngat hon cho production)
|
|
Serilog__MinimumLevel__Default: "Warning"
|
|
Serilog__MinimumLevel__Override__Microsoft: "Error"
|
|
Serilog__MinimumLevel__Override__System: "Error"
|
|
|
|
# EN: Feature Flags
|
|
# VI: Tinh nang bat/tat
|
|
Features__SwaggerEnabled: "false"
|
|
Features__DetailedErrors: "false"
|
|
|
|
# EN: API Version
|
|
# VI: Phien ban API
|
|
API_VERSION: "v1"
|