33 lines
740 B
PHP
33 lines
740 B
PHP
<?php
|
|
|
|
namespace App\Models\Ecommerce\Product\Order\Concerns;
|
|
|
|
use App\Models\Ecommerce\Product\Order\Shipping\OrderShipping;
|
|
|
|
trait HasShipping
|
|
{
|
|
/**
|
|
* Shipping price
|
|
*/
|
|
public function shippingPrice(): int
|
|
{
|
|
return intval($this->shipping_price) ?: OrderShipping::priceFor($this->shipping_method);
|
|
}
|
|
|
|
/**
|
|
* Formatted shipping method
|
|
*/
|
|
public function formattedShippingMethod(): string
|
|
{
|
|
return OrderShipping::formattedShippingMethod($this->shipping_method);
|
|
}
|
|
|
|
/**
|
|
* Full address for the order
|
|
*/
|
|
public function fullAddress(): string
|
|
{
|
|
return OrderShipping::fullAddress($this->region, $this->province_id, $this->customer_address);
|
|
}
|
|
}
|