/* Options: Date: 2025-12-06 08:59:09 Version: 8.0 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://cochraneplus-api-dev.happen.zone //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateDebrief.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class ApiServiceRequest implements IServiceRequest, IHasApiKey, IHasDeviceInfo, IConvertible { /** * The API Key required for authentication */ // @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true) String? apiKey; /** * Latitude of the user making this request */ // @ApiMember(DataType="double", Description="Latitude of the user making this request") double? latitude; /** * Longitude of the user making this request */ // @ApiMember(DataType="double", Description="Longitude of the user making this request") double? longitude; ApiServiceRequest({this.apiKey,this.latitude,this.longitude}); ApiServiceRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { apiKey = json['apiKey']; latitude = JsonConverters.toDouble(json['latitude']); longitude = JsonConverters.toDouble(json['longitude']); return this; } Map toJson() => { 'apiKey': apiKey, 'latitude': latitude, 'longitude': longitude }; getTypeName() => "ApiServiceRequest"; TypeContext? context = _ctx; } abstract class IServiceRequest { } abstract class IHasApiKey { String? apiKey; } abstract class IHasDeviceInfo { } class NewContactData implements IConvertible { String? name; String? jobTitle; String? companyName; String? emailAddress; String? contactNumber; NewContactData({this.name,this.jobTitle,this.companyName,this.emailAddress,this.contactNumber}); NewContactData.fromJson(Map json) { fromMap(json); } fromMap(Map json) { name = json['name']; jobTitle = json['jobTitle']; companyName = json['companyName']; emailAddress = json['emailAddress']; contactNumber = json['contactNumber']; return this; } Map toJson() => { 'name': name, 'jobTitle': jobTitle, 'companyName': companyName, 'emailAddress': emailAddress, 'contactNumber': contactNumber }; getTypeName() => "NewContactData"; TypeContext? context = _ctx; } class MeetingData implements IConvertible { int? meetingId; String? startTime; String? arrivalTime; String? leftTime; String? duration; bool? showTimeFields; String? arrivalStatus; String? email; bool? hasEmail; String? contactName; double? latitude; double? longitude; String? location; String? address; String? subject; String? description; String? endTime; String? company; String? contactNumber; bool? hasContactNumber; bool? hasLocation; String? setBy; String? virtualOrInPerson; MeetingData({this.meetingId,this.startTime,this.arrivalTime,this.leftTime,this.duration,this.showTimeFields,this.arrivalStatus,this.email,this.hasEmail,this.contactName,this.latitude,this.longitude,this.location,this.address,this.subject,this.description,this.endTime,this.company,this.contactNumber,this.hasContactNumber,this.hasLocation,this.setBy,this.virtualOrInPerson}); MeetingData.fromJson(Map json) { fromMap(json); } fromMap(Map json) { meetingId = json['meetingId']; startTime = json['startTime']; arrivalTime = json['arrivalTime']; leftTime = json['leftTime']; duration = json['duration']; showTimeFields = json['showTimeFields']; arrivalStatus = json['arrivalStatus']; email = json['email']; hasEmail = json['hasEmail']; contactName = json['contactName']; latitude = JsonConverters.toDouble(json['latitude']); longitude = JsonConverters.toDouble(json['longitude']); location = json['location']; address = json['address']; subject = json['subject']; description = json['description']; endTime = json['endTime']; company = json['company']; contactNumber = json['contactNumber']; hasContactNumber = json['hasContactNumber']; hasLocation = json['hasLocation']; setBy = json['setBy']; virtualOrInPerson = json['virtualOrInPerson']; return this; } Map toJson() => { 'meetingId': meetingId, 'startTime': startTime, 'arrivalTime': arrivalTime, 'leftTime': leftTime, 'duration': duration, 'showTimeFields': showTimeFields, 'arrivalStatus': arrivalStatus, 'email': email, 'hasEmail': hasEmail, 'contactName': contactName, 'latitude': latitude, 'longitude': longitude, 'location': location, 'address': address, 'subject': subject, 'description': description, 'endTime': endTime, 'company': company, 'contactNumber': contactNumber, 'hasContactNumber': hasContactNumber, 'hasLocation': hasLocation, 'setBy': setBy, 'virtualOrInPerson': virtualOrInPerson }; getTypeName() => "MeetingData"; TypeContext? context = _ctx; } class DebriefRatingCommentDetail implements IConvertible { int? managerId; String? name; String? title; String? reviewedDate; int? rating; String? comments; DebriefRatingCommentDetail({this.managerId,this.name,this.title,this.reviewedDate,this.rating,this.comments}); DebriefRatingCommentDetail.fromJson(Map json) { fromMap(json); } fromMap(Map json) { managerId = json['managerId']; name = json['name']; title = json['title']; reviewedDate = json['reviewedDate']; rating = json['rating']; comments = json['comments']; return this; } Map toJson() => { 'managerId': managerId, 'name': name, 'title': title, 'reviewedDate': reviewedDate, 'rating': rating, 'comments': comments }; getTypeName() => "DebriefRatingCommentDetail"; TypeContext? context = _ctx; } class DebriefData implements IConvertible { bool? hasAiPermissions; int? id; MeetingData? meeting; String? dateCreated; String? lastUpdated; bool? completed; bool? hasAudio; String? companyName; String? meetingTime; String? address; String? feedback; String? research; String? nextSteps; String? opportunities; String? personnel; String? group; String? industry; List? newContacts; List? ratingCommentDetails; bool? hasComments; DebriefData({this.hasAiPermissions,this.id,this.meeting,this.dateCreated,this.lastUpdated,this.completed,this.hasAudio,this.companyName,this.meetingTime,this.address,this.feedback,this.research,this.nextSteps,this.opportunities,this.personnel,this.group,this.industry,this.newContacts,this.ratingCommentDetails,this.hasComments}); DebriefData.fromJson(Map json) { fromMap(json); } fromMap(Map json) { hasAiPermissions = json['hasAiPermissions']; id = json['id']; meeting = JsonConverters.fromJson(json['meeting'],'MeetingData',context!); dateCreated = json['dateCreated']; lastUpdated = json['lastUpdated']; completed = json['completed']; hasAudio = json['hasAudio']; companyName = json['companyName']; meetingTime = json['meetingTime']; address = json['address']; feedback = json['feedback']; research = json['research']; nextSteps = json['nextSteps']; opportunities = json['opportunities']; personnel = json['personnel']; group = json['group']; industry = json['industry']; newContacts = JsonConverters.fromJson(json['newContacts'],'List',context!); ratingCommentDetails = JsonConverters.fromJson(json['ratingCommentDetails'],'List',context!); hasComments = json['hasComments']; return this; } Map toJson() => { 'hasAiPermissions': hasAiPermissions, 'id': id, 'meeting': JsonConverters.toJson(meeting,'MeetingData',context!), 'dateCreated': dateCreated, 'lastUpdated': lastUpdated, 'completed': completed, 'hasAudio': hasAudio, 'companyName': companyName, 'meetingTime': meetingTime, 'address': address, 'feedback': feedback, 'research': research, 'nextSteps': nextSteps, 'opportunities': opportunities, 'personnel': personnel, 'group': group, 'industry': industry, 'newContacts': JsonConverters.toJson(newContacts,'List',context!), 'ratingCommentDetails': JsonConverters.toJson(ratingCommentDetails,'List',context!), 'hasComments': hasComments }; getTypeName() => "DebriefData"; TypeContext? context = _ctx; } class ApiServiceResponse implements IServiceResponse, IConvertible { String? description; String? heading; bool? wasSuccessful; dynamic? modelState; ApiServiceResponse({this.description,this.heading,this.wasSuccessful,this.modelState}); ApiServiceResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { description = json['description']; heading = json['heading']; wasSuccessful = json['wasSuccessful']; modelState = JsonConverters.fromJson(json['modelState'],'dynamic',context!); return this; } Map toJson() => { 'description': description, 'heading': heading, 'wasSuccessful': wasSuccessful, 'modelState': JsonConverters.toJson(modelState,'dynamic',context!) }; getTypeName() => "ApiServiceResponse"; TypeContext? context = _ctx; } class CreateDebriefResponse extends ApiServiceResponse implements IConvertible { DebriefData? debrief; CreateDebriefResponse({this.debrief}); CreateDebriefResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); debrief = JsonConverters.fromJson(json['debrief'],'DebriefData',context!); return this; } Map toJson() => super.toJson()..addAll({ 'debrief': JsonConverters.toJson(debrief,'DebriefData',context!) }); getTypeName() => "CreateDebriefResponse"; TypeContext? context = _ctx; } // @Route("/debrief/create", "POST") class CreateDebrief extends ApiServiceRequest implements IReturn, IConvertible, IPost { int? meetingId; CreateDebrief({this.meetingId}); CreateDebrief.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); meetingId = json['meetingId']; return this; } Map toJson() => super.toJson()..addAll({ 'meetingId': meetingId }); createResponse() => CreateDebriefResponse(); getResponseTypeName() => "CreateDebriefResponse"; getTypeName() => "CreateDebrief"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'cochraneplus_api_dev.happen.zone', types: { 'ApiServiceRequest': TypeInfo(TypeOf.Class, create:() => ApiServiceRequest()), 'IServiceRequest': TypeInfo(TypeOf.Interface), 'IHasApiKey': TypeInfo(TypeOf.Interface), 'IHasDeviceInfo': TypeInfo(TypeOf.Interface), 'NewContactData': TypeInfo(TypeOf.Class, create:() => NewContactData()), 'MeetingData': TypeInfo(TypeOf.Class, create:() => MeetingData()), 'DebriefRatingCommentDetail': TypeInfo(TypeOf.Class, create:() => DebriefRatingCommentDetail()), 'DebriefData': TypeInfo(TypeOf.Class, create:() => DebriefData()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ApiServiceResponse': TypeInfo(TypeOf.Class, create:() => ApiServiceResponse()), 'CreateDebriefResponse': TypeInfo(TypeOf.Class, create:() => CreateDebriefResponse()), 'CreateDebrief': TypeInfo(TypeOf.Class, create:() => CreateDebrief()), });