ReportByObjects
extends Report
in package
Table of Contents
- VALUES_LIMIT = 10000
- XLSX_ROW_LIMIT = 50000
- $rowLimit : int
- $dataSetIds : array<string|int, mixed>
- $end : int
- $filter : string|null
- $organizationId : ObjectId
- $start : int
- $values : array<string|int, mixed>|null
- __construct() : mixed
- factory() : array<string|int, mixed>
- getDataFromDBByFilter() : array<string|int, mixed>
- setLimit() : void
- convertDataToRows() : array<string|int, mixed>
- createArchive() : TmpArchive
- createCsv() : string
- createHeaders() : array<string|int, mixed>
- createSpreadsheet() : Spreadsheet
- formatDate() : bool|int|float|string
- getCollection() : RelationsCollection|FeaturesCollection
- getDataFromDB() : array<string|int, mixed>
- Array of [ "_id" => ObjectId is DataSetLogId, "tool" => string, "time" => unix time, "objects" => string, "customer" => ['id' => ObjectId, 'name' => string] ]
- getDataSets() : array<string|int, DataSetEntity>
- isDateColumn() : bool
- saveXlsx() : string
- setDateFormatForRows() : void
- setStyleForSheet() : void
- getDataFromDBByValues() : array<string|int, mixed>
- setAutoSizeForAllColumns() : void
- setBorderForHeadersAndRows() : void
- setDefaultStyles() : void
- setTextFormatForHeaders() : void
Constants
VALUES_LIMIT
protected
mixed
VALUES_LIMIT
= 10000
XLSX_ROW_LIMIT
protected
mixed
XLSX_ROW_LIMIT
= 50000
Properties
$rowLimit
protected
int
$rowLimit
= 500000
$dataSetIds
private
array<string|int, mixed>
$dataSetIds
$end
private
int
$end
$filter
private
string|null
$filter
= null
$organizationId
private
ObjectId
$organizationId
$start
private
int
$start
$values
private
array<string|int, mixed>|null
$values
= null
Methods
__construct()
public
__construct(int $start, int $end, array<string|int, mixed> $dataSetIds, ObjectId $organizationId[, string|null $filter = null ][, array<string|int, mixed>|null $values = null ]) : mixed
Parameters
- $start : int
- $end : int
- $dataSetIds : array<string|int, mixed>
- $organizationId : ObjectId
- $filter : string|null = null
- $values : array<string|int, mixed>|null = null
Return values
mixed —factory()
public
factory() : array<string|int, mixed>
Return values
array<string|int, mixed> —getDataFromDBByFilter()
public
getDataFromDBByFilter(DataSetEntity $dataSet, array<string|int, mixed> $filter, int $limit) : array<string|int, mixed>
Parameters
- $dataSet : DataSetEntity
- $filter : array<string|int, mixed>
- $limit : int
Return values
array<string|int, mixed> —setLimit()
public
setLimit(int $limit) : void
Parameters
- $limit : int
Return values
void —convertDataToRows()
protected
convertDataToRows(array<string|int, mixed> $data) : array<string|int, mixed>
Parameters
- $data : array<string|int, mixed>
Return values
array<string|int, mixed> —createArchive()
protected
createArchive(array<string|int, mixed> $data, array<string|int, mixed> $headers) : TmpArchive
Parameters
- $data : array<string|int, mixed>
- $headers : array<string|int, mixed>
Return values
TmpArchive —createCsv()
protected
createCsv(array<string|int, mixed> $header, array<string|int, mixed> $rows) : string
Parameters
- $header : array<string|int, mixed>
- $rows : array<string|int, mixed>
Return values
string —createHeaders()
protected
createHeaders() : array<string|int, mixed>
Return values
array<string|int, mixed> —createSpreadsheet()
protected
createSpreadsheet(array<string|int, mixed> $headers, array<string|int, mixed> $rows) : Spreadsheet
Parameters
- $headers : array<string|int, mixed>
- $rows : array<string|int, mixed>
Return values
Spreadsheet —formatDate()
protected
formatDate(int $date, string $format) : bool|int|float|string
Parameters
- $date : int
- $format : string
Return values
bool|int|float|string —getCollection()
protected
getCollection(DataSetEntity $dataSet) : RelationsCollection|FeaturesCollection
Parameters
- $dataSet : DataSetEntity
Return values
RelationsCollection|FeaturesCollection —getDataFromDB()
Array of [ "_id" => ObjectId is DataSetLogId, "tool" => string, "time" => unix time, "objects" => string, "customer" => ['id' => ObjectId, 'name' => string] ]
protected
getDataFromDB() : array<string|int, mixed>
Return values
array<string|int, mixed> —getDataSets()
protected
getDataSets() : array<string|int, DataSetEntity>
Return values
array<string|int, DataSetEntity> —isDateColumn()
protected
isDateColumn(string $header) : bool
Parameters
- $header : string
Return values
bool —saveXlsx()
protected
saveXlsx(Spreadsheet $content, string $filename) : string
Parameters
- $content : Spreadsheet
- $filename : string
Return values
string —setDateFormatForRows()
protected
setDateFormatForRows(Worksheet $sheet, array<string|int, mixed> $headers, array<string|int, mixed> $rows) : void
Parameters
- $sheet : Worksheet
- $headers : array<string|int, mixed>
- $rows : array<string|int, mixed>
Return values
void —setStyleForSheet()
protected
setStyleForSheet(Worksheet $sheet, array<string|int, mixed> $headers, array<string|int, mixed> $rows) : void
Parameters
- $sheet : Worksheet
- $headers : array<string|int, mixed>
- $rows : array<string|int, mixed>
Return values
void —getDataFromDBByValues()
private
getDataFromDBByValues(DataSetEntity $dataSet, array<string|int, mixed> $values, int $limit) : array<string|int, mixed>
Parameters
- $dataSet : DataSetEntity
- $values : array<string|int, mixed>
- $limit : int
Return values
array<string|int, mixed> —setAutoSizeForAllColumns()
private
setAutoSizeForAllColumns(Worksheet $sheet, array<string|int, mixed> $headers) : void
Parameters
- $sheet : Worksheet
- $headers : array<string|int, mixed>
Return values
void —setBorderForHeadersAndRows()
private
setBorderForHeadersAndRows(Worksheet $sheet, array<string|int, mixed> $headers, array<string|int, mixed> $rows) : void
Parameters
- $sheet : Worksheet
- $headers : array<string|int, mixed>
- $rows : array<string|int, mixed>
Return values
void —setDefaultStyles()
private
setDefaultStyles(Spreadsheet $spreadsheet) : void
Parameters
- $spreadsheet : Spreadsheet
Return values
void —setTextFormatForHeaders()
private
setTextFormatForHeaders(Worksheet $sheet, array<string|int, mixed> $headers) : void
Parameters
- $sheet : Worksheet
- $headers : array<string|int, mixed>