/** * Handler for Good Movement created. * It used to update stock * @param \dee\base\Event $event */ public function movementRejected($event) { /* @var $model MGoodsMovement */ $model = $event->params[0]; if (!in_array($model->reff_type, $this->types)) { return; } $sales = MSales::findOne($model->reff_id); $salesItems = ArrayHelper::index($sales->items, 'product_id'); // change total qty for reff document /* @var $salesDtl \rest\models\sales\SalesDtl */ foreach ($model->items as $detail) { $salesDtl = $salesItems[$detail->product_id]; $salesDtl->total_release -= $detail->qty; $salesDtl->save(false); } }