regis

<back to all web services

AddRegistrationsBillingPlanPreviewRequest

Requires Authentication
Required role:REGISUserRole
The following routes are available for this service:
POST/Registration/{uuid}/Add/{reporting_term}/BillingPlanPreview
import java.math.*
import java.util.*
import net.servicestack.client.*


open class AddRegistrationsBillingPlanPreviewRequest
{
    var transaction_uuid:String? = null
    var uuid:String? = null
    var reporting_term:String? = null
    var registrations:ArrayList<AddRegistrationWithBenefitRequest> = ArrayList<AddRegistrationWithBenefitRequest>()
    var additional_term_charges:ArrayList<AddRegistrationsAdditionalChargeSubmitRequest> = ArrayList<AddRegistrationsAdditionalChargeSubmitRequest>()
    var description:String? = null
    var authorizing_uuid:String? = null
    var use_authoritative_billing_plan:Boolean? = null
}

open class AddRegistrationWithBenefitRequest
{
    var student_section_uuid:String? = null
    var description:String? = null
    var amount:BigDecimal? = null
    var charge:BigDecimal? = null
    var is_audit:Boolean? = null
    var benefit_id:Int? = null
    var benefit_amount:BigDecimal? = null
    var second_benefit_id:Int? = null
    var second_benefit_amount:BigDecimal? = null
}

open class AddRegistrationsAdditionalChargeSubmitRequest
{
    var rate_id:Int? = null
    var description:String? = null
    var charge:BigDecimal? = null
    var credit:BigDecimal? = null
}

open class AddRegistrationsResponse : InvoiceResponse()
{
    var transaction_uuid:String? = null
    var studentSectionInvoiceItems:ArrayList<StudentSectionInvoiceItemResponse> = ArrayList<StudentSectionInvoiceItemResponse>()
    var sectionRates:HashMap<String,ArrayList<SectionRateWithAmountResponse>> = HashMap<String,ArrayList<SectionRateWithAmountResponse>>()
    var creditTuitionRate:InvoiceItemAdminResponse? = null
    var auditTuitionRate:InvoiceItemAdminResponse? = null
    var studentAge:Int? = null
    var studentAgeAtEarliestSectionStartDate:Int? = null
    var isRegentGrad:Boolean? = null
    var isOnlyUnclassified:Boolean? = null
    var canRegisterForAuditInTerm:Boolean? = null
    var canRegisterForCreditInTerm:Boolean? = null
    var messages:ArrayList<String> = ArrayList<String>()
    var currentTermAuditHours:BigDecimal? = null
    var currentTermCreditHours:BigDecimal? = null
    var totalCreditHours:BigDecimal? = null
    var availableInvoiceItems:ArrayList<InvoiceItemAdminResponse> = ArrayList<InvoiceItemAdminResponse>()
    var availableBenefits:ArrayList<BenefitResponse> = ArrayList<BenefitResponse>()
}

open class InvoiceResponse
{
    var responseStatus:ResponseStatus? = null
    var invoiceUUID:String? = null
    var regent_id:Int? = null
    var uuid:String? = null
    var reporting_term:String? = null
    var total_charges:BigDecimal? = null
    var total_credits:BigDecimal? = null
    var current_status:String? = null
    var timestamp:Date? = null
    var billingPlan:RegistrationBillingPlanResponse? = null
}

open class RegistrationBillingPlanResponse
{
    var transaction_uuid:String? = null
    var uuid:String? = null
    var regent_id:Int? = null
    var reporting_term:String? = null
    var total_charges:BigDecimal? = null
    var total_credits:BigDecimal? = null
    var terms:ArrayList<RegistrationBillingPlanTermResponse> = ArrayList<RegistrationBillingPlanTermResponse>()
}

open class RegistrationBillingPlanTermResponse
{
    var reporting_term:String? = null
    var term_name:String? = null
    var due_date:Date? = null
    var total_charges:BigDecimal? = null
    var total_credits:BigDecimal? = null
    var invoiceItemGroups:ArrayList<RegistrationBillingPlanInvoiceItemGroupResponse> = ArrayList<RegistrationBillingPlanInvoiceItemGroupResponse>()
}

open class RegistrationBillingPlanInvoiceItemGroupResponse
{
    var name:String? = null
    var description:String? = null
    var rate_code:String? = null
    var rate_description:String? = null
    var total_charges:BigDecimal? = null
    var total_credits:BigDecimal? = null
    var studentSectionInvoiceItems:ArrayList<StudentSectionInvoiceItemResponse> = ArrayList<StudentSectionInvoiceItemResponse>()
    var invoiceItems:ArrayList<InvoiceItemResponse> = ArrayList<InvoiceItemResponse>()
    var otherInvoiceItems:ArrayList<InvoiceItemResponse> = ArrayList<InvoiceItemResponse>()
}

open class StudentSectionInvoiceItemResponse : InvoiceItemResponse()
{
    var studentSection:StudentSectionResponse? = null
}

open class InvoiceItemResponse
{
    var responseStatus:ResponseStatus? = null
    var invoiceItemUUID:String? = null
    var rate_id:Int? = null
    var rate_code:String? = null
    var rate_description:String? = null
    var reporting_term:String? = null
    var charge:BigDecimal? = null
    var credit:BigDecimal? = null
}

open class StudentSectionResponse : SectionResponse()
{
    var studentSectionUUID:String? = null
    var registered_amount:BigDecimal? = null
    var is_provisional:Boolean? = null
    var is_audit:Boolean? = null
}

open class SectionResponse
{
    var responseStatus:ResponseStatus? = null
    var secUUID:String? = null
    var course_name:String? = null
    var section_code:String? = null
    var course_title:String? = null
    var course_short_title:String? = null
    var course_description:String? = null
    var crosslist_description:String? = null
    var crosslist_course_name:String? = null
    var location_long_name:String? = null
    var room:String? = null
    var instructors:ArrayList<InstructorResponse> = ArrayList<InstructorResponse>()
    var required_documents:ArrayList<DocumentResponse> = ArrayList<DocumentResponse>()
    var start_date:Date? = null
    var end_date:Date? = null
    var first_meeting_date:Date? = null
    var last_meeting_date:Date? = null
    var meeting_days:String? = null
    var start_times:ArrayList<String> = ArrayList<String>()
    var end_times:ArrayList<String> = ArrayList<String>()
    var is_online_only:Boolean? = null
    var is_weekend:Boolean? = null
    var is_weekday:Boolean? = null
    var is_evening:Boolean? = null
    var is_waitlist:Boolean? = null
    var has_special_requirements:Boolean? = null
    var special_requirements:String? = null
    var is_unlisted:Boolean? = null
    var credit_amounts:ArrayList<BigDecimal> = ArrayList<BigDecimal>()
    var audit_amounts:ArrayList<BigDecimal> = ArrayList<BigDecimal>()
    var audits_short_name:String? = null
    var audits_long_name:String? = null
    var credits_short_name:String? = null
    var credits_long_name:String? = null
    var distance_ed_materials:String? = null
    var prerequisites:String? = null
    var corequisites:String? = null
    var capacity:Int? = null
    var flat_fee_amount:BigDecimal? = null
    var additional_fee_amount:BigDecimal? = null
    var registered_students:Int? = null
    var three_credit_plus:Int? = null
    var two_credit:Int? = null
    var one_credit:Int? = null
    var three_audit_plus:Int? = null
    var two_audit:Int? = null
    var one_audit:Int? = null
    var crosslist_registered_students:Int? = null
    var grades_received:Int? = null
    var crosslist_grades_received:Int? = null
    var registration_start_date:Date? = null
    var registration_end_date:Date? = null
    var add_start_date:Date? = null
    var add_end_date:Date? = null
    var drop_start_date:Date? = null
    var drop_end_date:Date? = null
    var grading_end_date:Date? = null
    var term:String? = null
    var reporting_term:String? = null
    var reporting_year:Int? = null
    var current_status:String? = null
    var added_by:String? = null
    var added_date:Date? = null
    var changed_by:String? = null
    var changed_date:Date? = null
    var timestamp:Date? = null
}

open class InstructorResponse
{
    var responseStatus:ResponseStatus? = null
    var regent_id:Int? = null
    var regent_login:String? = null
    var preferred_name:String? = null
    var first_name:String? = null
    var last_name:String? = null
    var full_name:String? = null
    var email:String? = null
    var image_base64:String? = null
}

open class DocumentResponse
{
    var code:String? = null
    var document_name:String? = null
    var document_description:String? = null
}

open class InvoiceItemAdminResponse
{
    var responseStatus:ResponseStatus? = null
    var invoiceItemUUID:String? = null
    var rate_id:Int? = null
    var rate_code:String? = null
    var rate_description:String? = null
    var is_required:Boolean? = null
    var is_optional:Boolean? = null
    var charge:BigDecimal? = null
    var credit:BigDecimal? = null
}

open class BenefitResponse
{
    var rate_id:Int? = null
    var rate_code:String? = null
    var rate_description:String? = null
    var percentage_rate:BigDecimal? = null
    var is_optional:Boolean? = null
    var is_required:Boolean? = null
}

Kotlin AddRegistrationsBillingPlanPreviewRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /Registration/{uuid}/Add/{reporting_term}/BillingPlanPreview HTTP/1.1 
Host: data.regent-college.edu 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	transaction_uuid: String,
	uuid: String,
	reporting_term: String,
	registrations: 
	[
		{
			student_section_uuid: String,
			description: String,
			amount: 0,
			charge: 0,
			is_audit: False,
			benefit_id: 0,
			benefit_amount: 0,
			second_benefit_id: 0,
			second_benefit_amount: 0
		}
	],
	additional_term_charges: 
	[
		{
			rate_id: 0,
			description: String,
			charge: 0,
			credit: 0
		}
	],
	description: String,
	authorizing_uuid: String,
	use_authoritative_billing_plan: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	transaction_uuid: String,
	studentSectionInvoiceItems: 
	[
		{
			studentSection: 
			{
				studentSectionUUID: String,
				registered_amount: 0,
				is_provisional: False,
				is_audit: False,
				responseStatus: 
				{
					errorCode: String,
					message: String,
					stackTrace: String,
					errors: 
					[
						{
							errorCode: String,
							fieldName: String,
							message: String,
							meta: 
							{
								String: String
							}
						}
					],
					meta: 
					{
						String: String
					}
				},
				secUUID: String,
				course_name: String,
				section_code: String,
				course_title: String,
				course_short_title: String,
				course_description: String,
				crosslist_description: String,
				crosslist_course_name: String,
				location_long_name: String,
				room: String,
				instructors: 
				[
					{
						responseStatus: 
						{
							errorCode: String,
							message: String,
							stackTrace: String,
							errors: 
							[
								{
									errorCode: String,
									fieldName: String,
									message: String,
									meta: 
									{
										String: String
									}
								}
							],
							meta: 
							{
								String: String
							}
						},
						regent_id: 0,
						regent_login: String,
						preferred_name: String,
						first_name: String,
						last_name: String,
						full_name: String,
						email: String,
						image_base64: String
					}
				],
				required_documents: 
				[
					{
						code: String,
						document_name: String,
						document_description: String
					}
				],
				start_date: 0001-01-01,
				end_date: 0001-01-01,
				first_meeting_date: 0001-01-01,
				last_meeting_date: 0001-01-01,
				meeting_days: String,
				start_times: 
				[
					String
				],
				end_times: 
				[
					String
				],
				is_online_only: False,
				is_weekend: False,
				is_weekday: False,
				is_evening: False,
				is_waitlist: False,
				has_special_requirements: False,
				special_requirements: String,
				is_unlisted: False,
				credit_amounts: 
				[
					0
				],
				audit_amounts: 
				[
					0
				],
				audits_short_name: String,
				audits_long_name: String,
				credits_short_name: String,
				credits_long_name: String,
				distance_ed_materials: String,
				prerequisites: String,
				corequisites: String,
				capacity: 0,
				flat_fee_amount: 0,
				additional_fee_amount: 0,
				registered_students: 0,
				three_credit_plus: 0,
				two_credit: 0,
				one_credit: 0,
				three_audit_plus: 0,
				two_audit: 0,
				one_audit: 0,
				crosslist_registered_students: 0,
				grades_received: 0,
				crosslist_grades_received: 0,
				registration_start_date: 0001-01-01,
				registration_end_date: 0001-01-01,
				add_start_date: 0001-01-01,
				add_end_date: 0001-01-01,
				drop_start_date: 0001-01-01,
				drop_end_date: 0001-01-01,
				grading_end_date: 0001-01-01,
				term: String,
				reporting_term: String,
				reporting_year: 0,
				current_status: String,
				added_by: String,
				added_date: 0001-01-01,
				changed_by: String,
				changed_date: 0001-01-01,
				timestamp: 0001-01-01
			},
			responseStatus: 
			{
				errorCode: String,
				message: String,
				stackTrace: String,
				errors: 
				[
					{
						errorCode: String,
						fieldName: String,
						message: String,
						meta: 
						{
							String: String
						}
					}
				],
				meta: 
				{
					String: String
				}
			},
			invoiceItemUUID: String,
			rate_id: 0,
			rate_code: String,
			rate_description: String,
			reporting_term: String,
			charge: 0,
			credit: 0
		}
	],
	sectionRates: 
	{
		String: 
		[
			{
				rate_id: 0,
				charge: 0,
				credit: 0,
				responseStatus: 
				{
					errorCode: String,
					message: String,
					stackTrace: String,
					errors: 
					[
						{
							errorCode: String,
							fieldName: String,
							message: String,
							meta: 
							{
								String: String
							}
						}
					],
					meta: 
					{
						String: String
					}
				},
				uuid: String,
				secUUID: String,
				section_id: 0,
				course_name: String,
				section_code: String,
				title: String,
				reporting_term: String,
				rate_code: String,
				rate_description: String,
				is_override_credit_rate: False,
				is_override_audit_rate: False
			}
		]
	},
	creditTuitionRate: 
	{
		responseStatus: 
		{
			errorCode: String,
			message: String,
			stackTrace: String,
			errors: 
			[
				{
					errorCode: String,
					fieldName: String,
					message: String,
					meta: 
					{
						String: String
					}
				}
			],
			meta: 
			{
				String: String
			}
		},
		invoiceItemUUID: String,
		rate_id: 0,
		rate_code: String,
		rate_description: String,
		is_required: False,
		is_optional: False,
		charge: 0,
		credit: 0
	},
	auditTuitionRate: 
	{
		responseStatus: 
		{
			errorCode: String,
			message: String,
			stackTrace: String,
			errors: 
			[
				{
					errorCode: String,
					fieldName: String,
					message: String,
					meta: 
					{
						String: String
					}
				}
			],
			meta: 
			{
				String: String
			}
		},
		invoiceItemUUID: String,
		rate_id: 0,
		rate_code: String,
		rate_description: String,
		is_required: False,
		is_optional: False,
		charge: 0,
		credit: 0
	},
	studentAge: 0,
	studentAgeAtEarliestSectionStartDate: 0,
	isRegentGrad: False,
	isOnlyUnclassified: False,
	canRegisterForAuditInTerm: False,
	canRegisterForCreditInTerm: False,
	messages: 
	[
		String
	],
	currentTermAuditHours: 0,
	currentTermCreditHours: 0,
	totalCreditHours: 0,
	availableInvoiceItems: 
	[
		{
			responseStatus: 
			{
				errorCode: String,
				message: String,
				stackTrace: String,
				errors: 
				[
					{
						errorCode: String,
						fieldName: String,
						message: String,
						meta: 
						{
							String: String
						}
					}
				],
				meta: 
				{
					String: String
				}
			},
			invoiceItemUUID: String,
			rate_id: 0,
			rate_code: String,
			rate_description: String,
			is_required: False,
			is_optional: False,
			charge: 0,
			credit: 0
		}
	],
	availableBenefits: 
	[
		{
			rate_id: 0,
			rate_code: String,
			rate_description: String,
			percentage_rate: 0,
			is_optional: False,
			is_required: False
		}
	],
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	},
	invoiceUUID: String,
	regent_id: 0,
	uuid: String,
	reporting_term: String,
	total_charges: 0,
	total_credits: 0,
	current_status: String,
	timestamp: 0001-01-01,
	billingPlan: 
	{
		transaction_uuid: String,
		uuid: String,
		regent_id: 0,
		reporting_term: String,
		total_charges: 0,
		total_credits: 0,
		terms: 
		[
			{
				reporting_term: String,
				term_name: String,
				due_date: 0001-01-01,
				total_charges: 0,
				total_credits: 0,
				invoiceItemGroups: 
				[
					{
						name: String,
						description: String,
						rate_code: String,
						rate_description: String,
						total_charges: 0,
						total_credits: 0,
						studentSectionInvoiceItems: 
						[
							{
								studentSection: 
								{
									studentSectionUUID: String,
									registered_amount: 0,
									is_provisional: False,
									is_audit: False,
									responseStatus: 
									{
										errorCode: String,
										message: String,
										stackTrace: String,
										errors: 
										[
											{
												errorCode: String,
												fieldName: String,
												message: String,
												meta: 
												{
													String: String
												}
											}
										],
										meta: 
										{
											String: String
										}
									},
									secUUID: String,
									course_name: String,
									section_code: String,
									course_title: String,
									course_short_title: String,
									course_description: String,
									crosslist_description: String,
									crosslist_course_name: String,
									location_long_name: String,
									room: String,
									instructors: 
									[
										{
											responseStatus: 
											{
												errorCode: String,
												message: String,
												stackTrace: String,
												errors: 
												[
													{
														errorCode: String,
														fieldName: String,
														message: String,
														meta: 
														{
															String: String
														}
													}
												],
												meta: 
												{
													String: String
												}
											},
											regent_id: 0,
											regent_login: String,
											preferred_name: String,
											first_name: String,
											last_name: String,
											full_name: String,
											email: String,
											image_base64: String
										}
									],
									required_documents: 
									[
										{
											code: String,
											document_name: String,
											document_description: String
										}
									],
									start_date: 0001-01-01,
									end_date: 0001-01-01,
									first_meeting_date: 0001-01-01,
									last_meeting_date: 0001-01-01,
									meeting_days: String,
									start_times: 
									[
										String
									],
									end_times: 
									[
										String
									],
									is_online_only: False,
									is_weekend: False,
									is_weekday: False,
									is_evening: False,
									is_waitlist: False,
									has_special_requirements: False,
									special_requirements: String,
									is_unlisted: False,
									credit_amounts: 
									[
										0
									],
									audit_amounts: 
									[
										0
									],
									audits_short_name: String,
									audits_long_name: String,
									credits_short_name: String,
									credits_long_name: String,
									distance_ed_materials: String,
									prerequisites: String,
									corequisites: String,
									capacity: 0,
									flat_fee_amount: 0,
									additional_fee_amount: 0,
									registered_students: 0,
									three_credit_plus: 0,
									two_credit: 0,
									one_credit: 0,
									three_audit_plus: 0,
									two_audit: 0,
									one_audit: 0,
									crosslist_registered_students: 0,
									grades_received: 0,
									crosslist_grades_received: 0,
									registration_start_date: 0001-01-01,
									registration_end_date: 0001-01-01,
									add_start_date: 0001-01-01,
									add_end_date: 0001-01-01,
									drop_start_date: 0001-01-01,
									drop_end_date: 0001-01-01,
									grading_end_date: 0001-01-01,
									term: String,
									reporting_term: String,
									reporting_year: 0,
									current_status: String,
									added_by: String,
									added_date: 0001-01-01,
									changed_by: String,
									changed_date: 0001-01-01,
									timestamp: 0001-01-01
								},
								responseStatus: 
								{
									errorCode: String,
									message: String,
									stackTrace: String,
									errors: 
									[
										{
											errorCode: String,
											fieldName: String,
											message: String,
											meta: 
											{
												String: String
											}
										}
									],
									meta: 
									{
										String: String
									}
								},
								invoiceItemUUID: String,
								rate_id: 0,
								rate_code: String,
								rate_description: String,
								reporting_term: String,
								charge: 0,
								credit: 0
							}
						],
						invoiceItems: 
						[
							{
								responseStatus: 
								{
									errorCode: String,
									message: String,
									stackTrace: String,
									errors: 
									[
										{
											errorCode: String,
											fieldName: String,
											message: String,
											meta: 
											{
												String: String
											}
										}
									],
									meta: 
									{
										String: String
									}
								},
								invoiceItemUUID: String,
								rate_id: 0,
								rate_code: String,
								rate_description: String,
								reporting_term: String,
								charge: 0,
								credit: 0
							}
						],
						otherInvoiceItems: 
						[
							{
								responseStatus: 
								{
									errorCode: String,
									message: String,
									stackTrace: String,
									errors: 
									[
										{
											errorCode: String,
											fieldName: String,
											message: String,
											meta: 
											{
												String: String
											}
										}
									],
									meta: 
									{
										String: String
									}
								},
								invoiceItemUUID: String,
								rate_id: 0,
								rate_code: String,
								rate_description: String,
								reporting_term: String,
								charge: 0,
								credit: 0
							}
						]
					}
				]
			}
		]
	}
}