odoo/addons/stock_picking_wave/views/stock_picking_wave_views.xml

132 lines
7.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_picking_wave_form" model="ir.ui.view">
<field name="name">picking.wave.form</field>
<field name="model">stock.picking.wave</field>
<field name="arch" type="xml">
<form string="Stock Picking Waves">
<header>
<button name="confirm_picking" states="draft" string="Confirm" type="object" class="oe_highlight"/>
<button name="print_picking" string="Print" type="object" class="oe_highlight"/>
<button name="done" states="in_progress" string="Done" type="object" class="oe_highlight"/>
<button name="cancel_picking" string="Cancel" type="object" states="in_progress"/>
<field name="state" widget="statusbar" statusbar_visible="in_progress,done"/>
</header>
<sheet>
<div class="oe_title">
<h1>
<field name="name" class="oe_inline" readonly="1"/>
</h1>
</div>
<group>
<field name="user_id"/>
</group>
<separator string="Pickings"/>
<field name="picking_ids" widget="many2many" domain="[('state', 'not in', ('done', 'cancel'))]" options="{'not_delete': True}">
<tree>
<field name="name"/>
<field name="backorder_id"/>
<field name="origin"/>
<field name="date"/>
<field name="min_date"/>
<field name="state"/>
<button name="action_assign" string="Confirm picking" type="object" icon="fa-check text-success" attrs="{'invisible': [('state', 'in', ('done', 'cancel', 'confirmed', 'assigned'))]}"/>
<button name="force_assign" string="Force availability" type="object" icon="fa-arrow-right text-success" attrs="{'invisible': [('state', 'in', ('done', 'cancel', 'draft', 'assigned'))]}" groups="stock.group_stock_manager"/>
<button name="action_cancel" string="Cancel picking" type="object" icon="fa-times-circle text-danger" attrs="{'invisible': [('state', 'in', ('done', 'cancel'))]}"/>
</tree>
</field>
</sheet>
<div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
<field name="message_ids" widget="mail_thread"/>
</div>
</form>
</field>
</record>
<record id="view_picking_wave_tree" model="ir.ui.view">
<field name="name">picking.wave.tree</field>
<field name="model">stock.picking.wave</field>
<field name="arch" type="xml">
<tree string="Stock Picking Waves" decoration-muted="state=='cancel'">
<field name="name"/>
<field name="user_id"/>
<field name="state"/>
</tree>
</field>
</record>
<record id="view_picking_wave_filter" model="ir.ui.view">
<field name="name">picking.wave.filter</field>
<field name="model">stock.picking.wave</field>
<field name="arch" type="xml">
<search string="Search Picking Waves">
<field name="name" string="Picking Wave"/>
<filter name="in_progress" string="In Progress" domain="[('state','=', 'in_progress')]" help="Picking Waves not finished"/>
<field name="user_id"/>
<group expand="0" string="Group By">
<filter string="User" domain="[]" context="{'group_by':'user_id'}"/>
<filter string="State" domain="[]" context="{'group_by':'state'}"/>
</group>
</search>
</field>
</record>
<record id="action_picking_wave" model="ir.actions.act_window">
<field name="name">Picking Waves</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">stock.picking.wave</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="context">{"search_default_in_progress" : True,}</field>
<field name="search_view_id" ref="view_picking_wave_filter"/>
<field name="help" type="html">
<p class="oe_view_nocontent_create">
Click to create a Picking Wave.
</p><p>
The goal of the picking waves is to group operations that may
(needs to) be done together in order to increase their efficiency.
It may also be useful to assign jobs (one person = one wave) or
help the timing management of operations (tasks to be done at 1pm).
</p>
</field>
</record>
<menuitem action="action_picking_wave" id="menu_action_picking_wave" parent="stock.menu_stock_warehouse_mgmt" sequence="30"/>
<record model="ir.ui.view" id="view_stock_picking_wave_inherit">
<field name="name">stock.picking.wave.inherit.form</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.view_picking_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='picking_type_id']" position="after">
<field name="wave_id" domain="[('state', 'not in', ('done', 'cancel'))]"/>
</xpath>
</field>
</record>
<record model="ir.ui.view" id="view_stock_picking_wave_tree_inherit">
<field name="name">stock.picking.wave.inherit.tree</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.vpicktree"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='picking_type_id']" position="after">
<field name="wave_id"/>
</xpath>
</field>
</record>
<record model="ir.ui.view" id="view_stock_picking_wave_search_inherit">
<field name="name">stock.picking.wave.inherit.search</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.view_picking_internal_search"/>
<field name="arch" type="xml">
<xpath expr="//filter[@name='picking_type']" position="after">
<filter string="Wave" domain="[]" context="{'group_by':'wave_id'}"/>
</xpath>
<xpath expr="//field[@name='picking_type_id']" position="after">
<field name="wave_id"/>
</xpath>
</field>
</record>
</odoo>