/** * @param array $options Options that override defaults on [[Yii::createObject()]] * @throws \yii\base\InvalidConfigException * @return Calculation */ public function getCalculationModel($options = []) { if (!$this->_calculationModel instanceof Calculation) { $config = ['position' => $this]; if (is_string($this->_calculationModel)) { $config['class'] = $this->_calculationModel; } $this->_calculationModel = Yii::createObject(array_merge($config, $options)); } else { $this->_calculationModel->synchronize(); } return $this->_calculationModel; }
/** * @param $rows * @return \hipanel\modules\finance\models\Calculation[] */ private function createCalculations($rows) { $query = Calculation::find()->joinWith(['value'])->indexBy('calculation_id'); $query->prepare(); return $query->populate($rows); }