| Required role: | REGISUserRole |
| POST | /registration/billing-audit-reports |
|---|
<?php namespace dtos;
use DateTime;
use Exception;
use DateInterval;
use JsonSerializable;
use ServiceStack\{IReturn,IReturnVoid,IGet,IPost,IPut,IDelete,IPatch,IMeta,IHasSessionId,IHasBearerToken,IHasVersion};
use ServiceStack\{ICrud,ICreateDb,IUpdateDb,IPatchDb,IDeleteDb,ISaveDb,AuditBase,QueryDb,QueryDb2,QueryData,QueryData2,QueryResponse};
use ServiceStack\{ResponseStatus,ResponseError,EmptyResponse,IdResponse,ArrayList,KeyValuePair2,StringResponse,StringsResponse,Tuple2,Tuple3,ByteArray};
use ServiceStack\{JsonConverters,Returns,TypeContext};
class RegistrationBillingParityAuditResponse implements JsonSerializable
{
public function __construct(
/** @var int */
public int $execution_id=0,
/** @var string|null */
public ?string $reporting_term=null,
/** @var DateTime */
public DateTime $timestamp=new DateTime(),
/** @var string|null */
public ?string $workflow=null,
/** @var string|null */
public ?string $execution_mode=null,
/** @var int */
public int $regent_id=0,
/** @var int|null */
public ?int $transaction_id=null,
/** @var bool|null */
public ?bool $matches=null,
/** @var bool|null */
public ?bool $legacy_succeeded=null,
/** @var bool|null */
public ?bool $composed_succeeded=null,
/** @var string|null */
public ?string $differences=null,
/** @var string|null */
public ?string $request_summary_json=null,
/** @var string|null */
public ?string $legacy_summary_json=null,
/** @var string|null */
public ?string $composed_summary_json=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['execution_id'])) $this->execution_id = $o['execution_id'];
if (isset($o['reporting_term'])) $this->reporting_term = $o['reporting_term'];
if (isset($o['timestamp'])) $this->timestamp = JsonConverters::from('DateTime', $o['timestamp']);
if (isset($o['workflow'])) $this->workflow = $o['workflow'];
if (isset($o['execution_mode'])) $this->execution_mode = $o['execution_mode'];
if (isset($o['regent_id'])) $this->regent_id = $o['regent_id'];
if (isset($o['transaction_id'])) $this->transaction_id = $o['transaction_id'];
if (isset($o['matches'])) $this->matches = $o['matches'];
if (isset($o['legacy_succeeded'])) $this->legacy_succeeded = $o['legacy_succeeded'];
if (isset($o['composed_succeeded'])) $this->composed_succeeded = $o['composed_succeeded'];
if (isset($o['differences'])) $this->differences = $o['differences'];
if (isset($o['request_summary_json'])) $this->request_summary_json = $o['request_summary_json'];
if (isset($o['legacy_summary_json'])) $this->legacy_summary_json = $o['legacy_summary_json'];
if (isset($o['composed_summary_json'])) $this->composed_summary_json = $o['composed_summary_json'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->execution_id)) $o['execution_id'] = $this->execution_id;
if (isset($this->reporting_term)) $o['reporting_term'] = $this->reporting_term;
if (isset($this->timestamp)) $o['timestamp'] = JsonConverters::to('DateTime', $this->timestamp);
if (isset($this->workflow)) $o['workflow'] = $this->workflow;
if (isset($this->execution_mode)) $o['execution_mode'] = $this->execution_mode;
if (isset($this->regent_id)) $o['regent_id'] = $this->regent_id;
if (isset($this->transaction_id)) $o['transaction_id'] = $this->transaction_id;
if (isset($this->matches)) $o['matches'] = $this->matches;
if (isset($this->legacy_succeeded)) $o['legacy_succeeded'] = $this->legacy_succeeded;
if (isset($this->composed_succeeded)) $o['composed_succeeded'] = $this->composed_succeeded;
if (isset($this->differences)) $o['differences'] = $this->differences;
if (isset($this->request_summary_json)) $o['request_summary_json'] = $this->request_summary_json;
if (isset($this->legacy_summary_json)) $o['legacy_summary_json'] = $this->legacy_summary_json;
if (isset($this->composed_summary_json)) $o['composed_summary_json'] = $this->composed_summary_json;
return empty($o) ? new class(){} : $o;
}
}
class RegistrationBillingCompletenessAuditResponse implements JsonSerializable
{
public function __construct(
/** @var int */
public int $transaction_id=0,
/** @var string|null */
public ?string $transaction_uuid=null,
/** @var string|null */
public ?string $reporting_term=null,
/** @var DateTime */
public DateTime $finished_datetime=new DateTime(),
/** @var string|null */
public ?string $operation=null,
/** @var int */
public int $regent_id=0,
/** @var string|null */
public ?string $student_uuid=null,
/** @var string|null */
public ?string $student_name=null,
/** @var int */
public int $invoice_count=0,
/** @var float */
public float $invoice_net=0.0,
/** @var float */
public float $item_net=0.0,
/** @var int */
public int $gp_success_count=0,
/** @var int */
public int $gp_failure_count=0,
/** @var string|null */
public ?string $calculation_status=null,
/** @var string|null */
public ?string $calculation_findings=null,
/** @var string|null */
public ?string $status=null,
/** @var string|null */
public ?string $findings=null,
/** @var DateTime|null */
public ?DateTime $resolved_datetime=null,
/** @var string|null */
public ?string $resolved_by_uuid=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['transaction_id'])) $this->transaction_id = $o['transaction_id'];
if (isset($o['transaction_uuid'])) $this->transaction_uuid = $o['transaction_uuid'];
if (isset($o['reporting_term'])) $this->reporting_term = $o['reporting_term'];
if (isset($o['finished_datetime'])) $this->finished_datetime = JsonConverters::from('DateTime', $o['finished_datetime']);
if (isset($o['operation'])) $this->operation = $o['operation'];
if (isset($o['regent_id'])) $this->regent_id = $o['regent_id'];
if (isset($o['student_uuid'])) $this->student_uuid = $o['student_uuid'];
if (isset($o['student_name'])) $this->student_name = $o['student_name'];
if (isset($o['invoice_count'])) $this->invoice_count = $o['invoice_count'];
if (isset($o['invoice_net'])) $this->invoice_net = $o['invoice_net'];
if (isset($o['item_net'])) $this->item_net = $o['item_net'];
if (isset($o['gp_success_count'])) $this->gp_success_count = $o['gp_success_count'];
if (isset($o['gp_failure_count'])) $this->gp_failure_count = $o['gp_failure_count'];
if (isset($o['calculation_status'])) $this->calculation_status = $o['calculation_status'];
if (isset($o['calculation_findings'])) $this->calculation_findings = $o['calculation_findings'];
if (isset($o['status'])) $this->status = $o['status'];
if (isset($o['findings'])) $this->findings = $o['findings'];
if (isset($o['resolved_datetime'])) $this->resolved_datetime = JsonConverters::from('DateTime', $o['resolved_datetime']);
if (isset($o['resolved_by_uuid'])) $this->resolved_by_uuid = $o['resolved_by_uuid'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->transaction_id)) $o['transaction_id'] = $this->transaction_id;
if (isset($this->transaction_uuid)) $o['transaction_uuid'] = $this->transaction_uuid;
if (isset($this->reporting_term)) $o['reporting_term'] = $this->reporting_term;
if (isset($this->finished_datetime)) $o['finished_datetime'] = JsonConverters::to('DateTime', $this->finished_datetime);
if (isset($this->operation)) $o['operation'] = $this->operation;
if (isset($this->regent_id)) $o['regent_id'] = $this->regent_id;
if (isset($this->student_uuid)) $o['student_uuid'] = $this->student_uuid;
if (isset($this->student_name)) $o['student_name'] = $this->student_name;
if (isset($this->invoice_count)) $o['invoice_count'] = $this->invoice_count;
if (isset($this->invoice_net)) $o['invoice_net'] = $this->invoice_net;
if (isset($this->item_net)) $o['item_net'] = $this->item_net;
if (isset($this->gp_success_count)) $o['gp_success_count'] = $this->gp_success_count;
if (isset($this->gp_failure_count)) $o['gp_failure_count'] = $this->gp_failure_count;
if (isset($this->calculation_status)) $o['calculation_status'] = $this->calculation_status;
if (isset($this->calculation_findings)) $o['calculation_findings'] = $this->calculation_findings;
if (isset($this->status)) $o['status'] = $this->status;
if (isset($this->findings)) $o['findings'] = $this->findings;
if (isset($this->resolved_datetime)) $o['resolved_datetime'] = JsonConverters::to('DateTime', $this->resolved_datetime);
if (isset($this->resolved_by_uuid)) $o['resolved_by_uuid'] = $this->resolved_by_uuid;
return empty($o) ? new class(){} : $o;
}
}
class RegistrationBillingFailureAuditResponse implements JsonSerializable
{
public function __construct(
/** @var string|null */
public ?string $source=null,
/** @var string|null */
public ?string $reporting_term=null,
/** @var int */
public int $id=0,
/** @var DateTime */
public DateTime $timestamp=new DateTime(),
/** @var string|null */
public ?string $workflow=null,
/** @var int */
public int $regent_id=0,
/** @var int|null */
public ?int $transaction_id=null,
/** @var string|null */
public ?string $invoice_id=null,
/** @var string|null */
public ?string $gp_document_number=null,
/** @var float|null */
public ?float $amount=null,
/** @var string|null */
public ?string $error=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['source'])) $this->source = $o['source'];
if (isset($o['reporting_term'])) $this->reporting_term = $o['reporting_term'];
if (isset($o['id'])) $this->id = $o['id'];
if (isset($o['timestamp'])) $this->timestamp = JsonConverters::from('DateTime', $o['timestamp']);
if (isset($o['workflow'])) $this->workflow = $o['workflow'];
if (isset($o['regent_id'])) $this->regent_id = $o['regent_id'];
if (isset($o['transaction_id'])) $this->transaction_id = $o['transaction_id'];
if (isset($o['invoice_id'])) $this->invoice_id = $o['invoice_id'];
if (isset($o['gp_document_number'])) $this->gp_document_number = $o['gp_document_number'];
if (isset($o['amount'])) $this->amount = $o['amount'];
if (isset($o['error'])) $this->error = $o['error'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->source)) $o['source'] = $this->source;
if (isset($this->reporting_term)) $o['reporting_term'] = $this->reporting_term;
if (isset($this->id)) $o['id'] = $this->id;
if (isset($this->timestamp)) $o['timestamp'] = JsonConverters::to('DateTime', $this->timestamp);
if (isset($this->workflow)) $o['workflow'] = $this->workflow;
if (isset($this->regent_id)) $o['regent_id'] = $this->regent_id;
if (isset($this->transaction_id)) $o['transaction_id'] = $this->transaction_id;
if (isset($this->invoice_id)) $o['invoice_id'] = $this->invoice_id;
if (isset($this->gp_document_number)) $o['gp_document_number'] = $this->gp_document_number;
if (isset($this->amount)) $o['amount'] = $this->amount;
if (isset($this->error)) $o['error'] = $this->error;
return empty($o) ? new class(){} : $o;
}
}
class RegistrationBillingDriftAuditResponse implements JsonSerializable
{
public function __construct(
/** @var int */
public int $transaction_id=0,
/** @var string|null */
public ?string $reporting_term=null,
/** @var int */
public int $regent_id=0,
/** @var string|null */
public ?string $workflow=null,
/** @var int */
public int $calculation_count=0,
/** @var DateTime */
public DateTime $first_calculation=new DateTime(),
/** @var DateTime */
public DateTime $final_calculation=new DateTime(),
/** @var bool|null */
public ?bool $changed=null,
/** @var string|null */
public ?string $persistence_status=null,
/** @var string|null */
public ?string $persistence_findings=null,
/** @var string|null */
public ?string $first_summary_json=null,
/** @var string|null */
public ?string $final_summary_json=null,
/** @var array<string,string>|null */
public ?array $section_course_codes=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['transaction_id'])) $this->transaction_id = $o['transaction_id'];
if (isset($o['reporting_term'])) $this->reporting_term = $o['reporting_term'];
if (isset($o['regent_id'])) $this->regent_id = $o['regent_id'];
if (isset($o['workflow'])) $this->workflow = $o['workflow'];
if (isset($o['calculation_count'])) $this->calculation_count = $o['calculation_count'];
if (isset($o['first_calculation'])) $this->first_calculation = JsonConverters::from('DateTime', $o['first_calculation']);
if (isset($o['final_calculation'])) $this->final_calculation = JsonConverters::from('DateTime', $o['final_calculation']);
if (isset($o['changed'])) $this->changed = $o['changed'];
if (isset($o['persistence_status'])) $this->persistence_status = $o['persistence_status'];
if (isset($o['persistence_findings'])) $this->persistence_findings = $o['persistence_findings'];
if (isset($o['first_summary_json'])) $this->first_summary_json = $o['first_summary_json'];
if (isset($o['final_summary_json'])) $this->final_summary_json = $o['final_summary_json'];
if (isset($o['section_course_codes'])) $this->section_course_codes = JsonConverters::from(JsonConverters::context('Dictionary',genericArgs:['int','string']), $o['section_course_codes']);
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->transaction_id)) $o['transaction_id'] = $this->transaction_id;
if (isset($this->reporting_term)) $o['reporting_term'] = $this->reporting_term;
if (isset($this->regent_id)) $o['regent_id'] = $this->regent_id;
if (isset($this->workflow)) $o['workflow'] = $this->workflow;
if (isset($this->calculation_count)) $o['calculation_count'] = $this->calculation_count;
if (isset($this->first_calculation)) $o['first_calculation'] = JsonConverters::to('DateTime', $this->first_calculation);
if (isset($this->final_calculation)) $o['final_calculation'] = JsonConverters::to('DateTime', $this->final_calculation);
if (isset($this->changed)) $o['changed'] = $this->changed;
if (isset($this->persistence_status)) $o['persistence_status'] = $this->persistence_status;
if (isset($this->persistence_findings)) $o['persistence_findings'] = $this->persistence_findings;
if (isset($this->first_summary_json)) $o['first_summary_json'] = $this->first_summary_json;
if (isset($this->final_summary_json)) $o['final_summary_json'] = $this->final_summary_json;
if (isset($this->section_course_codes)) $o['section_course_codes'] = JsonConverters::to(JsonConverters::context('Dictionary',genericArgs:['int','string']), $this->section_course_codes);
return empty($o) ? new class(){} : $o;
}
}
class RegistrationBillingAuditReportResponse implements JsonSerializable
{
public function __construct(
/** @var array<RegistrationBillingParityAuditResponse>|null */
public ?array $parity=null,
/** @var array<RegistrationBillingCompletenessAuditResponse>|null */
public ?array $completeness=null,
/** @var array<RegistrationBillingFailureAuditResponse>|null */
public ?array $failures=null,
/** @var array<RegistrationBillingDriftAuditResponse>|null */
public ?array $drift=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['parity'])) $this->parity = JsonConverters::fromArray('RegistrationBillingParityAuditResponse', $o['parity']);
if (isset($o['completeness'])) $this->completeness = JsonConverters::fromArray('RegistrationBillingCompletenessAuditResponse', $o['completeness']);
if (isset($o['failures'])) $this->failures = JsonConverters::fromArray('RegistrationBillingFailureAuditResponse', $o['failures']);
if (isset($o['drift'])) $this->drift = JsonConverters::fromArray('RegistrationBillingDriftAuditResponse', $o['drift']);
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->parity)) $o['parity'] = JsonConverters::toArray('RegistrationBillingParityAuditResponse', $this->parity);
if (isset($this->completeness)) $o['completeness'] = JsonConverters::toArray('RegistrationBillingCompletenessAuditResponse', $this->completeness);
if (isset($this->failures)) $o['failures'] = JsonConverters::toArray('RegistrationBillingFailureAuditResponse', $this->failures);
if (isset($this->drift)) $o['drift'] = JsonConverters::toArray('RegistrationBillingDriftAuditResponse', $this->drift);
return empty($o) ? new class(){} : $o;
}
}
class RegistrationBillingAuditReportRequest implements JsonSerializable
{
public function __construct(
/** @var string|null */
public ?string $reporting_term=null,
/** @var DateTime */
public DateTime $from_date=new DateTime(),
/** @var DateTime */
public DateTime $to_date=new DateTime(),
/** @var string|null */
public ?string $authorizing_uuid=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['reporting_term'])) $this->reporting_term = $o['reporting_term'];
if (isset($o['from_date'])) $this->from_date = JsonConverters::from('DateTime', $o['from_date']);
if (isset($o['to_date'])) $this->to_date = JsonConverters::from('DateTime', $o['to_date']);
if (isset($o['authorizing_uuid'])) $this->authorizing_uuid = $o['authorizing_uuid'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->reporting_term)) $o['reporting_term'] = $this->reporting_term;
if (isset($this->from_date)) $o['from_date'] = JsonConverters::to('DateTime', $this->from_date);
if (isset($this->to_date)) $o['to_date'] = JsonConverters::to('DateTime', $this->to_date);
if (isset($this->authorizing_uuid)) $o['authorizing_uuid'] = $this->authorizing_uuid;
return empty($o) ? new class(){} : $o;
}
}
PHP RegistrationBillingAuditReportRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /registration/billing-audit-reports HTTP/1.1
Host: data.regent-college.edu
Accept: application/json
Content-Type: application/json
Content-Length: length
{"reporting_term":"String","from_date":"0001-01-01T00:00:00.0000000","to_date":"0001-01-01T00:00:00.0000000","authorizing_uuid":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"parity":[{"execution_id":0,"reporting_term":"String","timestamp":"0001-01-01T00:00:00.0000000","workflow":"String","execution_mode":"String","regent_id":0,"transaction_id":0,"matches":false,"legacy_succeeded":false,"composed_succeeded":false,"differences":"String","request_summary_json":"String","legacy_summary_json":"String","composed_summary_json":"String"}],"completeness":[{"transaction_id":0,"transaction_uuid":"String","reporting_term":"String","finished_datetime":"0001-01-01T00:00:00.0000000","operation":"String","regent_id":0,"student_uuid":"String","student_name":"String","invoice_count":0,"invoice_net":0,"item_net":0,"gp_success_count":0,"gp_failure_count":0,"calculation_status":"String","calculation_findings":"String","status":"String","findings":"String","resolved_datetime":"0001-01-01T00:00:00.0000000","resolved_by_uuid":"String"}],"failures":[{"source":"String","reporting_term":"String","id":0,"timestamp":"0001-01-01T00:00:00.0000000","workflow":"String","regent_id":0,"transaction_id":0,"invoice_id":"String","gp_document_number":"String","amount":0,"error":"String"}],"drift":[{"transaction_id":0,"reporting_term":"String","regent_id":0,"workflow":"String","calculation_count":0,"first_calculation":"0001-01-01T00:00:00.0000000","final_calculation":"0001-01-01T00:00:00.0000000","changed":false,"persistence_status":"String","persistence_findings":"String","first_summary_json":"String","final_summary_json":"String","section_course_codes":{"0":"String"}}]}