Reporting Services

<back to all web services

ReconTotalSummary

Requires Authentication
The following routes are available for this service:
All Verbs/Recon
<?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 ReconSummary implements JsonSerializable
{
    public function __construct(
        /** @var DateTime */
        public DateTime $bizDate=new DateTime(),
        /** @var string|null */
        public ?string $computerName=null,
        /** @var string|null */
        public ?string $serialNumber=null,
        /** @var string|null */
        public ?string $transactionType=null,
        /** @var float */
        public float $amount=0.0,
        /** @var float */
        public float $debit=0.0,
        /** @var float */
        public float $amex=0.0,
        /** @var float */
        public float $noAmex=0.0,
        /** @var float */
        public float $debitCount=0.0,
        /** @var float */
        public float $amexCount=0.0,
        /** @var float */
        public float $noAmexCount=0.0,
        /** @var string|null */
        public ?string $locationId=null,
        /** @var string|null */
        public ?string $locationName=null,
        /** @var float|null */
        public ?float $reconAmt=null,
        /** @var string|null */
        public ?string $notes=null,
        /** @var string|null */
        public ?string $_id=null,
        /** @var bool|null */
        public ?bool $inMongo=null,
        /** @var string|null */
        public ?string $route=null,
        /** @var int|null */
        public ?int $uniqueTransID=null,
        /** @var bool|null */
        public ?bool $missingTransaction=null,
        /** @var int|null */
        public ?int $totalCount=null,
        /** @var int|null */
        public ?int $maxUniqueTransID=null,
        /** @var DateTime|null */
        public ?DateTime $computerDateTime=null,
        /** @var DateTime|null */
        public ?DateTime $terminalDateTime=null,
        /** @var int|null */
        public ?int $compTermMinDiff=null,
        /** @var DateTime|null */
        public ?DateTime $depDate=null,
        /** @var string|null */
        public ?string $cipServerTrans=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['bizDate'])) $this->bizDate = JsonConverters::from('DateTime', $o['bizDate']);
        if (isset($o['computerName'])) $this->computerName = $o['computerName'];
        if (isset($o['serialNumber'])) $this->serialNumber = $o['serialNumber'];
        if (isset($o['transactionType'])) $this->transactionType = $o['transactionType'];
        if (isset($o['amount'])) $this->amount = $o['amount'];
        if (isset($o['debit'])) $this->debit = $o['debit'];
        if (isset($o['amex'])) $this->amex = $o['amex'];
        if (isset($o['noAmex'])) $this->noAmex = $o['noAmex'];
        if (isset($o['debitCount'])) $this->debitCount = $o['debitCount'];
        if (isset($o['amexCount'])) $this->amexCount = $o['amexCount'];
        if (isset($o['noAmexCount'])) $this->noAmexCount = $o['noAmexCount'];
        if (isset($o['locationId'])) $this->locationId = $o['locationId'];
        if (isset($o['locationName'])) $this->locationName = $o['locationName'];
        if (isset($o['reconAmt'])) $this->reconAmt = $o['reconAmt'];
        if (isset($o['notes'])) $this->notes = $o['notes'];
        if (isset($o['_id'])) $this->_id = $o['_id'];
        if (isset($o['inMongo'])) $this->inMongo = $o['inMongo'];
        if (isset($o['route'])) $this->route = $o['route'];
        if (isset($o['uniqueTransID'])) $this->uniqueTransID = $o['uniqueTransID'];
        if (isset($o['missingTransaction'])) $this->missingTransaction = $o['missingTransaction'];
        if (isset($o['totalCount'])) $this->totalCount = $o['totalCount'];
        if (isset($o['maxUniqueTransID'])) $this->maxUniqueTransID = $o['maxUniqueTransID'];
        if (isset($o['computerDateTime'])) $this->computerDateTime = JsonConverters::from('DateTime', $o['computerDateTime']);
        if (isset($o['terminalDateTime'])) $this->terminalDateTime = JsonConverters::from('DateTime', $o['terminalDateTime']);
        if (isset($o['compTermMinDiff'])) $this->compTermMinDiff = $o['compTermMinDiff'];
        if (isset($o['depDate'])) $this->depDate = JsonConverters::from('DateTime', $o['depDate']);
        if (isset($o['cipServerTrans'])) $this->cipServerTrans = $o['cipServerTrans'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->bizDate)) $o['bizDate'] = JsonConverters::to('DateTime', $this->bizDate);
        if (isset($this->computerName)) $o['computerName'] = $this->computerName;
        if (isset($this->serialNumber)) $o['serialNumber'] = $this->serialNumber;
        if (isset($this->transactionType)) $o['transactionType'] = $this->transactionType;
        if (isset($this->amount)) $o['amount'] = $this->amount;
        if (isset($this->debit)) $o['debit'] = $this->debit;
        if (isset($this->amex)) $o['amex'] = $this->amex;
        if (isset($this->noAmex)) $o['noAmex'] = $this->noAmex;
        if (isset($this->debitCount)) $o['debitCount'] = $this->debitCount;
        if (isset($this->amexCount)) $o['amexCount'] = $this->amexCount;
        if (isset($this->noAmexCount)) $o['noAmexCount'] = $this->noAmexCount;
        if (isset($this->locationId)) $o['locationId'] = $this->locationId;
        if (isset($this->locationName)) $o['locationName'] = $this->locationName;
        if (isset($this->reconAmt)) $o['reconAmt'] = $this->reconAmt;
        if (isset($this->notes)) $o['notes'] = $this->notes;
        if (isset($this->_id)) $o['_id'] = $this->_id;
        if (isset($this->inMongo)) $o['inMongo'] = $this->inMongo;
        if (isset($this->route)) $o['route'] = $this->route;
        if (isset($this->uniqueTransID)) $o['uniqueTransID'] = $this->uniqueTransID;
        if (isset($this->missingTransaction)) $o['missingTransaction'] = $this->missingTransaction;
        if (isset($this->totalCount)) $o['totalCount'] = $this->totalCount;
        if (isset($this->maxUniqueTransID)) $o['maxUniqueTransID'] = $this->maxUniqueTransID;
        if (isset($this->computerDateTime)) $o['computerDateTime'] = JsonConverters::to('DateTime', $this->computerDateTime);
        if (isset($this->terminalDateTime)) $o['terminalDateTime'] = JsonConverters::to('DateTime', $this->terminalDateTime);
        if (isset($this->compTermMinDiff)) $o['compTermMinDiff'] = $this->compTermMinDiff;
        if (isset($this->depDate)) $o['depDate'] = JsonConverters::to('DateTime', $this->depDate);
        if (isset($this->cipServerTrans)) $o['cipServerTrans'] = $this->cipServerTrans;
        return empty($o) ? new class(){} : $o;
    }
}

class ReconSummaryDate implements JsonSerializable
{
    public function __construct(
        /** @var DateTime */
        public DateTime $bizDate=new DateTime(),
        /** @var float */
        public float $subTotal=0.0,
        /** @var float */
        public float $debitTotal=0.0,
        /** @var float */
        public float $amexTotal=0.0,
        /** @var float */
        public float $noAmexTotal=0.0,
        /** @var int */
        public int $debitCount=0,
        /** @var int */
        public int $amexCount=0,
        /** @var int */
        public int $noAmexCount=0,
        /** @var array<ReconSummary>|null */
        public ?array $reconSummary=null,
        /** @var DateTime|null */
        public ?DateTime $depDate=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['bizDate'])) $this->bizDate = JsonConverters::from('DateTime', $o['bizDate']);
        if (isset($o['subTotal'])) $this->subTotal = $o['subTotal'];
        if (isset($o['debitTotal'])) $this->debitTotal = $o['debitTotal'];
        if (isset($o['amexTotal'])) $this->amexTotal = $o['amexTotal'];
        if (isset($o['noAmexTotal'])) $this->noAmexTotal = $o['noAmexTotal'];
        if (isset($o['debitCount'])) $this->debitCount = $o['debitCount'];
        if (isset($o['amexCount'])) $this->amexCount = $o['amexCount'];
        if (isset($o['noAmexCount'])) $this->noAmexCount = $o['noAmexCount'];
        if (isset($o['reconSummary'])) $this->reconSummary = JsonConverters::fromArray('ReconSummary', $o['reconSummary']);
        if (isset($o['depDate'])) $this->depDate = JsonConverters::from('DateTime', $o['depDate']);
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->bizDate)) $o['bizDate'] = JsonConverters::to('DateTime', $this->bizDate);
        if (isset($this->subTotal)) $o['subTotal'] = $this->subTotal;
        if (isset($this->debitTotal)) $o['debitTotal'] = $this->debitTotal;
        if (isset($this->amexTotal)) $o['amexTotal'] = $this->amexTotal;
        if (isset($this->noAmexTotal)) $o['noAmexTotal'] = $this->noAmexTotal;
        if (isset($this->debitCount)) $o['debitCount'] = $this->debitCount;
        if (isset($this->amexCount)) $o['amexCount'] = $this->amexCount;
        if (isset($this->noAmexCount)) $o['noAmexCount'] = $this->noAmexCount;
        if (isset($this->reconSummary)) $o['reconSummary'] = JsonConverters::toArray('ReconSummary', $this->reconSummary);
        if (isset($this->depDate)) $o['depDate'] = JsonConverters::to('DateTime', $this->depDate);
        return empty($o) ? new class(){} : $o;
    }
}

class ReconTotalSummary implements JsonSerializable
{
    public function __construct(
        /** @var array<ReconSummaryDate>|null */
        public ?array $reconSummaryDate=null,
        /** @var string|null */
        public ?string $lid=null,
        /** @var string|null */
        public ?string $locationName=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['reconSummaryDate'])) $this->reconSummaryDate = JsonConverters::fromArray('ReconSummaryDate', $o['reconSummaryDate']);
        if (isset($o['lid'])) $this->lid = $o['lid'];
        if (isset($o['locationName'])) $this->locationName = $o['locationName'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->reconSummaryDate)) $o['reconSummaryDate'] = JsonConverters::toArray('ReconSummaryDate', $this->reconSummaryDate);
        if (isset($this->lid)) $o['lid'] = $this->lid;
        if (isset($this->locationName)) $o['locationName'] = $this->locationName;
        return empty($o) ? new class(){} : $o;
    }
}

PHP ReconTotalSummary DTOs

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

HTTP + OTHER

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

POST /Recon HTTP/1.1 
Host: cip-reporting-dev.chargeitpro.com 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"lid":"String","locationName":"String"}