Required role: | REGISUserRole |
POST | /Course/{id}/Requirements |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class CourseRequirementResponse implements IConvertible
{
int? course_id;
int? required_course_id;
int? requirement_group;
bool? is_prerequisite;
bool? is_corequisite;
DateTime? timestamp;
CourseRequirementResponse({this.course_id,this.required_course_id,this.requirement_group,this.is_prerequisite,this.is_corequisite,this.timestamp});
CourseRequirementResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
course_id = json['course_id'];
required_course_id = json['required_course_id'];
requirement_group = json['requirement_group'];
is_prerequisite = json['is_prerequisite'];
is_corequisite = json['is_corequisite'];
timestamp = JsonConverters.fromJson(json['timestamp'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'course_id': course_id,
'required_course_id': required_course_id,
'requirement_group': requirement_group,
'is_prerequisite': is_prerequisite,
'is_corequisite': is_corequisite,
'timestamp': JsonConverters.toJson(timestamp,'DateTime',context!)
};
getTypeName() => "CourseRequirementResponse";
TypeContext? context = _ctx;
}
class CourseResponse implements IConvertible
{
int? id;
String? course_name;
String? title;
String? pretty_title;
String? course_description;
bool? is_active;
DateTime? added_date;
String? added_by;
DateTime? changed_date;
String? changed_by;
DateTime? timestamp;
CourseResponse({this.id,this.course_name,this.title,this.pretty_title,this.course_description,this.is_active,this.added_date,this.added_by,this.changed_date,this.changed_by,this.timestamp});
CourseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
course_name = json['course_name'];
title = json['title'];
pretty_title = json['pretty_title'];
course_description = json['course_description'];
is_active = json['is_active'];
added_date = JsonConverters.fromJson(json['added_date'],'DateTime',context!);
added_by = json['added_by'];
changed_date = JsonConverters.fromJson(json['changed_date'],'DateTime',context!);
changed_by = json['changed_by'];
timestamp = JsonConverters.fromJson(json['timestamp'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'course_name': course_name,
'title': title,
'pretty_title': pretty_title,
'course_description': course_description,
'is_active': is_active,
'added_date': JsonConverters.toJson(added_date,'DateTime',context!),
'added_by': added_by,
'changed_date': JsonConverters.toJson(changed_date,'DateTime',context!),
'changed_by': changed_by,
'timestamp': JsonConverters.toJson(timestamp,'DateTime',context!)
};
getTypeName() => "CourseResponse";
TypeContext? context = _ctx;
}
class CourseRequirementsResponse implements IConvertible
{
ResponseStatus? responseStatus;
int? course_id;
List<CourseRequirementResponse>? requirements;
List<CourseResponse>? courses;
CourseRequirementsResponse({this.responseStatus,this.course_id,this.requirements,this.courses});
CourseRequirementsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
course_id = json['course_id'];
requirements = JsonConverters.fromJson(json['requirements'],'List<CourseRequirementResponse>',context!);
courses = JsonConverters.fromJson(json['courses'],'List<CourseResponse>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
'course_id': course_id,
'requirements': JsonConverters.toJson(requirements,'List<CourseRequirementResponse>',context!),
'courses': JsonConverters.toJson(courses,'List<CourseResponse>',context!)
};
getTypeName() => "CourseRequirementsResponse";
TypeContext? context = _ctx;
}
class CourseRequirementsRequest implements IConvertible
{
int? id;
CourseRequirementsRequest({this.id});
CourseRequirementsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id
};
getTypeName() => "CourseRequirementsRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'data.regent_college.edu', types: <String, TypeInfo> {
'CourseRequirementResponse': TypeInfo(TypeOf.Class, create:() => CourseRequirementResponse()),
'CourseResponse': TypeInfo(TypeOf.Class, create:() => CourseResponse()),
'CourseRequirementsResponse': TypeInfo(TypeOf.Class, create:() => CourseRequirementsResponse()),
'List<CourseRequirementResponse>': TypeInfo(TypeOf.Class, create:() => <CourseRequirementResponse>[]),
'List<CourseResponse>': TypeInfo(TypeOf.Class, create:() => <CourseResponse>[]),
'CourseRequirementsRequest': TypeInfo(TypeOf.Class, create:() => CourseRequirementsRequest()),
});
Dart CourseRequirementsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Course/{id}/Requirements HTTP/1.1
Host: data.regent-college.edu
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"id":0}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}},"course_id":0,"requirements":[{"course_id":0,"required_course_id":0,"requirement_group":0,"is_prerequisite":false,"is_corequisite":false,"timestamp":"0001-01-01T00:00:00.0000000"}],"courses":[{"id":0,"course_name":"String","title":"String","pretty_title":"String","course_description":"String","is_active":false,"added_date":"0001-01-01T00:00:00.0000000","added_by":"String","changed_date":"0001-01-01T00:00:00.0000000","changed_by":"String","timestamp":"0001-01-01T00:00:00.0000000"}]}