summaryrefslogtreecommitdiff
path: root/addons/mrp_account/models/stock_move.py
diff options
context:
space:
mode:
Diffstat (limited to 'addons/mrp_account/models/stock_move.py')
-rw-r--r--addons/mrp_account/models/stock_move.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/addons/mrp_account/models/stock_move.py b/addons/mrp_account/models/stock_move.py
new file mode 100644
index 00000000..86c19e23
--- /dev/null
+++ b/addons/mrp_account/models/stock_move.py
@@ -0,0 +1,29 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+from odoo import api, fields, models, _
+
+
+class StockMove(models.Model):
+ _inherit = "stock.move"
+
+ def _is_returned(self, valued_type):
+ if self.unbuild_id:
+ return True
+ return super()._is_returned(valued_type)
+
+ def _get_src_account(self, accounts_data):
+ if not self.unbuild_id:
+ return super()._get_src_account(accounts_data)
+ else:
+ return self.location_dest_id.valuation_out_account_id.id or accounts_data['stock_input'].id
+
+ def _get_dest_account(self, accounts_data):
+ if not self.unbuild_id:
+ return super()._get_dest_account(accounts_data)
+ else:
+ return self.location_id.valuation_in_account_id.id or accounts_data['stock_output'].id
+
+ def _filter_anglo_saxon_moves(self, product):
+ res = super(StockMove, self)._filter_anglo_saxon_moves(product)
+ res += self.filtered(lambda m: m.bom_line_id.bom_id.product_tmpl_id.id == product.product_tmpl_id.id)
+ return res