Revision eb974ef6
Von Bernd Bleßmann vor mehr als 6 Jahren hinzugefügt
SL/DB/Helper/FlattenToForm.pm | ||
---|---|---|
52 | 52 |
_copy($self->salesman, $form, 'salesman_', '', 0, map { $_->name } SL::DB::Employee->meta->columns) if _has($self, 'salesman_id'); |
53 | 53 |
_copy($self->acceptance_confirmed_by, $form, 'acceptance_confirmed_by_', '', 0, map { $_->name } SL::DB::Employee->meta->columns) if _has($self, 'acceptance_confirmed_by_id'); |
54 | 54 |
|
55 |
if (_has($self, 'employee_id')) { |
|
56 |
my $user = User->new(login => $self->employee->login); |
|
57 |
$form->{"employee_$_"} = $user->{$_} for qw(tel email fax); |
|
58 |
} |
|
55 |
_handle_user_data($self, $form); |
|
56 |
|
|
59 | 57 |
# company is employee and login independent |
60 | 58 |
$form->{"${_}_company"} = $::instance_conf->get_company for qw (employee salesman); |
61 | 59 |
|
... | ... | |
170 | 168 |
); |
171 | 169 |
} |
172 | 170 |
|
171 |
sub _handle_user_data { |
|
172 |
my ($self, $form) = @_; |
|
173 |
|
|
174 |
foreach my $type (qw(employee salesman)) { |
|
175 |
next if !_has($self, "${type}_id"); |
|
176 |
|
|
177 |
my $user = User->new(login => $self->$type->login); |
|
178 |
$form->{"${type}_$_"} = $user->{$_} for qw(tel email fax signature); |
|
179 |
|
|
180 |
if ($self->$type->deleted) { |
|
181 |
for my $key (grep { $_ =~ m{^deleted_} } SL::DB::Employee->meta->columns) { |
|
182 |
$key =~ s{^deleted_}{}; |
|
183 |
$form->{"${type}_${key}"} = $form->{"${type}_deleted_${key}"} |
|
184 |
} |
|
185 |
} |
|
186 |
|
|
187 |
} |
|
188 |
} |
|
189 |
|
|
173 | 190 |
1; |
Auch abrufbar als: Unified diff
FlattenToForm - Verkäufer-Daten und gelöschte Benutzer berücksichtigen.
Analog zur Behandlung der Benutzer-Daten, die nur in auth vorhanden sind,
auch die Verkäufer-Daten berücksichtigen.
Zudem Daten gelöschter Benutzer/Verkäufer, die der Beleg referenziert, zur
Verfügung stellen.
Das ganze in eine eigene Routine ausgelagert.