From: Sven Schöling Date: Sun, 6 Feb 2022 22:52:31 +0000 (+0100) Subject: DeliveryOrder: SL::Helper::Number::format_number_units entfernt X-Git-Tag: kivitendo-mebil_0.1-0~10^2~2^2~216^2~7 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=e366bbe7671bdfa25a76b36422a70a65b894db80;p=kivitendo-erp.git DeliveryOrder: SL::Helper::Number::format_number_units entfernt --- diff --git a/SL/Helper/Number.pm b/SL/Helper/Number.pm index 43b227819..39a69fc5f 100644 --- a/SL/Helper/Number.pm +++ b/SL/Helper/Number.pm @@ -10,7 +10,6 @@ our @EXPORT_OK = qw( _format_number _round_number _format_total _round_total _parse_number - _format_number_units ); our %EXPORT_TAGS = (ALL => \@EXPORT_OK); @@ -52,56 +51,6 @@ sub _format_number { $amount; } -sub _format_number_units { - my ($amount, $places, $unit_from, $unit_to, %params) = @_; - - my $all_units = $params{all_units} //= SL::DB::Manager::Unit->get_all; - - if (!$unit_from || !$unit_to) { - return _format_number($amount, $places, %params); - } - - $amount *= $unit_from->factor; - - # unline AM::convertible_uits, this one doesn't sort by default - my @conv_units = rev_nsort_by { $_->factor // 0 } @{ $unit_from->convertible_units($all_units) }; - - if (!scalar @conv_units) { - return _format_number($amount, $places, %params) . " " . $unit_to->name; - } - - my @values; - my $num; - - for my $unit (@conv_units) { - my $last = $unit->name eq $unit_to->name; - if (!$last) { - $num = int($amount / $unit->factor); - $amount -= $num * $unit->factor; - } - - if ($last ? $amount : $num) { - push @values, { - unit => $unit->name, - amount => $last ? $amount / $unit->factor : $num, - places => $last ? $places : 0 - }; - } - - last if $last; - } - - if (!@values) { - push @values, { "unit" => $unit_to->name, - "amount" => 0, - "places" => 0 }; - } - - return join " ", map { - _format_number($_->{amount}, $_->{places}, %params), $_->{unit} - } @values; -} - sub _round_number { my ($amount, $places, $adjust) = @_;