Revision 3fbb200b
Von Sven Schöling vor fast 11 Jahren hinzugefügt
SL/Controller/CsvImport/Part.pm | ||
---|---|---|
234 | 234 |
sub handle_prices { |
235 | 235 |
my ($self, $entry) = @_; |
236 | 236 |
|
237 |
foreach my $column (qw(sellprice listprice lastcost)) { |
|
238 |
next unless $self->controller->headers->{used}->{ $column }; |
|
239 |
|
|
237 |
foreach my $column (qw(sellprice)) { |
|
238 |
my $object = $entry->{object_to_save} || $entry->{object}; |
|
240 | 239 |
my $adjustment = $self->settings->{sellprice_adjustment}; |
241 |
my $value = $entry->{object}->$column;
|
|
240 |
my $value = $object->$column;
|
|
242 | 241 |
|
243 | 242 |
$value = $self->settings->{sellprice_adjustment_type} eq 'percent' ? $value * (100 + $adjustment) / 100 : $value + $adjustment; |
244 |
$entry->{object}->$column($::form->round_amount($value, $self->settings->{sellprice_places}));
|
|
243 |
$object->$column($::form->round_amount($value, $self->settings->{sellprice_places}));
|
|
245 | 244 |
} |
246 | 245 |
} |
247 | 246 |
|
Auch abrufbar als: Unified diff
Warenimport: Preisaktualisierungen
3 Punkte:
- Preisupdates wurden auf dem falschen Objekt gemacht wenn die Ware schon
vorhanden war. Dadurch wurden die neuen Preise nicht
zurückgespeichert. Das ist jetzt behoben.
- Preisupdates wurden nicht vorgenommen, wenn der Name des Preises (z.B.
sellprice) nicht im Header vorhanden war. Wenn er vorhanden war, wurde
aber der neue absolute Preis gesetzt was prozentuale Updates kaputt
macht.
- Preisupdates wurden potenziell auf alles drei Preisen vorgenommen, was
nach dem zweiten Fix keinen Sinn macht. Jetzt nur noch Verkaufspreis.