FeaturesController
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
- createAction() : string|false
- request([ 'method' => 'POST', 'url' => '/api/v4/features/create' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'feature', 'type' => 'json', 'required' => 'true' ] ]) response ([ 'status' = 200, 'message' = FeatureEntity, 'code' = 0 ])
- deleteAction() : string|false
- request([ 'method' => 'POST', 'url' => '/api/v4/features/delete' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'ids', 'type' => 'json', 'required' => 'true', 'description' => Features ids in json array ] ]) response ([ 'status' = 200, 'message' = 'OK', 'code' = 0 ])
- getAction() : string|false
- request([ 'method' => 'GET' | 'POST', 'url' => '/api/v4/features/get' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'id', 'type' => 'ObjectId', 'required' => 'false' ], [ 'name' => 'ids', 'type' => 'arrayObjectId', 'required' => 'false' ], [ 'name' => 'uniqueValues', 'type' => 'array', 'required' => 'false' ], [ 'name' => 'bbox', 'type' => 'json', 'required' => 'false' ], [ 'name' => 'filter', 'type' => 'string', 'required' => 'false' ], [ 'name' => 'skip', 'type' => 'int', 'required' => false, 'default' => 0 ], [ 'name' => 'limit', 'type' => 'int', 'required' => false, 'default' => 10000 ] ]) response ([ 'status' = 200, 'message' = FeatureEntity[], 'code' = 0 ])
- getMessagesAction() : string
- Get messages.
- indexAction() : mixed
- initialize() : void
- sendMessageAction() : string|false
- send push message request( 'method' => 'POST', 'url' => '/api/v4/features/sendMessage', 'params' => [ [ 'name' => 'deviceId', 'type' => 'string', 'description' => 'device id from device properties', 'required' => true ], [ 'name' => 'message', 'type' => 'string', 'description' => 'message', 'required' => true ] ] ) response( '200' => [ 'status' => 200, 'message' => ObjectId, 'code' => 0 ] )
- sendMessagesAction() : string|false
- send push messages to set of devices request( 'method' => 'POST', 'url' => '/api/v4/features/sendMessages', 'params' => [ [ 'name' => 'deviceIds', 'type' => 'json', 'description' => 'array devices id', 'required' => true ], [ 'name' => 'message', 'type' => 'string', 'description' => 'message', 'required' => true ] ] ) response( '200' => [ 'status' => 200, 'message' => ObjectId, 'code' => 0 ] )
- setMessageStatusAction() : string|false
- set message status request( 'method' => 'POST', 'url' => '/api/v4/features/setMessageStatus', 'params' => [ [ 'name' => 'messageStatuses', 'type' => 'array', 'required' => true 'description' => [ { 'id' => 'string' (objectId in string format), 'status' => 'string' ('delivered', 'read') } ... ]
- updateAction() : string|false
- request([ 'method' => 'POST', 'url' => '/api/v4/features/update' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'id', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'feature', 'type' => 'json', 'required' => 'true' ] ]) response ([ 'status' = 200, 'message' = FeatureEntity, 'code' = 0 ])
- updateManyAction() : string|false
- request([ 'method' => 'POST', 'url' => '/api/v4/features/updateMany' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'features', 'type' => 'json', 'required' => 'true' 'description' => [ 'featureArray', ..., 'featureArray' ] ] ]) response ([ 'status' = 200, 'message' = FeatureEntity[], 'code' = 0 ])
- attachTmpFile() : Response
- firesAnRelationUpdateEvents() : void
- getId() : mixed
- getNormalizedUserId() : int|ObjectId
- getTranslator() : NativeArray
- getUserInfo() : UserEntity
- secureData() : mixed
- sendEmail() : mixed
- findPolygonIntersections() : void
- updateCalculatedFields() : void
- updateFeature() : FeatureEntity
- validateSchemeFields() : void
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 —createAction()
request([ 'method' => 'POST', 'url' => '/api/v4/features/create' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'feature', 'type' => 'json', 'required' => 'true' ] ]) response ([ 'status' = 200, 'message' = FeatureEntity, 'code' = 0 ])
public
createAction() : string|false
Tags
Return values
string|false —deleteAction()
request([ 'method' => 'POST', 'url' => '/api/v4/features/delete' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'ids', 'type' => 'json', 'required' => 'true', 'description' => Features ids in json array ] ]) response ([ 'status' = 200, 'message' = 'OK', 'code' = 0 ])
public
deleteAction() : string|false
Tags
Return values
string|false —getAction()
request([ 'method' => 'GET' | 'POST', 'url' => '/api/v4/features/get' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'id', 'type' => 'ObjectId', 'required' => 'false' ], [ 'name' => 'ids', 'type' => 'arrayObjectId', 'required' => 'false' ], [ 'name' => 'uniqueValues', 'type' => 'array', 'required' => 'false' ], [ 'name' => 'bbox', 'type' => 'json', 'required' => 'false' ], [ 'name' => 'filter', 'type' => 'string', 'required' => 'false' ], [ 'name' => 'skip', 'type' => 'int', 'required' => false, 'default' => 0 ], [ 'name' => 'limit', 'type' => 'int', 'required' => false, 'default' => 10000 ] ]) response ([ 'status' = 200, 'message' = FeatureEntity[], 'code' = 0 ])
public
getAction() : string|false
Tags
Return values
string|false —getMessagesAction()
Get messages.
public
getMessagesAction() : string
request([ 'method' => 'GET', 'url' => '/api/v4/features/getMessages', 'params' => [ [ 'name' => 'skip', 'type' => 'int', 'required' => false, 'default => 0, 'description' => count objects to skip ], [ 'name' => 'limit', 'type' => 'int', 'required' => false, 'default => 100, 'description' => count objects to get ], [ 'name' => 'ids', 'type' => 'arrayObjectId', 'required' => false, 'default' => [], 'description' => object ids ] ] ]) response([ 'status' => 'OK', 'message' => FeatureEntity[], 'code' => 0 ])
Return values
string —indexAction()
public
indexAction() : mixed
Return values
mixed —initialize()
public
initialize() : void
Return values
void —sendMessageAction()
send push message request( 'method' => 'POST', 'url' => '/api/v4/features/sendMessage', 'params' => [ [ 'name' => 'deviceId', 'type' => 'string', 'description' => 'device id from device properties', 'required' => true ], [ 'name' => 'message', 'type' => 'string', 'description' => 'message', 'required' => true ] ] ) response( '200' => [ 'status' => 200, 'message' => ObjectId, 'code' => 0 ] )
public
sendMessageAction() : string|false
Tags
Return values
string|false —sendMessagesAction()
send push messages to set of devices request( 'method' => 'POST', 'url' => '/api/v4/features/sendMessages', 'params' => [ [ 'name' => 'deviceIds', 'type' => 'json', 'description' => 'array devices id', 'required' => true ], [ 'name' => 'message', 'type' => 'string', 'description' => 'message', 'required' => true ] ] ) response( '200' => [ 'status' => 200, 'message' => ObjectId, 'code' => 0 ] )
public
sendMessagesAction() : string|false
Tags
Return values
string|false —setMessageStatusAction()
set message status request( 'method' => 'POST', 'url' => '/api/v4/features/setMessageStatus', 'params' => [ [ 'name' => 'messageStatuses', 'type' => 'array', 'required' => true 'description' => [ { 'id' => 'string' (objectId in string format), 'status' => 'string' ('delivered', 'read') } ... ]
public
setMessageStatusAction() : string|false
] ] ) response( '200' => [ 'status' => 200, 'message' => 'OK', 'code' => 0 ] )
Tags
Return values
string|false —updateAction()
request([ 'method' => 'POST', 'url' => '/api/v4/features/update' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'id', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'feature', 'type' => 'json', 'required' => 'true' ] ]) response ([ 'status' = 200, 'message' = FeatureEntity, 'code' = 0 ])
public
updateAction() : string|false
Tags
Return values
string|false —updateManyAction()
request([ 'method' => 'POST', 'url' => '/api/v4/features/updateMany' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'features', 'type' => 'json', 'required' => 'true' 'description' => [ 'featureArray', ..., 'featureArray' ] ] ]) response ([ 'status' = 200, 'message' = FeatureEntity[], 'code' = 0 ])
public
updateManyAction() : string|false
Tags
Return values
string|false —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 —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 —findPolygonIntersections()
private
findPolygonIntersections(FeatureEntity $featureEntity, DataSetEntity $dataSet) : void
Parameters
- $featureEntity : FeatureEntity
- $dataSet : DataSetEntity
Return values
void —updateCalculatedFields()
private
updateCalculatedFields(FeatureEntity $feature, DataSetEntity $dataSet) : void
Parameters
- $feature : FeatureEntity
- $dataSet : DataSetEntity
Return values
void —updateFeature()
private
updateFeature(array<string|int, mixed> $feature, SimpleDataSet $dataSetCollection, DataSetEntity $dataSet) : FeatureEntity
Parameters
- $feature : array<string|int, mixed>
- $dataSetCollection : SimpleDataSet
- $dataSet : DataSetEntity
Tags
Return values
FeatureEntity —validateSchemeFields()
private
validateSchemeFields(FeatureEntity $feature, DataSetEntity $dataSet) : void
Parameters
- $feature : FeatureEntity
- $dataSet : DataSetEntity