/* Options: Date: 2026-09-02 00:46:58 Version: 10.12 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://blazor-vue.web-templates.io //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: QueryCoupons.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; /** * Discount Coupons */ class Coupon implements IConvertible { String id = ""; String description = ""; int discount = 0; DateTime? expiryDate; Coupon({this.id="",this.description="",this.discount=0,this.expiryDate}); Coupon.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id'] ?? ""; description = json['description'] ?? ""; discount = json['discount'] ?? 0; expiryDate = JsonConverters.fromJson(json['expiryDate'],'DateTime',context!) ?? DateTime(0); return this; } Map toJson() => { 'id': id, 'description': description, 'discount': discount, 'expiryDate': JsonConverters.toJson(expiryDate,'DateTime',context!) }; getTypeName() => "Coupon"; TypeContext? context = _ctx; } /** * Find Coupons */ // @Route("/coupons", "GET") class QueryCoupons extends QueryDb implements IReturn>, IConvertible, IGet { String id = ""; QueryCoupons({this.id=""}); QueryCoupons.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); id = json['id'] ?? ""; return this; } Map toJson() => super.toJson()..addAll({ 'id': id }); createResponse() => QueryResponse(); getResponseTypeName() => "QueryResponse"; getTypeName() => "QueryCoupons"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'blazor_vue.web_templates.io', types: { 'Coupon': TypeInfo(TypeOf.Class, create:() => Coupon()), 'QueryResponse': TypeInfo(TypeOf.Class, create:() => QueryResponse()), 'QueryCoupons': TypeInfo(TypeOf.Class, create:() => QueryCoupons()), 'List': TypeInfo(TypeOf.Class, create:() => []), });