public static function initialize(Config $config) { ItemTrait::initialize($config); InheritedTrait::initialize($config); TimestampsTrait::initialize($config); $config->addRels([new Rel\BelongsTo('purchase', $config, Purchase::getRepo()), new Rel\BelongsTo('storePurchase', $config, StorePurchase::getRepo())]); }
public static function initialize(Config $config) { ValueTrait::initialize($config); TransferTrait::initialize($config); TimestampsTrait::initialize($config); $config->addRels([new Rel\BelongsTo('storePurchase', $config, StorePurchase::getRepo())])->addAsserts([new Assert\GreaterThan('value', 0), new Assert\Callback('value', function ($refund) { return $refund->getValue()->lessThanOrEqual($refund->getStorePurchase()->getRemainingValue()); }, ':name is more than the remaining value')]); }
public static function initialize(Config $config) { TransferTrait::initialize($config); ItemGroupTrait::initialize($config); TimestampsTrait::initialize($config); RandomKeyTrait::initialize($config); CurrencyTrait::initialize($config); $config->setTable('Purchase')->addRels([new Rel\HasMany('items', $config, PurchaseItem::getRepo(), ['inverseOf' => 'purchase']), new Rel\HasMany('storePurchases', $config, StorePurchase::getRepo(), ['inverseOf' => 'purchase']), new Rel\BelongsTo('billing', $config, Address::getRepo())]); }
/** * @covers ::initialize */ public function testInitialize() { $storePurchase = StorePurchase::getRepo(); $store = $storePurchase->getRelOrError('store'); $this->assertEquals('CL\\Purchases\\Store', $store->getRepo()->getModelClass()); $purchase = $storePurchase->getRelOrError('purchase'); $this->assertEquals('CL\\Purchases\\Purchase', $purchase->getRepo()->getModelClass()); $items = $storePurchase->getRelOrError('items'); $this->assertEquals('CL\\Purchases\\PurchaseItem', $items->getRepo()->getModelClass()); }
/** * @covers ::getStorePurchases */ public function testStorePurchases() { $store = new Store(); $items = $store->getStorePurchases(); $this->assertEquals(StorePurchase::getRepo(), $items->getRel()->getRepo()); }
public static function initialize(Config $config) { SoftDeleteTrait::initialize($config); $config->addRels([new Rel\HasMany('products', $config, Product::getRepo(), ['inverseOf' => 'store']), new Rel\HasMany('storePurchases', $config, StorePurchase::getRepo(), ['inverseOf' => 'store'])])->addAsserts([new Assert\Present('name'), new Assert\LengthLessThan('name', 150)]); }