'array', ]; public function product_variation() { return $this->belongsTo(\App\ProductVariation::class); } public function product() { return $this->belongsTo(\App\Product::class, 'product_id'); } /** * Get the sell lines associated with the variation. */ public function sell_lines() { return $this->hasMany(\App\TransactionSellLine::class); } /** * Get the location wise details of the the variation. */ public function variation_location_details() { return $this->hasMany(\App\VariationLocationDetails::class); } /** * Get Selling price group prices. */ public function group_prices() { return $this->hasMany(\App\VariationGroupPrice::class, 'variation_id'); } public function media() { return $this->morphMany(\App\Media::class, 'model'); } public function getFullNameAttribute() { $name = $this->product->name; if ($this->product->type == 'variable') { $name .= ' - '.$this->product_variation->name.' - '.$this->name; } $name .= ' ('.$this->sub_sku.')'; return $name; } }