stock_usability: clean-up zero-qty quants when opening quants from stock.location

When accessing stock.move.line from the show reservation on quants, in
the form view of stock.move.line, have a link to the picking
This commit is contained in:
Alexis de Lattre
2023-10-19 16:29:45 +02:00
parent 0781cb7ba7
commit 8a2e23cff5
5 changed files with 31 additions and 1 deletions

View File

@@ -1,6 +1,7 @@
from . import stock_move
from . import stock_picking
from . import stock_picking_type
from . import stock_location
from . import stock_location_route
from . import stock_warehouse_orderpoint
from . import stock_quant

View File

@@ -0,0 +1,14 @@
# Copyright 2023 Akretion France (http://www.akretion.com)
# @author Alexis de Lattre <alexis.delattre@akretion.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo import fields, models
class StockLocation(models.Model):
_inherit = 'stock.location'
def action_show_quants(self):
self.ensure_one()
action = self.env['stock.quant']._get_quants_action(domain=[('location_id', 'child_of', self.id)])
return action

View File

@@ -24,5 +24,5 @@ class StockQuant(models.Model):
('package_id', '=', self.package_id.id or False),
('result_package_id', '=', self.package_id.id or False),
]
action['context'] = {'create': 0}
action['context'] = {'create': 0, 'stock_move_line_main_view': True}
return action

View File

@@ -40,6 +40,10 @@
string="Reordering Rules"
class="oe_stat_button" icon="fa-refresh"/>
</div>
<button name="%(stock.location_open_quants)d" position="attributes">
<attribute name="type">object</attribute>
<attribute name="name">action_show_quants</attribute>
</button>
</field>
</record>

View File

@@ -73,6 +73,17 @@
<field name="context">{'search_default_done': 1}</field>
</record>
<record id="view_move_line_form" model="ir.ui.view">
<field name="name">stock_usability.stock.move.line.form</field>
<field name="model">stock.move.line</field>
<field name="inherit_id" ref="stock.view_move_line_form" />
<field name="arch" type="xml">
<field name="reference" position="before">
<field name="picking_id" invisible="not context.get('stock_move_line_main_view')"/>
</field>
</field>
</record>
<record id="view_move_line_tree" model="ir.ui.view">
<field name="name">stock_usability.stock.move.line.tree</field>
<field name="model">stock.move.line</field>