kivitendo/SL/PriceSource/Price.pm @ 2bdd0bc5
eebe8e90 | Sven Schöling | package SL::PriceSource::Price;
|
||
use strict;
|
||||
use parent 'SL::DB::Object';
|
||||
use Rose::Object::MakeMethods::Generic (
|
||||
0409db7c | Sven Schöling | scalar => [ qw(price description spec price_source) ],
|
||
eebe8e90 | Sven Schöling | array => [ qw(depends_on) ]
|
||
);
|
||||
df1b03d5 | Sven Schöling | use SL::DB::Helper::Attr;
|
||
SL::DB::Helper::Attr::make(__PACKAGE__,
|
||||
price => 'numeric(15,5)',
|
||||
);
|
||||
0409db7c | Sven Schöling | sub source {
|
||
$_[0]->price_source
|
||||
? $_[0]->price_source->name . '/' . $_[0]->spec
|
||||
: '';
|
||||
}
|
||||
eebe8e90 | Sven Schöling | sub full_description {
|
||
my ($self) = @_;
|
||||
$self->price_source
|
||||
? $self->price_source->description . ': ' . $self->description
|
||||
: $self->description
|
||||
}
|
||||
df1b03d5 | Sven Schöling | sub to_str {
|
||
"source: @{[ $_[0]->source ]}, price: @{[ $_[0]->price]}, description: @{[ $_[0]->description ]}"
|
||||
}
|
||||
eebe8e90 | Sven Schöling | 1;
|