/* Options: Date: 2025-12-06 05:18:13 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ProductsRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; class Product implements IConvertible { int? ID; String? ProductName; int? ProductTypeID; double? UnitPrice; String? Description; String? ImageURL; String? ImageKey; String? SpecialSaleText; double? ShipPrice; double? SalePrice; String? UID; int? ProductCategory; int? ProductSubCategory; double? ProductWeight; double? FreightMarkupPercent; double? FreightMarkUpAmount; double? PointValue; bool? IsActive; String? StripeProductId; Product({this.ID,this.ProductName,this.ProductTypeID,this.UnitPrice,this.Description,this.ImageURL,this.ImageKey,this.SpecialSaleText,this.ShipPrice,this.SalePrice,this.UID,this.ProductCategory,this.ProductSubCategory,this.ProductWeight,this.FreightMarkupPercent,this.FreightMarkUpAmount,this.PointValue,this.IsActive,this.StripeProductId}); Product.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ID = json['ID']; ProductName = json['ProductName']; ProductTypeID = json['ProductTypeID']; UnitPrice = JsonConverters.toDouble(json['UnitPrice']); Description = json['Description']; ImageURL = json['ImageURL']; ImageKey = json['ImageKey']; SpecialSaleText = json['SpecialSaleText']; ShipPrice = JsonConverters.toDouble(json['ShipPrice']); SalePrice = JsonConverters.toDouble(json['SalePrice']); UID = json['UID']; ProductCategory = json['ProductCategory']; ProductSubCategory = json['ProductSubCategory']; ProductWeight = JsonConverters.toDouble(json['ProductWeight']); FreightMarkupPercent = JsonConverters.toDouble(json['FreightMarkupPercent']); FreightMarkUpAmount = JsonConverters.toDouble(json['FreightMarkUpAmount']); PointValue = JsonConverters.toDouble(json['PointValue']); IsActive = json['IsActive']; StripeProductId = json['StripeProductId']; return this; } Map toJson() => { 'ID': ID, 'ProductName': ProductName, 'ProductTypeID': ProductTypeID, 'UnitPrice': UnitPrice, 'Description': Description, 'ImageURL': ImageURL, 'ImageKey': ImageKey, 'SpecialSaleText': SpecialSaleText, 'ShipPrice': ShipPrice, 'SalePrice': SalePrice, 'UID': UID, 'ProductCategory': ProductCategory, 'ProductSubCategory': ProductSubCategory, 'ProductWeight': ProductWeight, 'FreightMarkupPercent': FreightMarkupPercent, 'FreightMarkUpAmount': FreightMarkUpAmount, 'PointValue': PointValue, 'IsActive': IsActive, 'StripeProductId': StripeProductId }; getTypeName() => "Product"; TypeContext? context = _ctx; } class ProductsResponse implements IConvertible { ResponseStatus? ResponseStatus; List? Products = []; ProductsResponse({this.ResponseStatus,this.Products}); ProductsResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Products = JsonConverters.fromJson(json['Products'],'List',context!); return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Products': JsonConverters.toJson(Products,'List',context!) }; getTypeName() => "ProductsResponse"; TypeContext? context = _ctx; } // @Route("/v1/Products/{UserID}", "GET") // @Route("/v1/Products/", "GET,POST,PUT,DELETE,OPTIONS") class ProductsRequest implements IReturn, IConvertible, IGet { String? UserID; List? Products = []; ProductsRequest({this.UserID,this.Products}); ProductsRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { UserID = json['UserID']; Products = JsonConverters.fromJson(json['Products'],'List',context!); return this; } Map toJson() => { 'UserID': UserID, 'Products': JsonConverters.toJson(Products,'List',context!) }; createResponse() => ProductsResponse(); getResponseTypeName() => "ProductsResponse"; getTypeName() => "ProductsRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'Product': TypeInfo(TypeOf.Class, create:() => Product()), 'ProductsResponse': TypeInfo(TypeOf.Class, create:() => ProductsResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ProductsRequest': TypeInfo(TypeOf.Class, create:() => ProductsRequest()), });