From be6eabfc4b62af1a8173e5cbcaff0b7f0d9b6db4 Mon Sep 17 00:00:00 2001
From: Thomas Heck <theck@linet-services.de>
Date: Mon, 6 Jan 2014 17:44:08 +0100
Subject: [PATCH] Einheiten beim Fertigen beachten

fixt #2232
---
 SL/WH.pm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/SL/WH.pm b/SL/WH.pm
index 3087dfff4..7e4d5194b 100644
--- a/SL/WH.pm
+++ b/SL/WH.pm
@@ -38,6 +38,9 @@ use SL::AM;
 use SL::DBUtils;
 use SL::Form;
 
+use SL::DB::Unit;
+use SL::DB::Assembly;
+
 use warnings;
 use strict;
 
@@ -158,6 +161,17 @@ sub transfer_assembly {
   my %params   = @_;
   Common::check_params(\%params, qw(assembly_id dst_warehouse_id login qty unit dst_bin_id chargenumber bestbefore comment));
 
+
+  my $unit = SL::DB::Manager::Unit->find_by(name => $params{unit});        
+  if ($unit) {
+    my $assembly = SL::DB::Manager::Assembly->get_all(
+      query => [ id => $params{assembly_id} ],
+      with_objects => ['part'],
+      limit => 1,
+    )->[0];
+    $params{qty} = $unit->convert_to($params{qty}, $assembly->part->unit_obj);
+  }
+
 #  my $maxcreate=WH->check_assembly_max_create(assembly_id =>$params{'assembly_id'}, dbh => $my_dbh);
 
   my $myconfig = \%main::myconfig;
-- 
2.20.1