PHP Class yii2tech\balance\ManagerMongoDb

This storage requires yiisoft/yii2-mongodb extension installed. Configuration example: php return [ 'components' => [ 'balanceManager' => [ 'class' => 'yii2tech\balance\ManagerMongoDb', 'accountCollection' => 'BalanceAccount', 'transactionCollection' => 'BalanceTransaction', 'accountBalanceAttribute' => 'balance', 'extraAccountLinkAttribute' => 'extraAccountId', ], ], ... ]; Since MongoDB is schema-less this manager allows to save any transaction data as plain record attribute, which will be searchable. However MongoDB does not support transactions, thus usage of this manager may be risk prone.
See also: Manager
Since: 1.0
Author: Paul Klimov ([email protected])
Inheritance: extends Manager
Afficher le fichier Open project: yii2tech/balance

Méthodes publiques

Свойство Type Description
$accountCollection name of the MongoDB collection, which should store account records.
$db the MongoDB connection object or the application component ID of the MongoDB connection. After the ManagerMongoDb object is created, if you want to change this property, you should only assign it with a MongoDB connection object.
$transactionCollection name of the MongoDB collection, which should store transaction records.

Méthodes publiques

Méthode Description
calculateBalance ( $account )
init ( )

Méthodes protégées

Méthode Description
createAccount ( $attributes )
createTransaction ( $attributes )
findAccountId ( $attributes )
findTransaction ( $id )
incrementAccountBalance ( $accountId, $amount )

Method Details

calculateBalance() public méthode

public calculateBalance ( $account )

createAccount() protected méthode

protected createAccount ( $attributes )

createTransaction() protected méthode

protected createTransaction ( $attributes )

findAccountId() protected méthode

protected findAccountId ( $attributes )

findTransaction() protected méthode

protected findTransaction ( $id )

incrementAccountBalance() protected méthode

protected incrementAccountBalance ( $accountId, $amount )

init() public méthode

public init ( )

Property Details

$accountCollection public_oe property

name of the MongoDB collection, which should store account records.
public $accountCollection

$db public_oe property

the MongoDB connection object or the application component ID of the MongoDB connection. After the ManagerMongoDb object is created, if you want to change this property, you should only assign it with a MongoDB connection object.
public $db

$transactionCollection public_oe property

name of the MongoDB collection, which should store transaction records.
public $transactionCollection