Exemple #1
0
 public function getAllPrices()
 {
     if ($this->_prices) {
         return $this->_prices;
     }
     if ($this->id) {
         $id = $this->id;
     } else {
         $id = 0;
     }
     $this->_prices = Prices::find()->select('*')->rightJoin(PriceTypes::tableName() . ' as price_types', Prices::tableName() . '.price_type_id = price_types.id AND ' . Prices::tableName() . '.product_id =' . (int) $id)->where('price_types.status != :status', ['status' => PriceTypes::STATUS_INACTIVE])->orderBy('price_types.order')->all();
     /*        $this->_prices = PriceTypes::find()
               ->where(PriceTypes::tableName().'.status != :status', ['status'=>PriceTypes::STATUS_INACTIVE])
               ->orderBy('price_types.order')
               ->joinWith(['prices'=>function($query) use ($id) {
                   if($id){
                       return $query->where(Prices::tableName().'.product_id=:product_id', [':product_id' => $id]);
                   }
               }])->all();*/
     return $this->_prices;
 }