From e6d4ab62e950c8b88ac54fecbf2682cba846c7c3 Mon Sep 17 00:00:00 2001 From: "Paolo Gatti (pgi)" Date: Tue, 25 Apr 2023 15:34:32 +0000 Subject: [PATCH] [FIX] l10n_it_stock_ddt: Print not printing DDT in case of Dropshipping The visibility of the "Print" DDT button wasn't taking into consideration the dropshipping case. closes odoo/odoo#122328 X-original-commit: 8a45ae0842a6ac08b321e44113896581d9af42bd Signed-off-by: Josse Colpaert Signed-off-by: Grazioso Andrea (agr) --- .../l10n_it_stock_ddt/models/stock_picking.py | 26 +++++++++++++++++++ .../views/stock_picking_views.xml | 5 ++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/addons/l10n_it_stock_ddt/models/stock_picking.py b/addons/l10n_it_stock_ddt/models/stock_picking.py index 50257d6f3c3..c1943aefc13 100644 --- a/addons/l10n_it_stock_ddt/models/stock_picking.py +++ b/addons/l10n_it_stock_ddt/models/stock_picking.py @@ -21,6 +21,32 @@ class StockPicking(models.Model): l10n_it_transport_method_details = fields.Char('Transport Note') l10n_it_parcels = fields.Integer(string="Parcels", default=1) l10n_it_ddt_number = fields.Char('DDT Number', readonly=True) + l10n_it_show_print_ddt_button = fields.Boolean(compute="_compute_l10n_it_show_print_ddt_button") + + @api.depends('country_code', + 'picking_type_code', + 'state', + 'is_locked', + 'move_ids', + 'location_id', + 'location_dest_id') + def _compute_l10n_it_show_print_ddt_button(self): + # Enable printing the DDT for done outgoing shipments + # or dropshipping (picking going from supplier to customer) + for picking in self: + picking.l10n_it_show_print_ddt_button = ( + picking.country_code == 'IT' + and picking.state == 'done' + and picking.is_locked + and (picking.picking_type_code == 'outgoing' + or ( + picking.move_ids_without_package + and picking.move_ids_without_package[0].partner_id + and picking.location_id.usage == 'supplier' + and picking.location_dest_id.usage == 'customer' + ) + ) + ) def _action_done(self): super(StockPicking, self)._action_done() diff --git a/addons/l10n_it_stock_ddt/views/stock_picking_views.xml b/addons/l10n_it_stock_ddt/views/stock_picking_views.xml index 97c31339c97..9226da75802 100644 --- a/addons/l10n_it_stock_ddt/views/stock_picking_views.xml +++ b/addons/l10n_it_stock_ddt/views/stock_picking_views.xml @@ -7,12 +7,13 @@ +