/** * * @param type $id * @return type */ public static function getName($id, $mode = 'name') { $good = \app\models\Goods::findOne($id); \app\models\GoodsT::$tabName = self::$goodTablePefix . $good->goods_type_type; $goodT = \app\models\GoodsT::findOne($id); // $arGoodsParamsNames = self::getGoodTypeParams($good->goods_type_type); $goodType = \app\models\GoodsType::findOne($good->goods_type_type); $arGoodsParamsNames = $goodType->getGoodsParamsNames()->orderBy('sort')->all(); $arParams = ['goodType' => $goodType->name]; foreach ($arGoodsParamsNames as $oParam) { $idParamVal = $goodT->{$oParam->id}; $oParamValue = \app\models\GoodsParams::findOne($idParamVal); $arParams[$oParam->id] = $oParamValue->public_value ? $oParamValue->public_value == \Yii::$app->params['emptyStringParam'] ? '' : $oParamValue->public_value : $oParamValue->value; } $tpl = $goodType->template_view; if ($mode == 'array') { return ['name' => self::fullName($arParams, $tpl), 'goodTipe' => $goodType, 'good' => $good, 'params' => $arGoodsParamsNames, 'values' => $arParams]; } return self::fullName($arParams, $tpl); }
/** * @return \yii\db\ActiveQuery */ public function getGoodsT() { \app\models\GoodsT::$tabName = 'goods_t_' . $this->goods_type_type; return \app\models\GoodsT::findOne($this->id); }