[IMP] stock_picking_batch: Views cleanup
This commit is contained in:
@@ -75,7 +75,7 @@
|
||||
</button>
|
||||
<button name="%(action_mrp_production_moves)d" type="action" string="Product Moves" class="oe_stat_button" icon="fa-exchange" attrs="{'invisible': [('state', 'not in', ('progress', 'done'))]}"/>
|
||||
<button type="object" name="action_view_mo_delivery" class="oe_stat_button" icon="fa-truck" groups="base.group_user" attrs="{'invisible': [('delivery_count', '=', 0)]}">
|
||||
<field name="delivery_count" widget="statinfo" string="Pickings"/>
|
||||
<field name="delivery_count" widget="statinfo" string="Transfers"/>
|
||||
</button>
|
||||
<button class="oe_stat_button" name="action_see_move_scrap" type="object" icon="fa-arrows-v" attrs="{'invisible': [('scrap_count', '=', 0)]}">
|
||||
<div class="o_field_widget o_stat_info">
|
||||
|
||||
@@ -32,7 +32,7 @@ class SaleOrder(models.Model):
|
||||
'stock.warehouse', string='Warehouse',
|
||||
required=True, readonly=True, states={'draft': [('readonly', False)], 'sent': [('readonly', False)]},
|
||||
default=_default_warehouse_id)
|
||||
picking_ids = fields.One2many('stock.picking', 'sale_id', string='Pickings')
|
||||
picking_ids = fields.One2many('stock.picking', 'sale_id', string='Transfers')
|
||||
delivery_count = fields.Integer(string='Delivery Orders', compute='_compute_picking_ids')
|
||||
procurement_group_id = fields.Many2one('procurement.group', 'Procurement Group', copy=False)
|
||||
effective_date = fields.Date("Effective Date", compute='_compute_effective_date', store=True, help="Completion date of the first delivery order.")
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
<!-- Stock Portal Access Rules -->
|
||||
<record id="stock_picking_rule_portal" model="ir.rule">
|
||||
<field name="name">Portal Follower Pickings</field>
|
||||
<field name="name">Portal Follower Transfers</field>
|
||||
<field name="model_id" ref="stock.model_stock_picking"/>
|
||||
<field name="domain_force">['|', '|', ('message_partner_ids', 'in', [user.partner_id.id]), ('partner_id', '=', user.partner_id.id), ('sale_id.partner_id', '=', user.partner_id.id)]</field>
|
||||
<field name="groups" eval="[(4, ref('base.group_portal'))]"/>
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
<div class="o_setting_right_pane">
|
||||
<label for="module_stock_picking_batch"/>
|
||||
<div class="text-muted">
|
||||
Process picking in batch per worker
|
||||
Process transfers in batch per worker
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -380,10 +380,10 @@
|
||||
<filter name="draft" string="Draft" domain="[('state','=','draft')]" help="Draft Moves"/>
|
||||
<filter name="waiting" string="Waiting" domain="[('state','in', ('confirmed', 'waiting'))]" help="Waiting Moves"/>
|
||||
<filter name="available" string="Ready" domain="[('state','in',('assigned', 'partially_available'))]" help="Assigned Moves"/>
|
||||
<filter name="done" string="Done" domain="[('state','=','done')]" help="Pickings already processed"/>
|
||||
<filter name="done" string="Done" domain="[('state','=','done')]" help="Transfers already processed"/>
|
||||
<filter name="cancel" string="Cancelled" domain="[('state','=', 'cancel')]" help="Cancelled Moves"/>
|
||||
<separator/>
|
||||
<filter name="late" string="Late" domain="[('scheduled_date','<', time.strftime('%%Y-%%m-%%d %%H:%%M:%%S')), ('state', 'in', ('assigned', 'waiting', 'confirmed'))]" help="Pickings that are late on scheduled time"/>
|
||||
<filter name="late" string="Late" domain="[('scheduled_date','<', time.strftime('%%Y-%%m-%%d %%H:%%M:%%S')), ('state', 'in', ('assigned', 'waiting', 'confirmed'))]" help="Transfers that are late on scheduled time"/>
|
||||
<separator/>
|
||||
<filter name="backorder" string="Backorders" domain="[('backorder_id','!=', False), ('state', 'in', ('assigned', 'waiting', 'confirmed'))]" help="Remaining parts of picking partially processed"/>
|
||||
<separator/>
|
||||
@@ -556,7 +556,7 @@ action = action_values
|
||||
</field>
|
||||
</record>
|
||||
<record id="do_view_pickings" model="ir.actions.act_window">
|
||||
<field name="name">Pickings for Groups</field>
|
||||
<field name="name">Transfers for Groups</field>
|
||||
<field name="res_model">stock.picking</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="domain">[('group_id','=',active_id)]</field>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<form string="Procurement group">
|
||||
<sheet>
|
||||
<div class="oe_button_box" name="button_box">
|
||||
<button name="%(do_view_pickings)d" string="Pickings" type="action" class="oe_stat_button" icon="fa-truck"/>
|
||||
<button name="%(do_view_pickings)d" string="Transfers" type="action" class="oe_stat_button" icon="fa-truck"/>
|
||||
</div>
|
||||
<group>
|
||||
<field name="name"/>
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
{
|
||||
'name': 'Warehouse Management: Batch Picking',
|
||||
'name': 'Warehouse Management: Batch Transfer',
|
||||
'version': '1.0',
|
||||
'category': 'Warehouse',
|
||||
'description': """
|
||||
This module adds the batch picking option in warehouse management
|
||||
=================================================================
|
||||
This module adds the batch transfer option in warehouse management
|
||||
==================================================================
|
||||
""",
|
||||
'depends': ['stock'],
|
||||
'data': [
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
</record>
|
||||
|
||||
<record id="seq_picking_batch" model="ir.sequence">
|
||||
<field name="name">Batch Picking</field>
|
||||
<field name="name">Batch Transfer</field>
|
||||
<field name="code">picking.batch</field>
|
||||
<field name="prefix">BATCH/</field>
|
||||
<field name="padding">5</field>
|
||||
|
||||
@@ -8,22 +8,22 @@ from odoo.exceptions import UserError
|
||||
class StockPickingBatch(models.Model):
|
||||
_inherit = ['mail.thread', 'mail.activity.mixin']
|
||||
_name = "stock.picking.batch"
|
||||
_description = "Batch Picking"
|
||||
_description = "Batch Transfer"
|
||||
_order = "name desc"
|
||||
|
||||
name = fields.Char(
|
||||
string='Batch Picking Name', default='New',
|
||||
string='Batch Transfer Name', default='New',
|
||||
copy=False, required=True,
|
||||
help='Name of the batch picking')
|
||||
help='Name of the batch transfer')
|
||||
user_id = fields.Many2one(
|
||||
'res.users', string='Responsible', tracking=True,
|
||||
help='Person responsible for this batch picking')
|
||||
help='Person responsible for this batch transfer')
|
||||
picking_ids = fields.One2many(
|
||||
'stock.picking', 'batch_id', string='Pickings',
|
||||
help='List of picking associated to this batch')
|
||||
'stock.picking', 'batch_id', string='Transfers',
|
||||
help='List of transfers associated to this batch')
|
||||
state = fields.Selection([
|
||||
('draft', 'Draft'),
|
||||
('in_progress', 'Running'),
|
||||
('in_progress', 'In progress'),
|
||||
('done', 'Done'),
|
||||
('cancel', 'Cancelled')], default='draft',
|
||||
copy=False, tracking=True, required=True)
|
||||
@@ -52,12 +52,12 @@ class StockPickingBatch(models.Model):
|
||||
def done(self):
|
||||
pickings = self.mapped('picking_ids').filtered(lambda picking: picking.state not in ('cancel', 'done'))
|
||||
if any(picking.state not in ('assigned') for picking in pickings):
|
||||
raise UserError(_('Some pickings are still waiting for goods. Please check or force their availability before setting this batch to done.'))
|
||||
raise UserError(_('Some transfers are still waiting for goods. Please check or force their availability before setting this batch to done.'))
|
||||
for picking in pickings:
|
||||
picking.message_post(
|
||||
body="<b>%s:</b> %s <a href=#id=%s&view_type=form&model=stock.picking.batch>%s</a>" % (
|
||||
_("Transferred by"),
|
||||
_("Batch Picking"),
|
||||
_("Batch Transfer"),
|
||||
picking.batch_id.id,
|
||||
picking.batch_id.name))
|
||||
|
||||
@@ -109,6 +109,6 @@ class StockPicking(models.Model):
|
||||
_inherit = "stock.picking"
|
||||
|
||||
batch_id = fields.Many2one(
|
||||
'stock.picking.batch', string='Batch Picking',
|
||||
'stock.picking.batch', string='Batch Transfer',
|
||||
states={'done': [('readonly', True)], 'cancel': [('readonly', True)]},
|
||||
help='Batch associated to this picking', copy=False)
|
||||
help='Batch associated to this transfer', copy=False)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<odoo>
|
||||
<data>
|
||||
<report
|
||||
string="Batch Picking"
|
||||
string="Batch Transfer"
|
||||
id="action_report_picking_batch"
|
||||
model="stock.picking.batch"
|
||||
report_type="qweb-pdf"
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<field name="name">stock.picking.batch.form</field>
|
||||
<field name="model">stock.picking.batch</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Stock Batch Picking">
|
||||
<form string="Stock Batch Transfer">
|
||||
<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"/>
|
||||
@@ -22,14 +22,14 @@
|
||||
<field name="user_id"/>
|
||||
</group>
|
||||
</group>
|
||||
<separator string="Pickings"/>
|
||||
<separator string="Transfers"/>
|
||||
<field name="picking_ids" widget="many2many" domain="[('state', 'not in', ('done', 'cancel'))]" options="{'not_delete': True}">
|
||||
<tree>
|
||||
<field name="name"/>
|
||||
<field name="scheduled_date"/>
|
||||
<field name="location_id"/>
|
||||
<field name="backorder_id"/>
|
||||
<field name="origin"/>
|
||||
<field name="date"/>
|
||||
<field name="scheduled_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="action_cancel" string="Cancel picking" type="object" icon="fa-times-circle text-danger" attrs="{'invisible': [('state', 'in', ('done', 'cancel'))]}"/>
|
||||
@@ -48,7 +48,7 @@
|
||||
<field name="name">stock.picking.batch.tree</field>
|
||||
<field name="model">stock.picking.batch</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Stock Batch Picking" decoration-muted="state=='cancel'">
|
||||
<tree string="Stock Batch Transfer" decoration-muted="state=='cancel'">
|
||||
<field name="name"/>
|
||||
<field name="user_id"/>
|
||||
<field name="state"/>
|
||||
@@ -89,9 +89,9 @@
|
||||
<field name="name">stock.picking.batch.filter</field>
|
||||
<field name="model">stock.picking.batch</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Batch Picking">
|
||||
<field name="name" string="Batch Picking"/>
|
||||
<filter name="in_progress" string="Running" domain="[('state', '=', 'in_progress')]" help="Batch Pickings not finished"/>
|
||||
<search string="Search Batch Transfer">
|
||||
<field name="name" string="Batch Transfer"/>
|
||||
<filter name="in_progress" string="Running" domain="[('state', '=', 'in_progress')]" help="Batch Transfers not finished"/>
|
||||
<field name="user_id"/>
|
||||
<filter invisible="1" string="Late Activities" name="activities_overdue"
|
||||
domain="[('activity_ids.date_deadline', '<', context_today().strftime('%Y-%m-%d'))]"
|
||||
@@ -110,7 +110,7 @@
|
||||
</field>
|
||||
</record>
|
||||
<record id="stock_picking_batch_action" model="ir.actions.act_window">
|
||||
<field name="name">Batch Pickings</field>
|
||||
<field name="name">Batch Transfers</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">stock.picking.batch</field>
|
||||
<field name="view_mode">tree,kanban,form</field>
|
||||
@@ -118,9 +118,9 @@
|
||||
<field name="search_view_id" ref="stock_picking_batch_filter"/>
|
||||
<field name="help" type="html">
|
||||
<p class="o_view_nocontent_smiling_face">
|
||||
Create a new batch picking
|
||||
Create a new batch transfer
|
||||
</p><p>
|
||||
The goal of the batch picking is to group operations that may
|
||||
The goal of the batch transfer 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 batch) or
|
||||
help the timing management of operations (tasks to be done at 1pm).
|
||||
|
||||
@@ -6,9 +6,9 @@ from odoo import api, fields, models
|
||||
|
||||
class StockPickingToBatch(models.TransientModel):
|
||||
_name = 'stock.picking.to.batch'
|
||||
_description = 'Batch Picking Lines'
|
||||
_description = 'Batch Transfer Lines'
|
||||
|
||||
batch_id = fields.Many2one('stock.picking.batch', string='Batch Picking')
|
||||
batch_id = fields.Many2one('stock.picking.batch', string='Batch Transfer')
|
||||
|
||||
def attach_pickings(self):
|
||||
# use active_ids to add picking line to the selected batch
|
||||
|
||||
Reference in New Issue
Block a user