BACK-W-02: Replace string-interpolated SET LOCAL SQL with parameterized set_config() calls in TenantMiddleware across 5 services (order, wallet, inventory, catalog, fnb-engine). Eliminates SQL injection pattern; set_config(key, $1, true) is local-to-transaction, same semantics as SET LOCAL. BACK-C-01: Remove AllowAnyOrigin() from all 26 services. Switch to WithOrigins() reading AllowedOrigins config array, with dev-only fallback to localhost. In production, set AllowedOrigins=["https://goodgo.vn", "https://admin.goodgo.vn"] via environment config. BACK-C-03: Standardize OrdersController GET /orders/{id} 404 response from {Message:...} to {success:false, error:{code,message}} per API contract. BACK-C-04: Add complete ProblemDetails exception mappings to _template_dot_net: ValidationException -> 400, DomainException -> 422, with TODO comments for service-specific types (EntityNotFoundException -> 404, etc.). BACK-C-02: wallet-service and booking-service already have full IRequestManager idempotency implementation — no changes needed. Co-Authored-By: Paperclip <noreply@paperclip.ing>
Mission Service
Quick Links
| EN | VI |
|---|---|
| 📖 Architecture Documentation | 📖 Tài liệu Kiến trúc |
| 🚀 Quick Start | 🚀 Bắt đầu nhanh |
| 🔧 Configuration | 🔧 Cấu hình |
Overview
Mission & Task gamification service for GoodGo Platform. Manages missions, daily check-ins, and rewards.
Tech Stack
- .NET 10
- PostgreSQL + EF Core 10
- Redis + HybridCache
- RabbitMQ (MassTransit)
- MediatR (CQRS)
Development
cd src/MissionService.API
dotnet build
dotnet run
API Docs
Access Swagger UI at: http://localhost:5000/swagger