Repair Refurbish

repair_refurbish
REPOSITORY
REPOSITORYOCA/repair
GIT
GIThttps://github.com/OCA/repair.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/repair/tree/17.0/repair_refurbish
VERSION
VERSION 2.0.0
CATEGORY
CATEGORYManufacturing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ForgeFlow
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ForgeFlow
COMMITTERS
COMMITTERSLois Rilo, Weblate, OCA-git-bot, oca-ci, JasminSForgeFlow
WEBSITE
WEBSITEhttps://github.com/OCA/repair
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:07
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - repair
    - sale_stock
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - account_payment
    - account
    - onboarding
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - payment
    - utm
    - stock_account
    - stock
    - barcodes_gs1_nomenclature
    - barcodes
    - sale_management
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module adds the ability to obtain refurbished product as a
consequence of the repair of a product that was defective.

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
product_normal_form_view product.product.form product.product group Inherits product.product_normal_form_view
product_template_only_form_view product.template.product.form product.template group Inherits product.product_template_only_form_view
view_repair_order_form repair.order.form repair.order xpath Inherits repair.view_repair_order_form
view_repair_order_form_filter repair.order.select repair.order field Inherits repair.view_repair_order_form_filter
view_repair_order_tree repair.order.tree repair.order field Inherits repair.view_repair_order_tree
view_template_property_form product.template.stock.property.form.inherit product.template field Inherits stock.view_template_property_form
Models touched (5)

New fields (1)
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' domain="[('type', '=', 'product')]" string='Refurbished Product'
Public methods (0)

No public methods.

New fields (2)
  • property_stock_refurbish Many2one → stock.location
    comodel_name='stock.location' company_dependent=True domain=[('usage', 'like', 'production')] help='This stock location will be used, instead of the default one, as the source location for stock moves generated by repair orders when refurbishing takes place.' string='Refurbish Location'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' compute='_compute_refurbish_product' domain="[('type', '=', 'product')]" inverse='_inverse_refurbish_product' search='_search_refurbish_product' string='Refurbished Product'
Public methods (0)

No public methods.

New fields (6)
  • refurbish_location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Refurbished Delivery Location'
  • refurbish_lot_id Many2one → stock.lot
    comodel_name='stock.lot' string='Refurbished Lot'
  • refurbish_move_id Many2one → stock.move
    comodel_name='stock.move' string='Refurbished Inventory Move'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' string='Refurbished product'
  • refurbish_tracking Selection
    readonly=False related='refurbish_product_id.tracking' string='Refurbished Product Tracking'
  • to_refurbish Boolean
Public methods (1)
  • action_repair_done(self)

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi
REPOSITORY
REPOSITORYOCA/repair
GIT
GIThttps://github.com/OCA/repair.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/repair/tree/16.0/repair_refurbish
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYManufacturing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ForgeFlow S.L.
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ForgeFlow S.L.
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, AlexPForgeFlow
WEBSITE
WEBSITEhttps://github.com/OCA/repair
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:50
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - repair
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes_gs1_nomenclature
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - sale_management
    - sale
    - sales_team
    - account_payment
    - account
    - analytic
    - payment
    - utm
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
product_normal_form_view product.product.form product.product group Inherits product.product_normal_form_view
product_template_only_form_view product.template.product.form product.template group Inherits product.product_template_only_form_view
view_repair_order_form repair.order.form repair.order field Inherits repair.view_repair_order_form
view_repair_order_form_filter repair.order.select repair.order field Inherits repair.view_repair_order_form_filter
view_repair_order_tree repair.order.tree repair.order field Inherits repair.view_repair_order_tree
view_template_property_form product.template.stock.property.form.inherit product.template field Inherits stock.view_template_property_form
Models touched (6)

New fields (1)
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' domain="[('type', '=', 'product')]" string='Refurbished Product'
Public methods (0)

No public methods.

New fields (2)
  • property_stock_refurbish Many2one → stock.location
    comodel_name='stock.location' company_dependent=True domain=[('usage', 'like', 'production')] help='This stock location will be used, instead of the default one, as the source location for stock moves generated by repair orders when refurbishing takes place.' string='Refurbish Location'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' compute='_compute_refurbish_product' domain="[('type', '=', 'product')]" inverse='_inverse_refurbish_product' search='_search_refurbish_product' string='Refurbished Product'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • onchange_operation_type(self)
    @api.onchange('type', 'repair_id')

New fields (6)
  • location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Delivery Location'
  • refurbish_location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Refurbished Delivery Location'
  • refurbish_lot_id Many2one → stock.lot
    comodel_name='stock.lot' string='Refurbished Lot'
  • refurbish_move_id Many2one → stock.move
    comodel_name='stock.move' string='Refurbished Inventory Move'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' string='Refurbished product'
  • to_refurbish Boolean
Public methods (1)
  • action_repair_done(self)

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi
REPOSITORY
REPOSITORYOCA/repair
GIT
GIThttps://github.com/OCA/repair.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/repair/tree/15.0/repair_refurbish
VERSION
VERSION 1.0.3
CATEGORY
CATEGORYManufacturing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ForgeFlow S.L.
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ForgeFlow S.L.
COMMITTERS
COMMITTERSAaronHForgeFlow, Weblate, OCA-git-bot, oca-ci, Jasmin Solanki
WEBSITE
WEBSITEhttps://github.com/OCA/repair
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:36
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - repair
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - sale_management
    - sale
    - sales_team
    - payment
    - account
    - analytic
    - utm
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
product_normal_form_view product.product.form product.product group Inherits product.product_normal_form_view
product_template_only_form_view product.template.product.form product.template group Inherits product.product_template_only_form_view
view_repair_order_form repair.order.form repair.order field Inherits repair.view_repair_order_form
view_repair_order_form_filter repair.order.select repair.order field Inherits repair.view_repair_order_form_filter
view_repair_order_tree repair.order.tree repair.order field Inherits repair.view_repair_order_tree
view_template_property_form product.template.stock.property.form.inherit product.template field Inherits stock.view_template_property_form
Models touched (6)

New fields (1)
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' domain="[('type', '=', 'product')]" string='Refurbished Product'
Public methods (0)

No public methods.

New fields (2)
  • property_stock_refurbish Many2one → stock.location
    comodel_name='stock.location' company_dependent=True domain=[('usage', 'like', 'production')] help='This stock location will be used, instead of the default one, as the source location for stock moves generated by repair orders when refurbishing takes place.' string='Refurbish Location'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' compute='_compute_refurbish_product' domain="[('type', '=', 'product')]" inverse='_inverse_refurbish_product' search='_search_refurbish_product' string='Refurbished Product'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • onchange_operation_type(self)
    @api.onchange('type', 'repair_id')

New fields (6)
  • location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Delivery Location'
  • refurbish_location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Refurbished Delivery Location'
  • refurbish_lot_id Many2one → stock.production.lot
    comodel_name='stock.production.lot' string='Refurbished Lot'
  • refurbish_move_id Many2one → stock.move
    comodel_name='stock.move' string='Refurbished Inventory Move'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' string='Refurbished product'
  • to_refurbish Boolean
Public methods (1)
  • action_repair_done(self)

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi
REPOSITORY
REPOSITORYOCA/manufacture
GIT
GIThttps://github.com/OCA/manufacture.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/manufacture/tree/14.0/repair_refurbish
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYManufacturing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ForgeFlow S.L.
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ForgeFlow S.L.
COMMITTERS
COMMITTERSJordi Ballester, OCA Transbot, AaronHForgeFlow, oca-travis, Weblate, OCA-git-bot, Mateu Griful
WEBSITE
WEBSITEhttps://github.com/OCA/manufacture
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:03
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - repair
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - sale_management
    - sale
    - sales_team
    - payment
    - account
    - analytic
    - utm
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
product_normal_form_view product.product.form product.product group Inherits product.product_normal_form_view
product_template_only_form_view product.template.product.form product.template group Inherits product.product_template_only_form_view
view_repair_order_form repair.order.form repair.order field Inherits repair.view_repair_order_form
view_repair_order_form_filter repair.order.select repair.order field Inherits repair.view_repair_order_form_filter
view_repair_order_tree repair.order.tree repair.order field Inherits repair.view_repair_order_tree
view_template_property_form product.template.stock.property.form.inherit product.template field Inherits stock.view_template_property_form
Models touched (6)

New fields (1)
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' domain="[('type', '=', 'product')]" string='Refurbished Product'
Public methods (0)

No public methods.

New fields (2)
  • property_stock_refurbish Many2one → stock.location
    comodel_name='stock.location' company_dependent=True domain=[('usage', 'like', 'production')] help='This stock location will be used, instead of the default one, as the source location for stock moves generated by repair orders when refurbishing takes place.' string='Refurbish Location'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' compute='_compute_refurbish_product' domain="[('type', '=', 'product')]" inverse='_inverse_refurbish_product' search='_search_refurbish_product' string='Refurbished Product'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • onchange_operation_type(self)
    @api.onchange('type', 'repair_id')

New fields (6)
  • location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Delivery Location'
  • refurbish_location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Refurbished Delivery Location'
  • refurbish_lot_id Many2one → stock.production.lot
    comodel_name='stock.production.lot' string='Refurbished Lot'
  • refurbish_move_id Many2one → stock.move
    comodel_name='stock.move' string='Refurbished Inventory Move'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' string='Refurbished product'
  • to_refurbish Boolean
Public methods (2)
  • action_repair_done(self)
  • onchange_product_id(self)
    @api.onchange('product_id')

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi
REPOSITORY
REPOSITORYOCA/manufacture
GIT
GIThttps://github.com/OCA/manufacture.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/manufacture/tree/13.0/repair_refurbish
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYManufacturing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ForgeFlow S.L.
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ForgeFlow S.L.
COMMITTERS
COMMITTERSmreficent, ahenriquez, oca-travis, Weblate, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/manufacture
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:34:15
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - repair
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - sale_management
    - sale
    - sales_team
    - payment
    - account
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - utm
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
product_normal_form_view product.product.form product.product group Inherits product.product_normal_form_view
product_template_only_form_view product.template.product.form product.template group Inherits product.product_template_only_form_view
view_repair_order_form repair.order.form repair.order field Inherits repair.view_repair_order_form
view_repair_order_form_filter repair.order.select repair.order field Inherits repair.view_repair_order_form_filter
view_repair_order_tree repair.order.tree repair.order field Inherits repair.view_repair_order_tree
view_template_property_form product.template.stock.property.form.inherit product.template field Inherits stock.view_template_property_form
Models touched (6)

New fields (1)
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' domain="[('type', '=', 'product')]" string='Refurbished Product'
Public methods (0)

No public methods.

New fields (2)
  • property_stock_refurbish Many2one → stock.location
    comodel_name='stock.location' company_dependent=True domain=[('usage', 'like', 'production')] help='This stock location will be used, instead of the default one, as the source location for stock moves generated by repair orders when refurbishing takes place.' string='Refurbish Location'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' compute='_compute_refurbish_product' domain="[('type', '=', 'product')]" inverse='_inverse_refurbish_product' search='_search_refurbish_product' string='Refurbished Product'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • onchange_operation_type(self)
    @api.onchange('type', 'repair_id')

New fields (6)
  • location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Delivery Location'
  • refurbish_location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Refurbished Delivery Location'
  • refurbish_lot_id Many2one → stock.production.lot
    comodel_name='stock.production.lot' string='Refurbished Lot'
  • refurbish_move_id Many2one → stock.move
    comodel_name='stock.move' string='Refurbished Inventory Move'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' string='Refurbished product'
  • to_refurbish Boolean
Public methods (2)
  • action_repair_done(self)
  • onchange_product_id(self)
    @api.onchange('product_id')

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi
REPOSITORY
REPOSITORYOCA/manufacture
GIT
GIThttps://github.com/OCA/manufacture.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/manufacture/tree/12.0/repair_refurbish
VERSION
VERSION 1.1.3
CATEGORY
CATEGORYManufacturing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Eficent
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Eficent
COMMITTERS
COMMITTERSAkim Juillerat, Bhavesh Odedra, remi-filament, OCA Transbot, ahenriquez, oca-travis, Weblate, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/manufacture
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:20
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - repair
    - stock
    - product
    - base
    - decimal_precision
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - sale_management
    - sale
    - sales_team
    - payment
    - account
    - analytic
    - portal
    - http_routing
    - digest
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
product_normal_form_view product.product.form product.product group Inherits product.product_normal_form_view
product_template_only_form_view product.template.product.form product.template group Inherits product.product_template_only_form_view
view_repair_order_form repair.order.form repair.order field Inherits repair.view_repair_order_form
view_repair_order_form_filter repair.order.select repair.order field Inherits repair.view_repair_order_form_filter
view_repair_order_tree repair.order.tree repair.order field Inherits repair.view_repair_order_tree
view_template_property_form product.template.stock.property.form.inherit product.template field Inherits stock.view_template_property_form
Models touched (6)

New fields (1)
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' domain="[('type', '=', 'product')]" string='Refurbished Product'
Public methods (0)

No public methods.

New fields (2)
  • property_stock_refurbish Many2one → stock.location
    comodel_name='stock.location' company_dependent=True domain=[('usage', 'like', 'production')] help='This stock location will be used, instead of the default one, as the source location for stock moves generated by repair orders when refurbishing takes place.' string='Refurbish Location'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' compute='_compute_refurbish_product' domain="[('type', '=', 'product')]" inverse='_inverse_refurbish_product' search='_search_refurbish_product' string='Refurbished Product'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • onchange_operation_type(self)
    @api.onchange('type', 'repair_id')

New fields (6)
  • location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Delivery Location'
  • refurbish_location_dest_id Many2one → stock.location
    comodel_name='stock.location' string='Refurbished Delivery Location'
  • refurbish_lot_id Many2one → stock.production.lot
    comodel_name='stock.production.lot' string='Refurbished Lot'
  • refurbish_move_id Many2one → stock.move
    comodel_name='stock.move' string='Refurbished Inventory Move'
  • refurbish_product_id Many2one → product.product
    comodel_name='product.product' string='Refurbished product'
  • to_refurbish Boolean
Public methods (2)
  • action_repair_done(self)
    @api.multi
  • onchange_product_id(self)
    @api.onchange('product_id')

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi

New fields (0)

No new fields.

Public methods (1)
  • create(self, vals_list)
    @api.model_create_multi