/* Options: Date: 2026-08-17 09:17:21 Version: 6.10 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stubbur-app.azurewebsites.net //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: PreviewDiscountRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class TicketDetails implements IConvertible { int? id; int? ticketId; int? eventSeriesTicketType; int? eventSeriesOwnerTicketType; double? ticketPrice; double? totalPrice; int? count; String? ticketColor; bool? showUsedTickets; String? ticketName; String? ticketDisplayString; int? ticketDetailsTransferredFrom; int? teamPassId; bool? isSpecialTicket; String? specialTicketId; bool? justChangedBySQL; DateTime? sqlJustChangedTimeStamp; String? currency; String? discountCode; double? totalDiscount; double? totalAmountBeforeDiscount; double? ticketPriceBeforeDiscount; TicketDetails({this.id,this.ticketId,this.eventSeriesTicketType,this.eventSeriesOwnerTicketType,this.ticketPrice,this.totalPrice,this.count,this.ticketColor,this.showUsedTickets,this.ticketName,this.ticketDisplayString,this.ticketDetailsTransferredFrom,this.teamPassId,this.isSpecialTicket,this.specialTicketId,this.justChangedBySQL,this.sqlJustChangedTimeStamp,this.currency,this.discountCode,this.totalDiscount,this.totalAmountBeforeDiscount,this.ticketPriceBeforeDiscount}); TicketDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; ticketId = json['ticketId']; eventSeriesTicketType = json['eventSeriesTicketType']; eventSeriesOwnerTicketType = json['eventSeriesOwnerTicketType']; ticketPrice = JsonConverters.toDouble(json['ticketPrice']); totalPrice = JsonConverters.toDouble(json['totalPrice']); count = json['count']; ticketColor = json['ticketColor']; showUsedTickets = json['showUsedTickets']; ticketName = json['ticketName']; ticketDisplayString = json['ticketDisplayString']; ticketDetailsTransferredFrom = json['ticketDetailsTransferredFrom']; teamPassId = json['teamPassId']; isSpecialTicket = json['isSpecialTicket']; specialTicketId = json['specialTicketId']; justChangedBySQL = json['justChangedBySQL']; sqlJustChangedTimeStamp = JsonConverters.fromJson(json['sqlJustChangedTimeStamp'],'DateTime',context!); currency = json['currency']; discountCode = json['discountCode']; totalDiscount = JsonConverters.toDouble(json['totalDiscount']); totalAmountBeforeDiscount = JsonConverters.toDouble(json['totalAmountBeforeDiscount']); ticketPriceBeforeDiscount = JsonConverters.toDouble(json['ticketPriceBeforeDiscount']); return this; } Map toJson() => { 'id': id, 'ticketId': ticketId, 'eventSeriesTicketType': eventSeriesTicketType, 'eventSeriesOwnerTicketType': eventSeriesOwnerTicketType, 'ticketPrice': ticketPrice, 'totalPrice': totalPrice, 'count': count, 'ticketColor': ticketColor, 'showUsedTickets': showUsedTickets, 'ticketName': ticketName, 'ticketDisplayString': ticketDisplayString, 'ticketDetailsTransferredFrom': ticketDetailsTransferredFrom, 'teamPassId': teamPassId, 'isSpecialTicket': isSpecialTicket, 'specialTicketId': specialTicketId, 'justChangedBySQL': justChangedBySQL, 'sqlJustChangedTimeStamp': JsonConverters.toJson(sqlJustChangedTimeStamp,'DateTime',context!), 'currency': currency, 'discountCode': discountCode, 'totalDiscount': totalDiscount, 'totalAmountBeforeDiscount': totalAmountBeforeDiscount, 'ticketPriceBeforeDiscount': ticketPriceBeforeDiscount }; getTypeName() => "TicketDetails"; TypeContext? context = _ctx; } class LocalizedMessage implements IConvertible { String? Is; String? en; LocalizedMessage({this.Is,this.en}); LocalizedMessage.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Is = json['is']; en = json['en']; return this; } Map toJson() => { 'is': Is, 'en': en }; getTypeName() => "LocalizedMessage"; TypeContext? context = _ctx; } class DiscountSummary implements IConvertible { String? type; double? value; DiscountSummary({this.type,this.value}); DiscountSummary.fromJson(Map json) { fromMap(json); } fromMap(Map json) { type = json['type']; value = JsonConverters.toDouble(json['value']); return this; } Map toJson() => { 'type': type, 'value': value }; getTypeName() => "DiscountSummary"; TypeContext? context = _ctx; } class DiscountLineResult implements IConvertible { int? ticketTypeId; int? count; bool? applied; double? unitBefore; double? unitAfter; double? lineBefore; double? lineAfter; DiscountLineResult({this.ticketTypeId,this.count,this.applied,this.unitBefore,this.unitAfter,this.lineBefore,this.lineAfter}); DiscountLineResult.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ticketTypeId = json['ticketTypeId']; count = json['count']; applied = json['applied']; unitBefore = JsonConverters.toDouble(json['unitBefore']); unitAfter = JsonConverters.toDouble(json['unitAfter']); lineBefore = JsonConverters.toDouble(json['lineBefore']); lineAfter = JsonConverters.toDouble(json['lineAfter']); return this; } Map toJson() => { 'ticketTypeId': ticketTypeId, 'count': count, 'applied': applied, 'unitBefore': unitBefore, 'unitAfter': unitAfter, 'lineBefore': lineBefore, 'lineAfter': lineAfter }; getTypeName() => "DiscountLineResult"; TypeContext? context = _ctx; } class PreviewDiscountResult implements IConvertible { String? status; String? reason; LocalizedMessage? message; int? discountCodeId; int? discountCodeTypeId; DiscountSummary? discount; List? lines; double? subtotalBefore; double? subtotalAfter; double? totalSavings; String? currency; int? statusCode; PreviewDiscountResult({this.status,this.reason,this.message,this.discountCodeId,this.discountCodeTypeId,this.discount,this.lines,this.subtotalBefore,this.subtotalAfter,this.totalSavings,this.currency,this.statusCode}); PreviewDiscountResult.fromJson(Map json) { fromMap(json); } fromMap(Map json) { status = json['status']; reason = json['reason']; message = JsonConverters.fromJson(json['message'],'LocalizedMessage',context!); discountCodeId = json['discountCodeId']; discountCodeTypeId = json['discountCodeTypeId']; discount = JsonConverters.fromJson(json['discount'],'DiscountSummary',context!); lines = JsonConverters.fromJson(json['lines'],'List',context!); subtotalBefore = JsonConverters.toDouble(json['subtotalBefore']); subtotalAfter = JsonConverters.toDouble(json['subtotalAfter']); totalSavings = JsonConverters.toDouble(json['totalSavings']); currency = json['currency']; statusCode = json['statusCode']; return this; } Map toJson() => { 'status': status, 'reason': reason, 'message': JsonConverters.toJson(message,'LocalizedMessage',context!), 'discountCodeId': discountCodeId, 'discountCodeTypeId': discountCodeTypeId, 'discount': JsonConverters.toJson(discount,'DiscountSummary',context!), 'lines': JsonConverters.toJson(lines,'List',context!), 'subtotalBefore': subtotalBefore, 'subtotalAfter': subtotalAfter, 'totalSavings': totalSavings, 'currency': currency, 'statusCode': statusCode }; getTypeName() => "PreviewDiscountResult"; TypeContext? context = _ctx; } // @Route("/ticketOrder/previewDiscount", "POST") class PreviewDiscountRequest implements IReturn, IConvertible { String? code; int? eventId; String? fullPhoneNumber; List? orderDetails; PreviewDiscountRequest({this.code,this.eventId,this.fullPhoneNumber,this.orderDetails}); PreviewDiscountRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { code = json['code']; eventId = json['eventId']; fullPhoneNumber = json['fullPhoneNumber']; orderDetails = JsonConverters.fromJson(json['orderDetails'],'List',context!); return this; } Map toJson() => { 'code': code, 'eventId': eventId, 'fullPhoneNumber': fullPhoneNumber, 'orderDetails': JsonConverters.toJson(orderDetails,'List',context!) }; createResponse() => PreviewDiscountResult(); getResponseTypeName() => "PreviewDiscountResult"; getTypeName() => "PreviewDiscountRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: { 'TicketDetails': TypeInfo(TypeOf.Class, create:() => TicketDetails()), 'LocalizedMessage': TypeInfo(TypeOf.Class, create:() => LocalizedMessage()), 'DiscountSummary': TypeInfo(TypeOf.Class, create:() => DiscountSummary()), 'DiscountLineResult': TypeInfo(TypeOf.Class, create:() => DiscountLineResult()), 'PreviewDiscountResult': TypeInfo(TypeOf.Class, create:() => PreviewDiscountResult()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'PreviewDiscountRequest': TypeInfo(TypeOf.Class, create:() => PreviewDiscountRequest()), 'List': TypeInfo(TypeOf.Class, create:() => []), });