Revision 116b3cee
Von Bernd Bleßmann vor mehr als 1 Jahr hinzugefügt
| SL/Controller/Order.pm | ||
|---|---|---|
|
use SL::DB::Language;
|
||
|
use SL::DB::Reclamation;
|
||
|
use SL::DB::RecordLink;
|
||
|
use SL::DB::RequirementSpec;
|
||
|
use SL::DB::Shipto;
|
||
|
use SL::DB::Translation;
|
||
|
use SL::DB::ValidityToken;
|
||
| ... | ... | |
|
delete_custom_shipto => $self->is_custom_shipto_to_delete || $self->order->custom_shipto->is_empty,
|
||
|
items_to_delete => $items_to_delete,
|
||
|
history => { snumbers => $self->get_history_snumbers() },
|
||
|
link_requirement_specs_linking_to_created_from_objects => \@converted_from_oe_ids,
|
||
|
set_project_in_linked_requirement_specs => 1,
|
||
|
);
|
||
|
|
||
|
if ($is_new && $self->order->is_sales) {
|
||
| ... | ... | |
|
return @errors;
|
||
|
}
|
||
|
|
||
|
sub link_requirement_specs_linking_to_created_from_objects {
|
||
|
my ($self, @converted_from_oe_ids) = @_;
|
||
|
|
||
|
return unless @converted_from_oe_ids;
|
||
|
|
||
|
my $rs_orders = SL::DB::Manager::RequirementSpecOrder->get_all(where => [ order_id => \@converted_from_oe_ids ]);
|
||
|
foreach my $rs_order (@{ $rs_orders }) {
|
||
|
SL::DB::RequirementSpecOrder->new(
|
||
|
order_id => $self->order->id,
|
||
|
requirement_spec_id => $rs_order->requirement_spec_id,
|
||
|
version_id => $rs_order->version_id,
|
||
|
)->save;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
sub set_project_in_linked_requirement_specs {
|
||
|
my ($self) = @_;
|
||
|
|
||
|
my $rs_orders = SL::DB::Manager::RequirementSpecOrder->get_all(where => [ order_id => $self->order->id ]);
|
||
|
foreach my $rs_order (@{ $rs_orders }) {
|
||
|
next if $rs_order->requirement_spec->project_id == $self->order->globalproject_id;
|
||
|
|
||
|
$rs_order->requirement_spec->update_attributes(project_id => $self->order->globalproject_id);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
1;
|
||
|
|
||
|
__END__
|
||
Auch abrufbar als: Unified diff
Order-Controller: Pflichtenheft: Verknüpfungen und Projekt setzen
über Model::Record