From cdc8bf4bb1d6f0b817285f4926a5807f7f6b1e14 Mon Sep 17 00:00:00 2001 From: Hetashree Chauhan Date: Wed, 31 Jul 2019 10:10:48 +0000 Subject: [PATCH] [IMP] mrp, maintenance: back to basics Modify tree view for MRP Production Modify form view and tree view for Unbuild orders Add group by for Bill of Materials By default show line shart when opening MRP Production report Modify view for Work Orders Modify view for Work Centers Modify view for Routings Modify view for Maintenance Request Modify view for Bill of Materials task-2042304 closes - https://github.com/odoo/odoo/pull/35482 --- addons/hr_maintenance/views/maintenance_views.xml | 3 ++- addons/maintenance/models/maintenance.py | 1 + addons/maintenance/views/maintenance_views.xml | 8 ++++---- addons/mrp/models/mrp_routing.py | 3 +-- addons/mrp/models/mrp_unbuild.py | 2 ++ addons/mrp/models/mrp_workcenter.py | 4 ++-- addons/mrp/static/src/js/mrp.js | 2 +- addons/mrp/views/mrp_bom_views.xml | 13 +++++++------ addons/mrp/views/mrp_production_views.xml | 10 ++++++---- addons/mrp/views/mrp_routing_views.xml | 6 ++---- addons/mrp/views/mrp_unbuild_views.xml | 3 ++- addons/mrp/views/stock_move_views.xml | 2 +- addons/mrp/wizard/mrp_product_produce_views.xml | 2 +- 13 files changed, 32 insertions(+), 27 deletions(-) diff --git a/addons/hr_maintenance/views/maintenance_views.xml b/addons/hr_maintenance/views/maintenance_views.xml index 97be6402b91..68043e17aed 100644 --- a/addons/hr_maintenance/views/maintenance_views.xml +++ b/addons/hr_maintenance/views/maintenance_views.xml @@ -25,7 +25,8 @@ - + diff --git a/addons/maintenance/models/maintenance.py b/addons/maintenance/models/maintenance.py index d7ed713ac5c..e4c5099381c 100644 --- a/addons/maintenance/models/maintenance.py +++ b/addons/maintenance/models/maintenance.py @@ -298,6 +298,7 @@ class MaintenanceRequest(models.Model): schedule_date = fields.Datetime('Scheduled Date', help="Date the maintenance team plans the maintenance. It should not differ much from the Request Date. ") maintenance_team_id = fields.Many2one('maintenance.team', string='Team', required=True, default=_get_default_team_id) duration = fields.Float(help="Duration in hours.") + done = fields.Boolean(related='stage_id.done') def archive_equipment_request(self): self.write({'archive': True}) diff --git a/addons/maintenance/views/maintenance_views.xml b/addons/maintenance/views/maintenance_views.xml index 8ec616e2388..7b3e9446d3f 100644 --- a/addons/maintenance/views/maintenance_views.xml +++ b/addons/maintenance/views/maintenance_views.xml @@ -65,19 +65,19 @@
-
- - + - + + diff --git a/addons/mrp/models/mrp_routing.py b/addons/mrp/models/mrp_routing.py index 81087282593..026b075b7a3 100644 --- a/addons/mrp/models/mrp_routing.py +++ b/addons/mrp/models/mrp_routing.py @@ -69,8 +69,7 @@ class MrpRoutingWorkcenter(models.Model): workorder_count = fields.Integer("# Work Orders", compute="_compute_workorder_count") batch = fields.Selection([ ('no', 'Once all products are processed'), - ('yes', 'Once a minimum number of products is processed')], string='Next Operation', - help="Set 'no' to schedule the next work order after the previous one. Set 'yes' to produce after the quantity set in 'Quantity To Process' has been produced.", + ('yes', 'Once some products are processed')], string='Start Next Operation', default='no', required=True) batch_size = fields.Float('Quantity to Process', default=1.0) workorder_ids = fields.One2many('mrp.workorder', 'operation_id', string="Work Orders") diff --git a/addons/mrp/models/mrp_unbuild.py b/addons/mrp/models/mrp_unbuild.py index 35058090c9b..75589b1d590 100644 --- a/addons/mrp/models/mrp_unbuild.py +++ b/addons/mrp/models/mrp_unbuild.py @@ -80,6 +80,8 @@ class MrpUnbuild(models.Model): if self.product_id: self.bom_id = self.env['mrp.bom']._bom_find(product=self.product_id) self.product_uom_id = self.product_id.uom_id.id + return {'domain': {'mo_id': [('state', '=', 'done'), ('product_id', '=', self.product_id.id)]}} + return {'domain': {'mo_id': [('state', '=', 'done')]}} @api.constrains('product_qty') def _check_qty(self): diff --git a/addons/mrp/models/mrp_workcenter.py b/addons/mrp/models/mrp_workcenter.py index 0ba916335fb..9748e6042ed 100644 --- a/addons/mrp/models/mrp_workcenter.py +++ b/addons/mrp/models/mrp_workcenter.py @@ -25,7 +25,7 @@ class MrpWorkcenter(models.Model): help="Description of the Work Center.") capacity = fields.Float( 'Capacity', default=1.0, - help="Number of pieces that can be produced in parallel.") + help="Number of pieces that can be produced in parallel. In case the work center has a capacity of 5 and you have to produce 10 units on your work order, the usual operation time will be multiplied by 2.") sequence = fields.Integer( 'Sequence', default=1, required=True, help="Gives the sequence order when displaying a list of work centers.") @@ -53,7 +53,7 @@ class MrpWorkcenter(models.Model): 'Productive Time', compute='_compute_productive_time', help='Productive hours over the last month', digits=(16, 2)) oee = fields.Float(compute='_compute_oee', help='Overall Equipment Effectiveness, based on the last month') - oee_target = fields.Float(string='OEE Target', help="OEE Target in percentage", default=90) + oee_target = fields.Float(string='OEE Target', help="Overall Effective Efficiency Target in percentage", default=90) performance = fields.Integer('Performance', compute='_compute_performance', help='Performance over the last month') workcenter_load = fields.Float('Work Center Load', compute='_compute_workorder_count') alternative_workcenter_ids = fields.Many2many( diff --git a/addons/mrp/static/src/js/mrp.js b/addons/mrp/static/src/js/mrp.js index 22abd2b0d91..990c419b2c5 100644 --- a/addons/mrp/static/src/js/mrp.js +++ b/addons/mrp/static/src/js/mrp.js @@ -36,7 +36,7 @@ var SetBulletStatus = AbstractField.extend({ this._super.apply(this, arguments); var bullet_class = this.classes[this.value] || 'default'; if (this.value) { - var title = this.value === 'waiting' ? _t('Waiting Materials') : _t('Ready to produce'); + var title = this.value === 'waiting' ? _t('Waiting Materials') : ''; this.$el.attr({'title': title, 'style': 'display:inline'}); this.$el.removeClass('text-success text-danger text-default'); this.$el.html($('' + title + '').addClass('badge badge-' + bullet_class)); diff --git a/addons/mrp/views/mrp_bom_views.xml b/addons/mrp/views/mrp_bom_views.xml index 05d04ad810f..2af174b2f67 100644 --- a/addons/mrp/views/mrp_bom_views.xml +++ b/addons/mrp/views/mrp_bom_views.xml @@ -16,7 +16,7 @@
@@ -110,16 +110,16 @@ mrp.bom.tree mrp.bom - + - + + + - - @@ -164,7 +164,7 @@ - + @@ -177,6 +177,7 @@ [] tree,kanban,form + {'search_default_group_by_type': True}

Create a bill of materials diff --git a/addons/mrp/views/mrp_production_views.xml b/addons/mrp/views/mrp_production_views.xml index 2bf94654de2..fcb506bb741 100644 --- a/addons/mrp/views/mrp_production_views.xml +++ b/addons/mrp/views/mrp_production_views.xml @@ -11,14 +11,14 @@ - - + + @@ -309,7 +309,7 @@ mrp.production.graph mrp.production - + @@ -373,7 +373,9 @@ [('picking_type_id.active', '=', True)]

- Create a new manufacturing order + Create a new manufacturing order
+

+ Produce finished products and consume components based on bill of materials.

diff --git a/addons/mrp/views/mrp_routing_views.xml b/addons/mrp/views/mrp_routing_views.xml index fcc4783eda4..b67865f424a 100644 --- a/addons/mrp/views/mrp_routing_views.xml +++ b/addons/mrp/views/mrp_routing_views.xml @@ -10,8 +10,7 @@ - - + @@ -25,7 +24,6 @@ - @@ -43,7 +41,7 @@ - +
diff --git a/addons/mrp/views/mrp_unbuild_views.xml b/addons/mrp/views/mrp_unbuild_views.xml index 1ba87f5c151..04187cdc477 100644 --- a/addons/mrp/views/mrp_unbuild_views.xml +++ b/addons/mrp/views/mrp_unbuild_views.xml @@ -125,7 +125,7 @@
- + @@ -150,6 +150,7 @@ + diff --git a/addons/mrp/views/stock_move_views.xml b/addons/mrp/views/stock_move_views.xml index fdbeeedc487..1fb4c2248fd 100644 --- a/addons/mrp/views/stock_move_views.xml +++ b/addons/mrp/views/stock_move_views.xml @@ -52,7 +52,7 @@ - + diff --git a/addons/mrp/wizard/mrp_product_produce_views.xml b/addons/mrp/wizard/mrp_product_produce_views.xml index c22ed6a3646..00542f06747 100644 --- a/addons/mrp/wizard/mrp_product_produce_views.xml +++ b/addons/mrp/wizard/mrp_product_produce_views.xml @@ -33,7 +33,7 @@ - +