Revision bebdc2ce
Von Moritz Bunkus vor etwa 3 Jahren hinzugefügt
SL/Controller/Order.pm | ||
---|---|---|
1702 | 1702 |
$self->link_requirement_specs_linking_to_created_from_objects(@converted_from_oe_ids); |
1703 | 1703 |
} |
1704 | 1704 |
|
1705 |
$self->set_project_in_linked_requirement_specs if $self->order->globalproject_id; |
|
1706 |
|
|
1705 | 1707 |
$self->save_history('SAVED'); |
1706 | 1708 |
|
1707 | 1709 |
1; |
... | ... | |
2328 | 2330 |
} |
2329 | 2331 |
} |
2330 | 2332 |
|
2333 |
sub set_project_in_linked_requirement_specs { |
|
2334 |
my ($self) = @_; |
|
2335 |
|
|
2336 |
my $rs_orders = SL::DB::Manager::RequirementSpecOrder->get_all(where => [ order_id => $self->order->id ]); |
|
2337 |
foreach my $rs_order (@{ $rs_orders }) { |
|
2338 |
next if $rs_order->requirement_spec->project_id == $self->order->globalproject_id; |
|
2339 |
|
|
2340 |
$rs_order->requirement_spec->update_attributes(project_id => $self->order->globalproject_id); |
|
2341 |
} |
|
2342 |
} |
|
2343 |
|
|
2331 | 2344 |
1; |
2332 | 2345 |
|
2333 | 2346 |
__END__ |
SL/OE.pm | ||
---|---|---|
841 | 841 |
is_new => $is_new, |
842 | 842 |
); |
843 | 843 |
|
844 |
$self->_set_project_in_linked_requirement_spec( |
|
845 |
type => $form->{type}, |
|
846 |
project_id => $form->{globalproject_id}, |
|
847 |
sales_order_id => $form->{id}, |
|
848 |
); |
|
849 |
|
|
844 | 850 |
$main::lxdebug->leave_sub(); |
845 | 851 |
|
846 | 852 |
return 1; |
... | ... | |
880 | 886 |
}); |
881 | 887 |
} |
882 | 888 |
|
889 |
sub _set_project_in_linked_requirement_spec { |
|
890 |
my ($self, %params) = @_; |
|
891 |
|
|
892 |
return if $params{type} ne 'sales_order'; |
|
893 |
return if !$params{project_id} || !$params{sales_order_id}; |
|
894 |
|
|
895 |
my $query = <<SQL; |
|
896 |
UPDATE requirement_specs |
|
897 |
SET project_id = ? |
|
898 |
WHERE id IN ( |
|
899 |
SELECT so.requirement_spec_id |
|
900 |
FROM requirement_spec_orders so |
|
901 |
WHERE so.order_id = ? |
|
902 |
) |
|
903 |
SQL |
|
904 |
|
|
905 |
do_query($::form, $::form->get_standard_dbh, $query, $params{project_id}, $params{sales_order_id}); |
|
906 |
} |
|
907 |
|
|
883 | 908 |
sub save_periodic_invoices_config { |
884 | 909 |
my ($self, %params) = @_; |
885 | 910 |
|
doc/changelog | ||
---|---|---|
32 | 32 |
- Pflichtenhefte: wenn man im Workflow vom Pflichtenheft ein neues |
33 | 33 |
Angebot anlegt und später von diesem Angebot aus einen Auftrag, so |
34 | 34 |
wird auch der Auftrag direkt mit dem Pflichtenheft verknüpft. |
35 |
- Pflichtenhefte: wenn in einem Auftrag, das mit einem Pflichtenheft |
|
36 |
verknüpft ist, ein Projekt ausgewählt, so wird dieses Projekt auch |
|
37 |
automatisch beim verknüpften Pflichtenheft eingetragen. |
|
35 | 38 |
|
36 | 39 |
Bugfixes (Tracker: https://www.kivitendo.de/redmine): |
37 | 40 |
|
Auch abrufbar als: Unified diff
Auftrag: Projekt automatisch in verknüpftem Pflichtenheft eintragen