Required role: | REGISUserRole |
POST | /Registration/{uuid}/Drop/{reporting_term} |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class DropRegistrationResponse implements IConvertible
{
String? student_section_uuid;
String? course_name;
String? section_code;
String? title;
String? term;
double? amount;
bool? is_audit;
bool? is_grade_final;
bool? is_provisional;
bool? is_selected_to_drop;
double? suggested_refund_percentage;
double? suggested_refund_amount;
double? balance_amount;
double? charge_amount;
double? credit_amount;
String? description;
String? additional_rate_description;
int? additional_rate_id;
double? additional_rate_amount;
double? additional_rate_suggested_refund_percentage;
double? additional_rate_suggested_refund_amount;
String? benefit_description;
String? second_benefit_description;
int? benefit_rate_id;
double? benefit_amount;
double? second_benefit_amount;
int? second_benefit_rate_id;
DropRegistrationResponse({this.student_section_uuid,this.course_name,this.section_code,this.title,this.term,this.amount,this.is_audit,this.is_grade_final,this.is_provisional,this.is_selected_to_drop,this.suggested_refund_percentage,this.suggested_refund_amount,this.balance_amount,this.charge_amount,this.credit_amount,this.description,this.additional_rate_description,this.additional_rate_id,this.additional_rate_amount,this.additional_rate_suggested_refund_percentage,this.additional_rate_suggested_refund_amount,this.benefit_description,this.second_benefit_description,this.benefit_rate_id,this.benefit_amount,this.second_benefit_amount,this.second_benefit_rate_id});
DropRegistrationResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
student_section_uuid = json['student_section_uuid'];
course_name = json['course_name'];
section_code = json['section_code'];
title = json['title'];
term = json['term'];
amount = JsonConverters.toDouble(json['amount']);
is_audit = json['is_audit'];
is_grade_final = json['is_grade_final'];
is_provisional = json['is_provisional'];
is_selected_to_drop = json['is_selected_to_drop'];
suggested_refund_percentage = JsonConverters.toDouble(json['suggested_refund_percentage']);
suggested_refund_amount = JsonConverters.toDouble(json['suggested_refund_amount']);
balance_amount = JsonConverters.toDouble(json['balance_amount']);
charge_amount = JsonConverters.toDouble(json['charge_amount']);
credit_amount = JsonConverters.toDouble(json['credit_amount']);
description = json['description'];
additional_rate_description = json['additional_rate_description'];
additional_rate_id = json['additional_rate_id'];
additional_rate_amount = JsonConverters.toDouble(json['additional_rate_amount']);
additional_rate_suggested_refund_percentage = JsonConverters.toDouble(json['additional_rate_suggested_refund_percentage']);
additional_rate_suggested_refund_amount = JsonConverters.toDouble(json['additional_rate_suggested_refund_amount']);
benefit_description = json['benefit_description'];
second_benefit_description = json['second_benefit_description'];
benefit_rate_id = json['benefit_rate_id'];
benefit_amount = JsonConverters.toDouble(json['benefit_amount']);
second_benefit_amount = JsonConverters.toDouble(json['second_benefit_amount']);
second_benefit_rate_id = json['second_benefit_rate_id'];
return this;
}
Map<String, dynamic> toJson() => {
'student_section_uuid': student_section_uuid,
'course_name': course_name,
'section_code': section_code,
'title': title,
'term': term,
'amount': amount,
'is_audit': is_audit,
'is_grade_final': is_grade_final,
'is_provisional': is_provisional,
'is_selected_to_drop': is_selected_to_drop,
'suggested_refund_percentage': suggested_refund_percentage,
'suggested_refund_amount': suggested_refund_amount,
'balance_amount': balance_amount,
'charge_amount': charge_amount,
'credit_amount': credit_amount,
'description': description,
'additional_rate_description': additional_rate_description,
'additional_rate_id': additional_rate_id,
'additional_rate_amount': additional_rate_amount,
'additional_rate_suggested_refund_percentage': additional_rate_suggested_refund_percentage,
'additional_rate_suggested_refund_amount': additional_rate_suggested_refund_amount,
'benefit_description': benefit_description,
'second_benefit_description': second_benefit_description,
'benefit_rate_id': benefit_rate_id,
'benefit_amount': benefit_amount,
'second_benefit_amount': second_benefit_amount,
'second_benefit_rate_id': second_benefit_rate_id
};
getTypeName() => "DropRegistrationResponse";
TypeContext? context = _ctx;
}
class InvoiceItemBalanceResponse implements IConvertible
{
ResponseStatus? responseStatus;
int? rate_id;
String? rate_code;
String? rate_description;
double? balance_amount;
double? charge_amount;
double? credit_amount;
InvoiceItemBalanceResponse({this.responseStatus,this.rate_id,this.rate_code,this.rate_description,this.balance_amount,this.charge_amount,this.credit_amount});
InvoiceItemBalanceResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
rate_id = json['rate_id'];
rate_code = json['rate_code'];
rate_description = json['rate_description'];
balance_amount = JsonConverters.toDouble(json['balance_amount']);
charge_amount = JsonConverters.toDouble(json['charge_amount']);
credit_amount = JsonConverters.toDouble(json['credit_amount']);
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
'rate_id': rate_id,
'rate_code': rate_code,
'rate_description': rate_description,
'balance_amount': balance_amount,
'charge_amount': charge_amount,
'credit_amount': credit_amount
};
getTypeName() => "InvoiceItemBalanceResponse";
TypeContext? context = _ctx;
}
class DropRegistrationsResponse implements IConvertible
{
ResponseStatus? responseStatus;
String? transaction_uuid;
int? regent_id;
String? uuid;
String? reporting_term;
double? suggested_drop_fee;
bool? suggested_full_student_fee_refund;
List<String>? messages;
List<DropRegistrationResponse>? registrations;
List<InvoiceItemBalanceResponse>? invoiceItemBalances;
DropRegistrationsResponse({this.responseStatus,this.transaction_uuid,this.regent_id,this.uuid,this.reporting_term,this.suggested_drop_fee,this.suggested_full_student_fee_refund,this.messages,this.registrations,this.invoiceItemBalances});
DropRegistrationsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
transaction_uuid = json['transaction_uuid'];
regent_id = json['regent_id'];
uuid = json['uuid'];
reporting_term = json['reporting_term'];
suggested_drop_fee = JsonConverters.toDouble(json['suggested_drop_fee']);
suggested_full_student_fee_refund = json['suggested_full_student_fee_refund'];
messages = JsonConverters.fromJson(json['messages'],'List<String>',context!);
registrations = JsonConverters.fromJson(json['registrations'],'List<DropRegistrationResponse>',context!);
invoiceItemBalances = JsonConverters.fromJson(json['invoiceItemBalances'],'List<InvoiceItemBalanceResponse>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
'transaction_uuid': transaction_uuid,
'regent_id': regent_id,
'uuid': uuid,
'reporting_term': reporting_term,
'suggested_drop_fee': suggested_drop_fee,
'suggested_full_student_fee_refund': suggested_full_student_fee_refund,
'messages': JsonConverters.toJson(messages,'List<String>',context!),
'registrations': JsonConverters.toJson(registrations,'List<DropRegistrationResponse>',context!),
'invoiceItemBalances': JsonConverters.toJson(invoiceItemBalances,'List<InvoiceItemBalanceResponse>',context!)
};
getTypeName() => "DropRegistrationsResponse";
TypeContext? context = _ctx;
}
class DropRegistrationsRequest implements IConvertible
{
String? uuid;
String? reporting_term;
List<DropRegistrationResponse>? registrations;
DateTime? override_drop_date;
String? authorizing_uuid;
DropRegistrationsRequest({this.uuid,this.reporting_term,this.registrations,this.override_drop_date,this.authorizing_uuid});
DropRegistrationsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
uuid = json['uuid'];
reporting_term = json['reporting_term'];
registrations = JsonConverters.fromJson(json['registrations'],'List<DropRegistrationResponse>',context!);
override_drop_date = JsonConverters.fromJson(json['override_drop_date'],'DateTime',context!);
authorizing_uuid = json['authorizing_uuid'];
return this;
}
Map<String, dynamic> toJson() => {
'uuid': uuid,
'reporting_term': reporting_term,
'registrations': JsonConverters.toJson(registrations,'List<DropRegistrationResponse>',context!),
'override_drop_date': JsonConverters.toJson(override_drop_date,'DateTime',context!),
'authorizing_uuid': authorizing_uuid
};
getTypeName() => "DropRegistrationsRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'data.regent_college.edu', types: <String, TypeInfo> {
'DropRegistrationResponse': TypeInfo(TypeOf.Class, create:() => DropRegistrationResponse()),
'InvoiceItemBalanceResponse': TypeInfo(TypeOf.Class, create:() => InvoiceItemBalanceResponse()),
'DropRegistrationsResponse': TypeInfo(TypeOf.Class, create:() => DropRegistrationsResponse()),
'List<DropRegistrationResponse>': TypeInfo(TypeOf.Class, create:() => <DropRegistrationResponse>[]),
'List<InvoiceItemBalanceResponse>': TypeInfo(TypeOf.Class, create:() => <InvoiceItemBalanceResponse>[]),
'DropRegistrationsRequest': TypeInfo(TypeOf.Class, create:() => DropRegistrationsRequest()),
});
Dart DropRegistrationsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Registration/{uuid}/Drop/{reporting_term} HTTP/1.1
Host: data.regent-college.edu
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
uuid: String,
reporting_term: String,
registrations:
[
{
student_section_uuid: String,
course_name: String,
section_code: String,
title: String,
term: String,
amount: 0,
is_audit: False,
is_grade_final: False,
is_provisional: False,
is_selected_to_drop: False,
suggested_refund_percentage: 0,
suggested_refund_amount: 0,
balance_amount: 0,
charge_amount: 0,
credit_amount: 0,
description: String,
additional_rate_description: String,
additional_rate_id: 0,
additional_rate_amount: 0,
additional_rate_suggested_refund_percentage: 0,
additional_rate_suggested_refund_amount: 0,
benefit_description: String,
second_benefit_description: String,
benefit_rate_id: 0,
benefit_amount: 0,
second_benefit_amount: 0,
second_benefit_rate_id: 0
}
],
override_drop_date: 0001-01-01,
authorizing_uuid: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, transaction_uuid: String, regent_id: 0, uuid: String, reporting_term: String, suggested_drop_fee: 0, suggested_full_student_fee_refund: False, messages: [ String ], registrations: [ { student_section_uuid: String, course_name: String, section_code: String, title: String, term: String, amount: 0, is_audit: False, is_grade_final: False, is_provisional: False, is_selected_to_drop: False, suggested_refund_percentage: 0, suggested_refund_amount: 0, balance_amount: 0, charge_amount: 0, credit_amount: 0, description: String, additional_rate_description: String, additional_rate_id: 0, additional_rate_amount: 0, additional_rate_suggested_refund_percentage: 0, additional_rate_suggested_refund_amount: 0, benefit_description: String, second_benefit_description: String, benefit_rate_id: 0, benefit_amount: 0, second_benefit_amount: 0, second_benefit_rate_id: 0 } ], invoiceItemBalances: [ { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, rate_id: 0, rate_code: String, rate_description: String, balance_amount: 0, charge_amount: 0, credit_amount: 0 } ] }