ReportsController
extends ApiController
in package
Class ApiBaseController.
Table of Contents
- $config : AirlayConfig
- $config : AirlayConfig
- $request : Request
- $user : UserEntity
- $status : StatusPage|null
- $tokenHandler : TokenHandler|null
- __destruct() : mixed
- afterExecuteRoute() : mixed
- beforeExecuteRoute() : mixed
- getImageReportAction() : string|false
- Download report by template.
- getReportByAllUsersAction() : string|false
- Get reports for all users with optional filter. Response have .xlsx file with report.
- getReportByErrorsAction() : string|false
- Get report by objects with errors, return file .xlsx format.
- getReportByLayerAccessAction() : string
- Get report by layers access logs from start to end.
- getReportByMediaAction() : string
- Get report by objects media files, return file .zip format.
- getReportByMilestoneAction() : string|false
- Get report by milestone return file .docx format.
- getReportByTemplateAction() : string|false
- Download report by template.
- getReportByUsersDataSetsToolsAction() : string|false
- Get reports for one user, his changes in any time period, return file .xlsx format.
- getReportWithImageAction() : string|false
- Download report by template.
- indexAction() : mixed
- initialize() : void
- attachTmpFile() : Response
- firesAnRelationUpdateEvents() : void
- getId() : mixed
- getNormalizedUserId() : int|ObjectId
- getTranslator() : NativeArray
- getUserInfo() : UserEntity
- save() : string
- secureData() : mixed
- sendEmail() : mixed
- extractParams() : array<string|int, mixed>
- sendToQueue() : DownloadedFileEntity
Properties
$config
public
AirlayConfig
$config
$config
public
AirlayConfig
$config
$request
public
Request
$request
$user
public
UserEntity
$user
$status
protected
StatusPage|null
$status
$tokenHandler
protected
TokenHandler|null
$tokenHandler
Methods
__destruct()
public
__destruct() : mixed
Return values
mixed —afterExecuteRoute()
public
afterExecuteRoute(Dispatcher $dispatcher) : mixed
Parameters
- $dispatcher : Dispatcher
Return values
mixed —beforeExecuteRoute()
public
beforeExecuteRoute(Dispatcher $dispatcher) : mixed
Parameters
- $dispatcher : Dispatcher
Return values
mixed —getImageReportAction()
Download report by template.
public
getImageReportAction() : string|false
request([ 'method' => 'POST' 'url' => '/api/v4/reports/getImageReport' 'parameters' => [ [ 'name' => 'layerId', 'type' => 'objectId', 'description' => 'Layer id for get report' 'required' => true, ], [ 'name' => 'value', 'type' => 'string', 'description' => 'unique value of object' 'required' => true, ], [ 'name' => 'templateId', 'type' => 'ObjectId', 'required' => true, 'description' => 'template id' ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'description' => 'file name' ], [ 'name' => 'convertDocxToPdf', 'type' => 'bool', 'required' => false, 'description' => 'convert doc to pdf flag' ], [ 'name' => 'width', 'type' => 'int', 'required' => false, 'description' => 'image width' ], [ 'name' => 'height', 'type' => 'int', 'required' => false, 'description' => 'image height' ], [ 'name' => 'zoom', 'type' => 'int', 'required' => false, 'description' => 'image zoom' ], ]) response([ 'status' => 'OK', 'message' => string (s3 path) 'code' => 0 ]).
Tags
Return values
string|false —getReportByAllUsersAction()
Get reports for all users with optional filter. Response have .xlsx file with report.
public
getReportByAllUsersAction() : string|false
request([ 'method' => 'GET' 'url' => '/api/v4/reports/getReportByAllUsers' 'parameters' => [ [ 'name' => 'startDate', 'type' => 'absint', 'required' => false, 'value' => 0 ], [ 'name' => 'endDate', 'type' => 'absint', 'required' => false, 'value' => new Date() ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'description' => 'file name' ] ] ]) response([ 'status' => 'OK', 'message' => DownloadLogEntity 'code' => 0 ]).
Tags
Return values
string|false —getReportByErrorsAction()
Get report by objects with errors, return file .xlsx format.
public
getReportByErrorsAction() : string|false
request([ 'method' => 'GET' 'url' => '/api/v4/reports/getReportByErrors' 'parameters' => [ [ 'name' => 'dataSetIds', 'type' => 'arrayObjectId', 'required' => true, ], [ 'name' => 'filter', 'type' => 'string', 'required' => false, 'example' => '{{type}} = "ps" & {{GISUKLASS}} = 110 & {{GISPSTYPE}} = "PS" & {{pstat}} != "ПРСП"', ], [ 'name' => 'values', 'type' => 'any[]', 'required' => false, ], [ 'name' => 'startDate', 'type' => 'absint', 'required' => false, 'value' => 0 ], [ 'name' => 'endDate', 'type' => 'absint', 'required' => false, 'value' => new Date() ], [ 'name' => 'limit', 'type' => 'absint', 'required' => false, 'value' => 60000 ], [ 'name' => 'language', 'type' => 'string', 'required' => false, 'value' => en ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'description' => 'file name' ] ]) response([ 'status' => 'OK', 'message' => DownloadLogEntity 'code' => 0 ]).
NEVER DELETE THIS!!!
Tags
Return values
string|false —getReportByLayerAccessAction()
Get report by layers access logs from start to end.
public
getReportByLayerAccessAction() : string
request([ 'method' => 'GET' 'url' => '/api/v4/reports/getReportByLayerAccess' 'parameters' => [ [ 'name' => 'start', 'type' => 'int', 'required' => true, ], [ 'name' => 'end', 'type' => 'int', 'required' => false, 'default' => current time ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'default' => 'reportByLayerAccess' 'description' => 'file name' ], ]) response([ 'status' => 'OK', 'message' => DownloadLogEntity 'code' => 0 ]).
Return values
string —getReportByMediaAction()
Get report by objects media files, return file .zip format.
public
getReportByMediaAction() : string
request([ 'method' => 'GET' 'url' => '/api/v4/reports/getReportByMedia' 'parameters' => [ [ 'name' => 'dataSetIds', 'type' => 'arrayObjectId', 'required' => true, ], [ 'name' => 'filter', 'type' => 'string', 'required' => false, 'example' => '{{type}} = "ps" & {{GISUKLASS}} = 110 & {{GISPSTYPE}} = "PS" & {{pstat}} != "ПРСП"', ], [ 'name' => 'values', 'type' => 'any[]', 'required' => false, ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'description' => 'file name' ], [ 'name' => 'fileNameField', 'type' => 'string', 'required' => false, 'description' => 'field name of the object with the name of the files' ] ]) response([ 'status' => 'OK', 'message' => DownloadLogEntity 'code' => 0 ]).
Tags
Return values
string —getReportByMilestoneAction()
Get report by milestone return file .docx format.
public
getReportByMilestoneAction() : string|false
request([ 'method' => 'GET' 'url' => '/api/v4/reports/getReportByMilestone' 'parameters' => [ [ 'name' => 'milestoneId', 'type' => 'objectId', 'required' => true, ], [ 'name' => 'templateId', 'type' => 'objectId', 'required' => true ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'description' => 'file name' ] ] ]) response([ 'status' => 'OK', 'message' => DownloadLogEntity 'code' => 0 ]).
Tags
Return values
string|false —getReportByTemplateAction()
Download report by template.
public
getReportByTemplateAction() : string|false
request([ 'method' => 'POST' 'url' => '/api/v4/reports/getReportByTemplate' 'parameters' => [ [ 'name' => 'dataSetIds', 'type' => 'arrayObjectId', 'description' => 'data set id for get report' 'required' => true, ], [ 'name' => 'values', 'type' => 'any[]', 'description' => 'object ids or unique fields' 'required' => false, ], [ 'name' => 'startDate', 'type' => 'absint', 'required' => false, 'description' => 'start date' 'default' => 0 ], [ 'name' => 'endDate', 'type' => 'absint', 'required' => false, 'description' => 'end date' 'default' => new Date() ], [ 'name' => 'filter', 'type' => 'string', 'required' => false, 'description' => 'filter for get objects' 'default' => '' ], [ 'name' => 'templateId', 'type' => 'ObjectId', 'required' => true, 'description' => 'template id' ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'description' => 'file name' ], [ 'name' => 'convertDocxToPdf', 'type' => 'bool', 'required' => false, 'description' => 'convert doc to pdf flag' ], [ 'name' => 'image', 'type' => 'file', 'required' => false, 'description' => 'file for feature or individual data set' ], [ 'name' => 'timezoneOffset', 'type' => 'int', 'required' => false, 'description' => 'timezone offset from UTC to convert dates to' ] ]) response([ 'status' => 'OK', 'message' => DownloadLogEntity 'code' => 0 ]).
Tags
Return values
string|false —getReportByUsersDataSetsToolsAction()
Get reports for one user, his changes in any time period, return file .xlsx format.
public
getReportByUsersDataSetsToolsAction() : string|false
request([ 'method' => 'GET' 'url' => '/api/v4/reports/getReportByUsersDataSetsTools' 'parameters' => [ [ 'name' => 'usersIds', 'type' => 'ObjectId[]', 'required' => false ], [ 'name' => 'tools', 'type' => 'string[]', 'required' => false ], [ 'name' => 'dataSetsIds', 'type' => 'objectId[]', 'required' => false ], [ 'name' => 'startDate', 'type' => 'absint', 'required' => false, 'value' => 0 ], [ 'name' => 'endDate', 'type' => 'absint', 'required' => false, 'value' => new Date() ], [ 'name' => 'type', 'type' => 'string', 'required' => false, 'value' => 'xlsx' ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'description' => 'file name' ] ] ]) response([ 'status' => 'OK', 'message' => DownloadLogEntity 'code' => 0 ]).
Tags
Return values
string|false —getReportWithImageAction()
Download report by template.
public
getReportWithImageAction() : string|false
request([ 'method' => 'POST' 'url' => '/api/v4/reports/getReportWithImage' 'parameters' => [ [ 'name' => 'layerId', 'type' => 'objectId', 'description' => 'Layer id for get report' 'required' => true, ], [ 'name' => 'value', 'type' => 'string', 'description' => 'unique value of object' 'required' => true, ], [ 'name' => 'templateId', 'type' => 'ObjectId', 'required' => true, 'description' => 'template id' ], [ 'name' => 'filename', 'type' => 'string', 'required' => false, 'description' => 'file name' ], [ 'name' => 'convertDocxToPdf', 'type' => 'bool', 'required' => false, 'description' => 'convert doc to pdf flag' ] ]) response([ 'status' => 'OK', 'message' => DownloadLogEntity 'code' => 0 ]).
Tags
Return values
string|false —indexAction()
public
indexAction() : mixed
Return values
mixed —initialize()
public
initialize() : void
Return values
void —attachTmpFile()
protected
attachTmpFile(TmpFile $tmpFile) : Response
Parameters
- $tmpFile : TmpFile
Return values
Response —firesAnRelationUpdateEvents()
protected
firesAnRelationUpdateEvents(array<string|int, mixed> $relations, ObjectId $dataSetId[, DataSetLogEntity|null $log = null ]) : void
Parameters
- $relations : array<string|int, mixed>
- $dataSetId : ObjectId
- $log : DataSetLogEntity|null = null
Return values
void —getId()
protected
getId() : mixed
Return values
mixed —getNormalizedUserId()
protected
getNormalizedUserId() : int|ObjectId
Tags
Return values
int|ObjectId —getTranslator()
protected
getTranslator([string|null $language = null ]) : NativeArray
Parameters
- $language : string|null = null
Tags
Return values
NativeArray —getUserInfo()
protected
getUserInfo() : UserEntity
Tags
Return values
UserEntity —save()
protected
save(TmpFile $tmpFile, string $filename, string $format) : string
Parameters
- $tmpFile : TmpFile
- $filename : string
- $format : string
Return values
string —secureData()
protected
secureData(mixed $data) : mixed
Parameters
- $data : mixed
Return values
mixed —sendEmail()
protected
sendEmail(string $email, string $name, string $subject, string $body) : mixed
Parameters
- $email : string
- $name : string
- $subject : string
- $body : string
Return values
mixed —extractParams()
private
extractParams(array<string|int, mixed> $params) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed>
Return values
array<string|int, mixed> —sendToQueue()
private
sendToQueue(ReportInterface $report, string $filename, string $extension[, bool|null $convertDocxToPdf = false ]) : DownloadedFileEntity
Parameters
- $report : ReportInterface
- $filename : string
- $extension : string
- $convertDocxToPdf : bool|null = false