From 4fd34610df4eccdae61e6e30dbdfcb6268548452 Mon Sep 17 00:00:00 2001 From: vova Date: Wed, 17 Nov 2021 12:01:17 +0200 Subject: [PATCH] add tiles --- backend/views/objectkb/_form.php | 7 ++++++- common/models/Objectkb.php | 216 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------------------- common/models/Tile.php | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ common/models/TileLang.php | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ console/migrations/m211110_160643_add_price_column_to_object_table.php | 23 +++++++++++++++++++++++ 5 files changed, 278 insertions(+), 107 deletions(-) create mode 100644 common/models/Tile.php create mode 100644 common/models/TileLang.php create mode 100644 console/migrations/m211110_160643_add_price_column_to_object_table.php diff --git a/backend/views/objectkb/_form.php b/backend/views/objectkb/_form.php index 9a448f4..8f6aa02 100755 --- a/backend/views/objectkb/_form.php +++ b/backend/views/objectkb/_form.php @@ -57,7 +57,12 @@ field($model, 'sort') ->textInput() ?> - + field($model, 'invertor_power') + ->textInput() ?> + field($model, 'module_power') + ->textInput() ?> + field($model, 'price') + ->textInput() ?> field($model, 'image_mini_id') ->widget( ImageManagerInputWidget::className(), diff --git a/common/models/Objectkb.php b/common/models/Objectkb.php index 1e4bd5c..dcf44f6 100755 --- a/common/models/Objectkb.php +++ b/common/models/Objectkb.php @@ -1,121 +1,125 @@ [ + 'class' => LanguageBehavior::className(), + ], + ]; + } + /** - * Class Objectkb - * - * @package common\models - * @property \common\models\ObjectkbLang $lang - * + * @inheritdoc */ - class Objectkb extends ActiveRecord + public function rules() { - const TYPE_DEFAULT = 0; - const TYPE_COMPANY = 1; - const TYPE_PRIVATE = 2; - - /** - * @inheritdoc - */ - public static function tableName() - { - return 'object'; - } - - /** - * @inheritdoc - */ - public function behaviors() - { - return [ - 'language' => [ - 'class' => LanguageBehavior::className(), - ], - ]; - } - - /** - * @inheritdoc - */ - public function rules() - { - return [ - [ - [ - 'slider_id', - 'image_mini_id', - ], - 'required', - ], + return [ + [ [ - [ - 'slider_id', - 'sort', - 'type' - ], - 'integer', + 'slider_id', + 'image_mini_id', ], + 'required', + ], + [ [ - [ 'status' ], - 'boolean', + 'slider_id', + 'sort', + 'type', ], - [ - [ 'slider_id' ], - 'exist', - 'skipOnError' => true, - 'targetClass' => Slider::className(), - 'targetAttribute' => [ 'slider_id' => 'id' ], - ], - [ - [ 'image_mini_id' ], - 'exist', - 'skipOnError' => true, - 'targetClass' => Image::className(), - 'targetAttribute' => [ 'image_mini_id' => 'id' ], - ], - ]; - } + 'integer', + ], + [ + ['invertor_power', 'module_power', 'price'], + 'string', + 'max' => 255, + ], + [ + ['status'], + 'boolean', + ], + [ + ['slider_id'], + 'exist', + 'skipOnError' => true, + 'targetClass' => Slider::className(), + 'targetAttribute' => ['slider_id' => 'id'], + ], + [ + ['image_mini_id'], + 'exist', + 'skipOnError' => true, + 'targetClass' => Image::className(), + 'targetAttribute' => ['image_mini_id' => 'id'], + ], + ]; + } - /** - * @inheritdoc - */ - public function attributeLabels() - { - return [ - 'id' => Yii::t('core', 'ID'), - 'slider_id' => Yii::t('core', 'Slider ID'), - 'status' => Yii::t('core', 'Status'), - 'sort' => Yii::t('core', 'Sort'), - 'image_mini_id' => Yii::t('core', 'Image Mini'), - 'type' => 'Тип Объекта для главной' - ]; - } + /** + * @inheritdoc + */ + public function attributeLabels() + { + return [ + 'id' => Yii::t('core', 'ID'), + 'slider_id' => Yii::t('core', 'Slider ID'), + 'status' => Yii::t('core', 'Status'), + 'sort' => Yii::t('core', 'Sort'), + 'image_mini_id' => Yii::t('core', 'Image Mini'), + 'type' => 'Тип Объекта для главной', + ]; + } - /** - * @return \yii\db\ActiveQuery - */ - public function getImage() - { - return $this->hasOne(Image::className(), [ 'id' => 'image_mini_id' ]); - } + /** + * @return \yii\db\ActiveQuery + */ + public function getImage() + { + return $this->hasOne(Image::className(), ['id' => 'image_mini_id']); + } - /** - * @return \yii\db\ActiveQuery - */ - public function getSlider() - { - return $this->hasOne(Slider::className(), [ 'id' => 'slider_id' ]); - } - } \ No newline at end of file + /** + * @return \yii\db\ActiveQuery + */ + public function getSlider() + { + return $this->hasOne(Slider::className(), ['id' => 'slider_id']); + } +} \ No newline at end of file diff --git a/common/models/Tile.php b/common/models/Tile.php new file mode 100644 index 0000000..d115ad2 --- /dev/null +++ b/common/models/Tile.php @@ -0,0 +1,56 @@ + [ + 'class' => LanguageBehavior::className(), + ], + ]; + } + + public function rules() + { + return [ + [ + [ + 'image', + ], + 'required', + ], + [ + [ + 'image', + ], + 'string', + ], + [ + [ + 'status', + ], + 'boolean', + ], + [ + [ + 'sort', + ], + 'integer', + ], + ]; + } +} \ No newline at end of file diff --git a/common/models/TileLang.php b/common/models/TileLang.php new file mode 100644 index 0000000..3fe4f74 --- /dev/null +++ b/common/models/TileLang.php @@ -0,0 +1,83 @@ + 255, + ], + [ + [ 'language_id' ], + 'exist', + 'skipOnError' => true, + 'targetClass' => Language::className(), + 'targetAttribute' => [ 'language_id' => 'id' ], + ], + [ + [ 'slide_id' ], + 'exist', + 'skipOnError' => true, + 'targetClass' => Tile::className(), + 'targetAttribute' => [ 'tile_id' => 'id' ], + ], + ]; + } + + + /** + * @return \yii\db\ActiveQuery + */ + public function getLanguage() + { + return $this->hasOne(Language::className(), [ 'id' => 'language_id' ]); + } + + /** + * @return \yii\db\ActiveQuery + */ + public function getTile() + { + return $this->hasOne(Tile::className(), [ 'id' => 'tile_id' ]); + } +} \ No newline at end of file diff --git a/console/migrations/m211110_160643_add_price_column_to_object_table.php b/console/migrations/m211110_160643_add_price_column_to_object_table.php new file mode 100644 index 0000000..95b5a16 --- /dev/null +++ b/console/migrations/m211110_160643_add_price_column_to_object_table.php @@ -0,0 +1,23 @@ +addColumn('object', 'price', $this->string()); + $this->addColumn('object', 'module_power', $this->string()); + $this->addColumn('object', 'invertor_power', $this->string()); + } + + public function down() + { + $this->dropColumn('object', 'price'); + $this->dropColumn('object', 'module_power'); + $this->dropColumn('object', 'invertor_power'); + } +} -- libgit2 0.21.4