Customerpicker berücksichtigt Recht customer_vendor_all_edit
authorG. Richardson <information@kivitendo-premium.de>
Fri, 11 Dec 2015 12:08:53 +0000 (13:08 +0100)
committerG. Richardson <information@kivitendo-premium.de>
Fri, 11 Dec 2015 13:51:36 +0000 (14:51 +0100)
Wenn man nicht das Recht hat, alle Kunden / Lieferanten anzuzeigen / zu
bearbeiten, dann sollen die auch nicht vom Picker auswählbar / anzeigbar
sein. Im neuen Ordercontroller mit Picker kann man dann auch nur die
eigenen Kunden auswählen.
Bei Verkauf->Berichte->Kunden ist dieser Filter auch aktiv, aber nicht bei
den alten Belegmasken mit Kundendropdown / Suchfeld.

SL/Controller/CustomerVendor.pm

index dbe1827..5d60deb 100644 (file)
@@ -597,6 +597,7 @@ sub action_ajaj_autocomplete {
     if (1 == scalar @{ $exact_matches = $manager->get_all(
       query => [
         obsolete => 0,
+        (salesman_id => SL::DB::Manager::Employee->current->id) x !$::auth->assert('customer_vendor_all_edit', 1),
         or => [
           name    => { ilike => $::form->{filter}{'all:substr:multi::ilike'} },
           $number => { ilike => $::form->{filter}{'all:substr:multi::ilike'} },
@@ -959,6 +960,9 @@ sub init_customer_models {
       },
       customernumber => t8('Customer Number'),
     },
+    query => [
+     ( salesman_id => SL::DB::Manager::Employee->current->id) x !$::auth->assert('customer_vendor_all_edit', 1),
+    ],
   );
 }