<?php
/**
* The Amount Breakdown object.
*
* @package WooCommerce\PayPalCommerce\ApiClient\Entity
*/
declare (strict_types=1);
namespace WooCommerce\PayPalCommerce\ApiClient\Entity;
/**
* Class AmountBreakdown
*/
class AmountBreakdown
{
/**
* The item total.
*
* @var Money|null
*/
private $item_total;
/**
* The shipping.
*
* @var Money|null
*/
private $shipping;
/**
* The tax total.
*
* @var Money|null
*/
private $tax_total;
/**
* The handling.
*
* @var Money|null
*/
private $handling;
/**
* The insurance.
*
* @var Money|null
*/
private $insurance;
/**
* The shipping discount.
*
* @var Money|null
*/
private $shipping_discount;
/**
* The discount.
*
* @var Money|null
*/
private $discount;
/**
* AmountBreakdown constructor.
*
* @param Money|null $item_total The item total.
* @param Money|null $shipping The shipping.
* @param Money|null $tax_total The tax total.
* @param Money|null $handling The handling.
* @param Money|null $insurance The insurance.
* @param Money|null $shipping_discount The shipping discount.
* @param Money|null $discount The discount.
*/
public function __construct(?\WooCommerce\PayPalCommerce\ApiClient\Entity\Money $item_total = null, ?\WooCommerce\PayPalCommerce\ApiClient\Entity\Money $shipping = null, ?\WooCommerce\PayPalCommerce\ApiClient\Entity\Money $tax_total = null, ?\WooCommerce\PayPalCommerce\ApiClient\Entity\Money $handling = null, ?\WooCommerce\PayPalCommerce\ApiClient\Entity\Money $insurance = null, ?\WooCommerce\PayPalCommerce\ApiClient\Entity\Money $shipping_discount = null, ?\WooCommerce\PayPalCommerce\ApiClient\Entity\Money $discount = null)
{
$this->item_total = $item_total;
$this->shipping = $shipping;
$this->tax_total = $tax_total;
$this->handling = $handling;
$this->insurance = $insurance;
$this->shipping_discount = $shipping_discount;
$this->discount = $discount;
}
/**
* Returns the item total.
*
* @return Money|null
*/
public function item_total()
{
return $this->item_total;
}
/**
* Returns the shipping.
*
* @return Money|null
*/
public function shipping()
{
return $this->shipping;
}
/**
* Returns the tax total.
*
* @return Money|null
*/
public function tax_total()
{
return $this->tax_total;
}
/**
* Returns the handling.
*
* @return Money|null
*/
public function handling()
{
return $this->handling;
}
/**
* Returns the insurance.
*
* @return Money|null
*/
public function insurance()
{
return $this->insurance;
}
/**
* Returns the shipping discount.
*
* @return Money|null
*/
public function shipping_discount()
{
return $this->shipping_discount;
}
/**
* Returns the discount.
*
* @return Money|null
*/
public function discount()
{
return $this->discount;
}
/**
* Returns the object as array.
*
* @return array
*/
public function to_array()
{
$breakdown = array();
if ($this->item_total) {
$breakdown['item_total'] = $this->item_total->to_array();
}
if ($this->shipping) {
$breakdown['shipping'] = $this->shipping->to_array();
}
if ($this->tax_total) {
$breakdown['tax_total'] = $this->tax_total->to_array();
}
if ($this->handling) {
$breakdown['handling'] = $this->handling->to_array();
}
if ($this->insurance) {
$breakdown['insurance'] = $this->insurance->to_array();
}
if ($this->shipping_discount) {
$breakdown['shipping_discount'] = $this->shipping_discount->to_array();
}
if ($this->discount) {
$breakdown['discount'] = $this->discount->to_array();
}
return $breakdown;
}
}