From 07e6f28df3334489ba710d0709c1a2ba2376a47a Mon Sep 17 00:00:00 2001
From: Goffin Simon <sig@odoo.com>
Date: Wed, 8 Jun 2016 13:58:54 +0200
Subject: [PATCH] [FIX] delivery, stock: carrier_id field in incoming stock
 picking

The field "carrier_id" must be hidden for the incoming stock picking.

opw:676411
---
 addons/delivery/views/delivery_view.xml | 2 +-
 addons/stock/stock.py                   | 9 +++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/addons/delivery/views/delivery_view.xml b/addons/delivery/views/delivery_view.xml
index 7fe85289c8ec..804e0191da4a 100644
--- a/addons/delivery/views/delivery_view.xml
+++ b/addons/delivery/views/delivery_view.xml
@@ -276,7 +276,7 @@
             <field name="arch" type="xml">
                 <xpath expr='//group[@name="carrier_data"]' position='replace'>
                     <group name='carrier_data'>
-                      <field name="carrier_id"/>
+                      <field name="carrier_id" attrs="{'invisible': [('picking_type_code', '=', 'incoming')]}"/>
                       <field name="delivery_type" attrs="{'invisible':True}"/>
                       <label for="carrier_tracking_ref"/>
                       <div>
diff --git a/addons/stock/stock.py b/addons/stock/stock.py
index 32753fb18ea0..5583e7c31b7f 100644
--- a/addons/stock/stock.py
+++ b/addons/stock/stock.py
@@ -929,6 +929,15 @@ class stock_picking(models.Model):
         picking_type = self.env['stock.picking.type'].browse(picking_type_id)
         return picking_type.default_location_src_id
 
+    @api.model
+    def default_get(self, fields):
+        res = super(stock_picking, self).default_get(fields)
+        if self._context.get('default_picking_type_id'):
+            picking_type = self.env['stock.picking.type'].browse(res['picking_type_id'])
+            res['picking_type_code'] = picking_type.code
+        return res
+
+
     _columns = {
         'name': fields.char('Reference', select=True, states={'done': [('readonly', True)], 'cancel': [('readonly', True)]}, copy=False),
         'origin': fields.char('Source Document', states={'done': [('readonly', True)], 'cancel': [('readonly', True)]}, help="Reference of the document", select=True),
-- 
GitLab