From e202f18bcac21e702a0b28874b1c77724de72c04 Mon Sep 17 00:00:00 2001 From: Jared Kipe Date: Fri, 30 Oct 2020 15:16:54 -0700 Subject: [PATCH] [MIG] rma: to Odoo 14.0 --- rma/__manifest__.py | 2 +- rma/models/rma.py | 4 ++-- rma/security/ir.model.access.csv | 14 +++++++------- rma/tests/test_rma.py | 18 +++++++++++++----- rma/views/account_views.xml | 4 ++-- rma/views/stock_picking_views.xml | 3 ++- 6 files changed, 27 insertions(+), 18 deletions(-) diff --git a/rma/__manifest__.py b/rma/__manifest__.py index 8f5c7313..bb567cce 100644 --- a/rma/__manifest__.py +++ b/rma/__manifest__.py @@ -2,7 +2,7 @@ { 'name': 'Hibou RMAs', - 'version': '13.0.1.3.0', + 'version': '14.0.1.0.0', 'category': 'Warehouse', 'author': 'Hibou Corp.', 'license': 'OPL-1', diff --git a/rma/models/rma.py b/rma/models/rma.py index cdce249c..22f4e8d4 100644 --- a/rma/models/rma.py +++ b/rma/models/rma.py @@ -413,7 +413,7 @@ class RMA(models.Model): rma._invoice(values) def _invoice(self, invoice_values): - self.invoice_ids += self.env['account.move'].with_context(default_type=invoice_values['type']).create( + self.invoice_ids += self.env['account.move'].with_context(default_move_type=invoice_values['move_type']).create( invoice_values) def _invoice_values(self): @@ -427,7 +427,7 @@ class RMA(models.Model): self.partner_id.id, delivery_id=self.partner_shipping_id.id) invoice_values = { - 'type': 'in_refund' if supplier else 'out_refund', + 'move_type': 'in_refund' if supplier else 'out_refund', 'partner_id': self.partner_id.id, 'fiscal_position_id': fiscal_position_id, } diff --git a/rma/security/ir.model.access.csv b/rma/security/ir.model.access.csv index a7c216cd..f02ceb7f 100644 --- a/rma/security/ir.model.access.csv +++ b/rma/security/ir.model.access.csv @@ -1,10 +1,10 @@ "id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" -"manage_rma stock","manage rma","model_rma_rma","stock.group_stock_user",1,1,1,1 -"manage_rma_line stock","manage rma line","model_rma_line","stock.group_stock_user",1,1,1,1 -"manage_rma_template stock","manage rma template","model_rma_template","stock.group_stock_manager",1,1,1,1 -"manage_rma_tag stock","manage rma tag","model_rma_tag","stock.group_stock_manager",1,1,1,1 -"access_rma_template stock","access rma template","model_rma_template","stock.group_stock_user",1,1,0,0 -"access_rma_tag stock","access rma tag","model_rma_tag","stock.group_stock_user",1,0,0,0 +"manage_rma_stock","manage_rma","model_rma_rma","stock.group_stock_user",1,1,1,1 +"manage_rma_line_stock","manage_rma_line","model_rma_line","stock.group_stock_user",1,1,1,1 +"manage_rma_template_stock","manage_rma_template","model_rma_template","stock.group_stock_manager",1,1,1,1 +"manage_rma_tag_stock","manage_rma_tag","model_rma_tag","stock.group_stock_manager",1,1,1,1 +"access_rma_template_stock","access_rma_template","model_rma_template","stock.group_stock_user",1,1,0,0 +"access_rma_tag_stock","access_rma_tag","model_rma_tag","stock.group_stock_user",1,0,0,0 access_rma_portal,rma.rma.portal,rma.model_rma_rma,base.group_portal,1,0,0,0 access_rma_line_portal,rma.line.portal,rma.model_rma_line,base.group_portal,1,0,0,0 -access_rma_template_portal,rma.template.portal,rma.model_rma_template,base.group_portal,1,0,0,0 \ No newline at end of file +access_rma_template_portal,rma.template.portal,rma.model_rma_template,base.group_portal,1,0,0,0 diff --git a/rma/tests/test_rma.py b/rma/tests/test_rma.py index ec70c3ac..99049e27 100644 --- a/rma/tests/test_rma.py +++ b/rma/tests/test_rma.py @@ -51,7 +51,7 @@ class TestRMA(common.TransactionCase): rma.action_done() rma.out_picking_id.move_lines.quantity_done = 2.0 - rma.out_picking_id.action_done() + rma.out_picking_id.button_validate() rma.action_done() self.assertEqual(rma.state, 'done') @@ -90,6 +90,12 @@ class TestRMA(common.TransactionCase): }) adj.action_validate() + # No Quants after moving inventory out (quant exists with qty == 0 in Odoo 14) + quant = self.env['stock.quant'].search([('product_id', '=', self.product1.id), + ('location_id', '=', location.id), + ('quantity', '!=', 0)]) + self.assertEqual(len(quant), 0) + # Adjust in a single serial self.product1.tracking = 'serial' @@ -199,7 +205,9 @@ class TestRMA(common.TransactionCase): rma.action_done() # Ensure that the same lot was in fact returned into our destination inventory - quant = self.env['stock.quant'].search([('product_id', '=', self.product1.id), ('location_id', '=', location.id)]) + quant = self.env['stock.quant'].search([('product_id', '=', self.product1.id), + ('location_id', '=', location.id), + ('quantity', '!=', 0)]) self.assertEqual(len(quant), 1) self.assertEqual(quant.lot_id, lot) @@ -279,7 +287,7 @@ class TestRMA(common.TransactionCase): rma.action_done() rma.in_picking_id.move_lines.quantity_done = 2.0 - rma.in_picking_id.action_done() + rma.in_picking_id.button_validate() rma.action_done() self.assertEqual(rma.state, 'done') @@ -298,11 +306,11 @@ class TestRMA(common.TransactionCase): # ship and finish rma_rtv.out_picking_id.move_lines.quantity_done = 2.0 - rma_rtv.out_picking_id.action_done() + rma_rtv.out_picking_id.button_validate() rma_rtv.action_done() self.assertEqual(rma_rtv.state, 'done') # ensure invoice and type rtv_invoice = rma_rtv.invoice_ids self.assertTrue(rtv_invoice) - self.assertEqual(rtv_invoice.type, 'in_refund') + self.assertEqual(rtv_invoice.move_type, 'in_refund') diff --git a/rma/views/account_views.xml b/rma/views/account_views.xml index b189fc7a..8bf1dfd5 100644 --- a/rma/views/account_views.xml +++ b/rma/views/account_views.xml @@ -6,8 +6,8 @@ account.move - - + + diff --git a/rma/views/stock_picking_views.xml b/rma/views/stock_picking_views.xml index 4fdea8e0..dbe45ca6 100644 --- a/rma/views/stock_picking_views.xml +++ b/rma/views/stock_picking_views.xml @@ -6,7 +6,8 @@ - {'invisible':['|','|','|',('carrier_tracking_ref','!=',False),('delivery_type','in', ['fixed', 'base_on_rule']),('delivery_type','=',False)]} + + {'invisible':['|','|','|',('carrier_tracking_ref','!=',False),('delivery_type','in', ['fixed', 'base_on_rule']),('delivery_type','=',False),('picking_type_code', '=', 'incoming')]}