/* Options: Date: 2026-07-08 21:12:34 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: NcrCreateRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class Ncr implements IConvertible { int? NcrID; String? NcrUID; int? ProjectID; int? QcTestID; String? NcrNo; String? Title; String? Description; String? CostCode; String? Disposition; String? DispositionType; String? CorrectiveAction; String? DispositionedBy; DateTime? DispositionedAt; String? CreatedBy; DateTime? CreatedAt; DateTime? UpdatedAt; String? TestNo; Ncr({this.NcrID,this.NcrUID,this.ProjectID,this.QcTestID,this.NcrNo,this.Title,this.Description,this.CostCode,this.Disposition,this.DispositionType,this.CorrectiveAction,this.DispositionedBy,this.DispositionedAt,this.CreatedBy,this.CreatedAt,this.UpdatedAt,this.TestNo}); Ncr.fromJson(Map json) { fromMap(json); } fromMap(Map json) { NcrID = json['NcrID']; NcrUID = json['NcrUID']; ProjectID = json['ProjectID']; QcTestID = json['QcTestID']; NcrNo = json['NcrNo']; Title = json['Title']; Description = json['Description']; CostCode = json['CostCode']; Disposition = json['Disposition']; DispositionType = json['DispositionType']; CorrectiveAction = json['CorrectiveAction']; DispositionedBy = json['DispositionedBy']; DispositionedAt = JsonConverters.fromJson(json['DispositionedAt'],'DateTime',context!); CreatedBy = json['CreatedBy']; CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!); UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!); TestNo = json['TestNo']; return this; } Map toJson() => { 'NcrID': NcrID, 'NcrUID': NcrUID, 'ProjectID': ProjectID, 'QcTestID': QcTestID, 'NcrNo': NcrNo, 'Title': Title, 'Description': Description, 'CostCode': CostCode, 'Disposition': Disposition, 'DispositionType': DispositionType, 'CorrectiveAction': CorrectiveAction, 'DispositionedBy': DispositionedBy, 'DispositionedAt': JsonConverters.toJson(DispositionedAt,'DateTime',context!), 'CreatedBy': CreatedBy, 'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!), 'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!), 'TestNo': TestNo }; getTypeName() => "Ncr"; TypeContext? context = _ctx; } class NcrResponse implements IConvertible { ResponseStatus? ResponseStatus; Ncr? Ncr; NcrResponse({this.ResponseStatus,this.Ncr}); NcrResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Ncr = JsonConverters.fromJson(json['Ncr'],'Ncr',context!); return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Ncr': JsonConverters.toJson(Ncr,'Ncr',context!) }; getTypeName() => "NcrResponse"; TypeContext? context = _ctx; } // @Route("/v1/projects/{ProjectID}/ncrs", "POST,OPTIONS") class NcrCreateRequest implements IReturn, IConvertible, IPost { int? ProjectID; int? QcTestID; String? Title; String? Description; String? CostCode; NcrCreateRequest({this.ProjectID,this.QcTestID,this.Title,this.Description,this.CostCode}); NcrCreateRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ProjectID = json['ProjectID']; QcTestID = json['QcTestID']; Title = json['Title']; Description = json['Description']; CostCode = json['CostCode']; return this; } Map toJson() => { 'ProjectID': ProjectID, 'QcTestID': QcTestID, 'Title': Title, 'Description': Description, 'CostCode': CostCode }; createResponse() => NcrResponse(); getResponseTypeName() => "NcrResponse"; getTypeName() => "NcrCreateRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'Ncr': TypeInfo(TypeOf.Class, create:() => Ncr()), 'NcrResponse': TypeInfo(TypeOf.Class, create:() => NcrResponse()), 'NcrCreateRequest': TypeInfo(TypeOf.Class, create:() => NcrCreateRequest()), });