- $self->price_or_discount ? $self->price(undef) : $self->discount(undef);
- $self->price_or_discount ? $self->discount_as_number(@slurp) : $self->price_as_number(@slurp);
+ if ($type == SL::DB::Manager::PriceRule::PRICE_NEW()) {
+ return $self->price_as_number(@slurp)
+ } elsif ($type == SL::DB::Manager::PriceRule::PRICE_REDUCED_MASTER_DATA()) {
+ return $self->reduction_as_number(@slurp);
+ } elsif ($type == SL::DB::Manager::PriceRule::PRICE_DISCOUNT()) {
+ return $self->discount_as_number(@slurp)
+ } else {
+ die 'unknown price_or_discount';
+ }