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"}