/var/www/vhosts/nabawater/api/modules/v1/models
Edit: /var/www/vhosts/nabawater/api/modules/v1/models/ItemList.php (3868B)
function(self $model) {
$modelLang = ItemLang::findOne(['item_id' => $model->item_id, 'language_code' => Yii::$app->language]);
if($modelLang != null) {
return $modelLang->item_name !== null ? $modelLang->item_name : '';
}
return '';
},
'item_description' => function(self $model) {
$modelLang = ItemLang::findOne(['item_id' => $model->item_id, 'language_code' => Yii::$app->language]);
if($modelLang != null) {
return $modelLang->item_description !== null ? $modelLang->item_description : '';
}
return '';
},
'allergic_ingredients' => function(self $model) {
$modelLang = ItemLang::findOne(['item_id' => $model->item_id, 'language_code' => Yii::$app->language]);
if($modelLang != null) {
return $modelLang->allergic_ingredients !== null ? $modelLang->allergic_ingredients : '';
}
return '';
},
'is_recommended' => function(self $model) {
return $model->is_recommended !== null ? $model->is_recommended : 0;
},
'item_image_path' => function (self $model) {
$modelItemImg = $model->getItemImages()->all();
foreach ($modelItemImg as $img) {
$img['item_image_path'] = UploadHelper::getInstance()->get($img['item_image_path']);
}
return $modelItemImg;
},
'item_ingredient' => function(self $model){
return $model->getItemsIngredientGroup()->all();
},
'item_type' => function(self $model){
return $model->getItemType()->all();
},
'category_id'
];
}
/**
*
* @return array
*/
public function getItemImages()
{
return $this->hasMany(ItemImage::className(), ['item_id' => 'item_id'])
->where(['language_code' => Yii::$app->language]);
}
/**
*
* @return array
*/
public function getItemsIngredientGroup()
{
$model = ItemIngredientGroup::find()->alias('IIG')
->select(['IIG.*'])
->leftJoin(['IMG'=> ItemMappingGroup::tableName()],
'IMG.item_ingredient_group_id = IIG.item_ingredient_group_id')
->leftJoin(['IM' => ItemMapping::tableName()],
'IM.item_mapping_id = IMG.item_mapping_id')
->where([
'IM.item_id' => $this->item_id,
'IIG.item_ingredient_status' => Item::ACTIVE,
'IM.item_mapping_status' => ItemMapping::ACTIVE
]);
ItemIngredientGroup::selectTranslation($model);
return $model;
}
/**
*
* @return array
*/
public function getItemType()
{
$model = ItemType::find()->alias('IT')
->select(['IT.*'])
->leftJoin(['ITD' => ItemTypeDetails::tableName()],
'IT.item_type_id = ITD.item_type_id')
->where(['ITD.item_id' => $this->item_id]);
ItemType::selectTranslation($model);
return $model;
}
}