Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 2590383a

Von Moritz Bunkus vor etwa 3 Jahren hinzugefügt

  • ID 2590383a739a98eaec3e2e948c37a03dfedd189a
  • Vorgänger 57f3e75d
  • Nachfolger 81f99fbd

Auftrag: Projekt automatisch in verknüpftem Pflichtenheft eintragen

Unterschiede anzeigen:

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
30 30
- Pflichtenhefte: wenn man im Workflow vom Pflichtenheft ein neues
31 31
  Angebot anlegt und später von diesem Angebot aus einen Auftrag, so
32 32
  wird auch der Auftrag direkt mit dem Pflichtenheft verknüpft.
33
- Pflichtenhefte: wenn in einem Auftrag, das mit einem Pflichtenheft
34
  verknüpft ist, ein Projekt ausgewählt, so wird dieses Projekt auch
35
  automatisch beim verknüpften Pflichtenheft eingetragen.
33 36

  
34 37
Bugfixes (Tracker: https://www.kivitendo.de/redmine):
35 38

  

Auch abrufbar als: Unified diff