Cost units can be edited

This commit is contained in:
2026-02-08 20:06:38 +01:00
parent 6fc65e195c
commit bccfc11687
53 changed files with 2021 additions and 29 deletions

View File

@@ -0,0 +1,35 @@
<?php
namespace App\ValueObjects;
class Amount {
private string $currency;
private float $amount;
public static function fromString(string $amountString, string $currency = ' Euro') : Amount {
return new self(
(float)str_replace(',', '.', $amountString)
, $currency);
}
public function __construct(float $amount, string $currency) {
$this->currency = $currency;
$this->amount = $amount;
}
public function getAmount() : float {
return $this->amount;
}
public function getCurrency() : string {
return $this->currency;
}
public function toString() : string {
$value = number_format( round( $this->amount, 2 ), 2, ',', '.' );
return sprintf('%1$s %2$s', $value, $this->currency)
|> trim(...)
|> function (string $value) : string { return str_replace('.', ',', $value); };
}
}