Commit 0d3c7b1df3bf39352097362250b3e04ca6f3da95
1 parent
67a0e32e
20.07.16
Showing
1 changed file
with
16 additions
and
19 deletions
 
Show diff stats
common/modules/product/models/Category.php
| @@ -231,14 +231,7 @@ class Category extends \yii\db\ActiveRecord | @@ -231,14 +231,7 @@ class Category extends \yii\db\ActiveRecord | ||
| 231 | $query1 = (new Query()) | 231 | $query1 = (new Query()) | 
| 232 | ->distinct() | 232 | ->distinct() | 
| 233 | ->select([ | 233 | ->select([ | 
| 234 | - 'option_id', | ||
| 235 | - 'tax_option.*', | ||
| 236 | - 'tax_group.*', | ||
| 237 | - 'tax_option.alias as option_alias', | ||
| 238 | - 'tax_group.alias as group_alias', | ||
| 239 | - 'tax_value_string.value as value', | ||
| 240 | - 'tax_option.sort AS tax_option_sort', | ||
| 241 | - 'tax_group.sort AS tax_group_sort', | 234 | + 'option_id' | 
| 242 | ]) | 235 | ]) | 
| 243 | ->from('tax_option') | 236 | ->from('tax_option') | 
| 244 | ->innerJoin('product_variant_option', 'tax_option.tax_option_id = product_variant_option.option_id') | 237 | ->innerJoin('product_variant_option', 'tax_option.tax_option_id = product_variant_option.option_id') | 
| @@ -253,14 +246,7 @@ class Category extends \yii\db\ActiveRecord | @@ -253,14 +246,7 @@ class Category extends \yii\db\ActiveRecord | ||
| 253 | $query2 = (new Query()) | 246 | $query2 = (new Query()) | 
| 254 | ->distinct() | 247 | ->distinct() | 
| 255 | ->select([ | 248 | ->select([ | 
| 256 | - 'option_id', | ||
| 257 | - 'tax_option.*', | ||
| 258 | - 'tax_group.*', | ||
| 259 | - 'tax_option.alias as option_alias', | ||
| 260 | - 'tax_group.alias as group_alias', | ||
| 261 | - 'tax_value_string.value as value', | ||
| 262 | - 'tax_option.sort AS tax_option_sort', | ||
| 263 | - 'tax_group.sort AS tax_group_sort', | 249 | + 'option_id' | 
| 264 | ]) | 250 | ]) | 
| 265 | ->from('tax_option') | 251 | ->from('tax_option') | 
| 266 | ->innerJoin('product_option', 'tax_option.tax_option_id = product_option.option_id') | 252 | ->innerJoin('product_option', 'tax_option.tax_option_id = product_option.option_id') | 
| @@ -272,9 +258,20 @@ class Category extends \yii\db\ActiveRecord | @@ -272,9 +258,20 @@ class Category extends \yii\db\ActiveRecord | ||
| 272 | ->where(['product_category.category_id' => $this->category_id, 'tax_group.is_filter' => TRUE]) | 258 | ->where(['product_category.category_id' => $this->category_id, 'tax_group.is_filter' => TRUE]) | 
| 273 | ->andWhere(['!=', 'product_variant.stock', 0]); | 259 | ->andWhere(['!=', 'product_variant.stock', 0]); | 
| 274 | $query3 = (new Query()) | 260 | $query3 = (new Query()) | 
| 275 | - ->select('*') | ||
| 276 | - ->from(['subquery' => $query1->union($query2)]) | ||
| 277 | - ->orderBy('tax_group_sort, tax_option_sort'); | 261 | + ->select([ | 
| 262 | + 'tax_option.*', | ||
| 263 | + 'tax_group.*', | ||
| 264 | + 'tax_option.alias as option_alias', | ||
| 265 | + 'tax_group.alias as group_alias', | ||
| 266 | + 'tax_value_string.value as value', | ||
| 267 | + 'tax_option.sort AS tax_option_sort', | ||
| 268 | + 'tax_group.sort AS tax_group_sort', | ||
| 269 | + ]) | ||
| 270 | + ->from(['tax_option' ]) | ||
| 271 | + ->where(['tax_option.tax_option_id'=>$query1->union($query2)]) | ||
| 272 | + ->innerJoin('tax_group','tax_group.tax_group_id = tax_option.tax_group_id') | ||
| 273 | + ->innerJoin('tax_value_string', 'tax_value_string.tax_option_id = tax_option.tax_option_id') | ||
| 274 | + ->orderBy('tax_option.sort, tax_group.sort'); | ||
| 278 | return $query3; | 275 | return $query3; | 
| 279 | } | 276 | } | 
| 280 | 277 | 
