PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.20
Booking for Appointments and Events Calendar – Amelia v1.2.20
2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / src / Domain / ValueObjects / DiscountFixedValue.php
ameliabooking / src / Domain / ValueObjects Last commit date
DateTime 3 years ago Number 3 years ago String 1 year ago BooleanValueObject.php 7 years ago Discount.php 7 years ago DiscountFixedValue.php 7 years ago DiscountPercentageValue.php 7 years ago Duration.php 7 years ago Gender.php 7 years ago GeoTag.php 7 years ago Json.php 7 years ago Picture.php 7 years ago PositiveDuration.php 7 years ago Priority.php 3 years ago Recurring.php 4 years ago
DiscountFixedValue.php
53 lines
1 <?php
2
3 namespace AmeliaBooking\Domain\ValueObjects;
4
5 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
6
7 /**
8 * Class DiscountFixedValue
9 *
10 * @package AmeliaBooking\Domain\ValueObjects
11 */
12 final class DiscountFixedValue
13 {
14 /**
15 * @var string
16 */
17 private $value;
18
19 /**
20 * DiscountFixedValue constructor.
21 *
22 * @param string $value
23 *
24 * @throws InvalidArgumentException
25 */
26 public function __construct($value)
27 {
28 if ($value === null) {
29 throw new InvalidArgumentException('Discount can\'t be empty');
30 }
31
32 if (filter_var($value, FILTER_VALIDATE_FLOAT) === false) {
33 throw new InvalidArgumentException("Discount \"{$value}\" must be float");
34 }
35
36 if ($value < 0) {
37 throw new InvalidArgumentException('Discount must be larger then or equal to 0');
38 }
39
40 $this->value = (float)$value;
41 }
42
43 /**
44 * Return the value from the value object
45 *
46 * @return string
47 */
48 public function getValue()
49 {
50 return $this->value;
51 }
52 }
53