/* Options: Date: 2025-09-10 19:43:46 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-optimization.power.dev //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: TODOptimizerRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class AnnualRateItem implements IConvertible { int? year; double? value; AnnualRateItem({this.year,this.value}); AnnualRateItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { year = json['year']; value = JsonConverters.toDouble(json['value']); return this; } Map toJson() => { 'year': year, 'value': value }; getTypeName() => "AnnualRateItem"; TypeContext? context = _ctx; } class YoyFactorOptimizarItem implements IConvertible { int? year; double? factor; YoyFactorOptimizarItem({this.year,this.factor}); YoyFactorOptimizarItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { year = json['year']; factor = JsonConverters.toDouble(json['factor']); return this; } Map toJson() => { 'year': year, 'factor': factor }; getTypeName() => "YoyFactorOptimizarItem"; TypeContext? context = _ctx; } class TodOptimizerRequestItem implements IConvertible { int? year; int? month; int? hour; int? weekDay; double? energyPrice; double? capacityPrice; TodOptimizerRequestItem({this.year,this.month,this.hour,this.weekDay,this.energyPrice,this.capacityPrice}); TodOptimizerRequestItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { year = json['year']; month = json['month']; hour = json['hour']; weekDay = json['weekDay']; energyPrice = JsonConverters.toDouble(json['energyPrice']); capacityPrice = JsonConverters.toDouble(json['capacityPrice']); return this; } Map toJson() => { 'year': year, 'month': month, 'hour': hour, 'weekDay': weekDay, 'energyPrice': energyPrice, 'capacityPrice': capacityPrice }; getTypeName() => "TodOptimizerRequestItem"; TypeContext? context = _ctx; } class TodOptimizerRequestBase implements IConvertible { String? projectId; double? chargeDischargeLimit; double? batteryCapacity; double? chargeEfficiency; double? dischargeEfficiency; double? paraciticLossesOperation; double? paraciticLossesResting; double? hvacLosses; double? acCablingLosses; double? transformatorLosses; double? thermalLosses; double? unavailabilityLoss; double? otherLosses; bool? enableCapacity; List? energySchedule; List? capacitySchedule; List? yoyFactors; List? data; String? apiActionId; TodOptimizerRequestBase({this.projectId,this.chargeDischargeLimit,this.batteryCapacity,this.chargeEfficiency,this.dischargeEfficiency,this.paraciticLossesOperation,this.paraciticLossesResting,this.hvacLosses,this.acCablingLosses,this.transformatorLosses,this.thermalLosses,this.unavailabilityLoss,this.otherLosses,this.enableCapacity,this.energySchedule,this.capacitySchedule,this.yoyFactors,this.data,this.apiActionId}); TodOptimizerRequestBase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { projectId = json['projectId']; chargeDischargeLimit = JsonConverters.toDouble(json['chargeDischargeLimit']); batteryCapacity = JsonConverters.toDouble(json['batteryCapacity']); chargeEfficiency = JsonConverters.toDouble(json['chargeEfficiency']); dischargeEfficiency = JsonConverters.toDouble(json['dischargeEfficiency']); paraciticLossesOperation = JsonConverters.toDouble(json['paraciticLossesOperation']); paraciticLossesResting = JsonConverters.toDouble(json['paraciticLossesResting']); hvacLosses = JsonConverters.toDouble(json['hvacLosses']); acCablingLosses = JsonConverters.toDouble(json['acCablingLosses']); transformatorLosses = JsonConverters.toDouble(json['transformatorLosses']); thermalLosses = JsonConverters.toDouble(json['thermalLosses']); unavailabilityLoss = JsonConverters.toDouble(json['unavailabilityLoss']); otherLosses = JsonConverters.toDouble(json['otherLosses']); enableCapacity = json['enableCapacity']; energySchedule = JsonConverters.fromJson(json['energySchedule'],'List',context!); capacitySchedule = JsonConverters.fromJson(json['capacitySchedule'],'List',context!); yoyFactors = JsonConverters.fromJson(json['yoyFactors'],'List',context!); data = JsonConverters.fromJson(json['data'],'List',context!); apiActionId = json['apiActionId']; return this; } Map toJson() => { 'projectId': projectId, 'chargeDischargeLimit': chargeDischargeLimit, 'batteryCapacity': batteryCapacity, 'chargeEfficiency': chargeEfficiency, 'dischargeEfficiency': dischargeEfficiency, 'paraciticLossesOperation': paraciticLossesOperation, 'paraciticLossesResting': paraciticLossesResting, 'hvacLosses': hvacLosses, 'acCablingLosses': acCablingLosses, 'transformatorLosses': transformatorLosses, 'thermalLosses': thermalLosses, 'unavailabilityLoss': unavailabilityLoss, 'otherLosses': otherLosses, 'enableCapacity': enableCapacity, 'energySchedule': JsonConverters.toJson(energySchedule,'List',context!), 'capacitySchedule': JsonConverters.toJson(capacitySchedule,'List',context!), 'yoyFactors': JsonConverters.toJson(yoyFactors,'List',context!), 'data': JsonConverters.toJson(data,'List',context!), 'apiActionId': apiActionId }; getTypeName() => "TodOptimizerRequestBase"; TypeContext? context = _ctx; } enum ApiResponseStatus { Undefined, Success, Pending, Failed, } class TodOptimizerResponseItem extends TodOptimizerRequestItem implements IConvertible { double? chargeState; double? charging; double? loss; double? chargeRate; TodOptimizerResponseItem({this.chargeState,this.charging,this.loss,this.chargeRate}); TodOptimizerResponseItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); chargeState = JsonConverters.toDouble(json['chargeState']); charging = JsonConverters.toDouble(json['charging']); loss = JsonConverters.toDouble(json['loss']); chargeRate = JsonConverters.toDouble(json['chargeRate']); return this; } Map toJson() => super.toJson()..addAll({ 'chargeState': chargeState, 'charging': charging, 'loss': loss, 'chargeRate': chargeRate }); getTypeName() => "TodOptimizerResponseItem"; TypeContext? context = _ctx; } class TodOptimizerResponse implements IConvertible { ApiResponseStatus? status; String? message; String? apiActionId; List? testItems; TodOptimizerResponse({this.status,this.message,this.apiActionId,this.testItems}); TodOptimizerResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { status = JsonConverters.fromJson(json['status'],'ApiResponseStatus',context!); message = json['message']; apiActionId = json['apiActionId']; testItems = JsonConverters.fromJson(json['testItems'],'List',context!); return this; } Map toJson() => { 'status': JsonConverters.toJson(status,'ApiResponseStatus',context!), 'message': message, 'apiActionId': apiActionId, 'testItems': JsonConverters.toJson(testItems,'List',context!) }; getTypeName() => "TodOptimizerResponse"; TypeContext? context = _ctx; } // @Route("/optimizer/tod", "POST") class TODOptimizerRequest extends TodOptimizerRequestBase implements IReturn, IConvertible, IPost { TODOptimizerRequest(); TODOptimizerRequest.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); createResponse() => TodOptimizerResponse(); getResponseTypeName() => "TodOptimizerResponse"; getTypeName() => "TODOptimizerRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'dev_optimization.power.dev', types: { 'AnnualRateItem': TypeInfo(TypeOf.Class, create:() => AnnualRateItem()), 'YoyFactorOptimizarItem': TypeInfo(TypeOf.Class, create:() => YoyFactorOptimizarItem()), 'TodOptimizerRequestItem': TypeInfo(TypeOf.Class, create:() => TodOptimizerRequestItem()), 'TodOptimizerRequestBase': TypeInfo(TypeOf.Class, create:() => TodOptimizerRequestBase()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ApiResponseStatus': TypeInfo(TypeOf.Enum, enumValues:ApiResponseStatus.values), 'TodOptimizerResponseItem': TypeInfo(TypeOf.Class, create:() => TodOptimizerResponseItem()), 'TodOptimizerResponse': TypeInfo(TypeOf.Class, create:() => TodOptimizerResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'TODOptimizerRequest': TypeInfo(TypeOf.Class, create:() => TODOptimizerRequest()), });