Repair Picking

repair_picking
REPOSITORY
REPOSITORYOCA/repair
GIT
GIThttps://github.com/OCA/repair.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/repair/tree/17.0/repair_picking
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYRepair
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
WEBSITE
WEBSITEhttps://github.com/OCA/repair
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:07
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/repair:
    - repair_restrict_lot
    - repair_stock
OCA/stock-logistics-workflow:
    - stock_restrict_lot
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 extends the repair management functionality in Odoo,
providing additional options for handling the repair process in a more
customizable and efficient way. It allows the configuration of repair
steps based on specific business requirements and adds new picking types
for managing component addition and removal in repair orders.

The main features are:

- Customize repair steps: Choose between a 1-step, 2-step, or 3-step
  repair process.
- Add and recycle components during the repair process using separate
  picking types.
- Associate repair orders with pickings for improved traceability.
- Automatic creation of pickings and procurement routes based on the
  selected repair steps.
- Manage repair locations and routes more efficiently with warehouse
  settings.

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_warehouse_inherit_repair Stock Warehouse Inherit Repair stock.warehouse xpath Inherits stock.view_warehouse
Models touched (4)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • procurement_group_id Many2one → procurement.group
    copy=False args: 'procurement.group', 'Procurement Group'
Public methods (1)
  • action_repair_cancel(self)

New fields (0)

No new fields.

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

New fields (5)
  • add_c_type_id Many2one → stock.picking.type
    comodel_name='stock.picking.type' help="This operation will be used to move components to repair location when needed by repair lines of type 'Add'." string='Add Component to Repair'
  • recycle_c_type_id Many2one → stock.picking.type
    comodel_name='stock.picking.type' help="This operation will be used to move components out of the repair location when needed by repair lines of type 'Recycle'." string='Recycle component from Repair'
  • repair_location_id Many2one → stock.location
    string='Repair Location' args: 'stock.location'
  • repair_route_id Many2one → stock.route
    string='Repair Route' args: 'stock.route'
  • repair_steps Selection
    default='1_step' args: [('1_step', 'Repair'), ('2_steps', 'Pick component, repair'), ('3_steps', 'Pick component, repair, store removed component')]
Public methods (3)
  • update_picking_types(self, repair_steps, repair_location_id)
  • update_repair_routes(self, repair_steps, repair_location_id)
  • write(self, vals)
REPOSITORY
REPOSITORYOCA/manufacture
GIT
GIThttps://github.com/OCA/manufacture.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/manufacture/tree/14.0/repair_picking
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYRepair
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, DavidJForgeFlow
WEBSITE
WEBSITEhttps://github.com/OCA/manufacture
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:03
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/manufacture:
    - repair_stock_move
    - repair_stock
OCA/stock-logistics-workflow:
    - stock_move_forced_lot
odoo/odoo:
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - repair
    - 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 (1)
XML IDNameModelTypeStatus
view_warehouse_inherit_repair Stock Warehouse Inherit Repair stock.warehouse xpath Inherits stock.view_warehouse
Models touched (5)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (2)
  • create(self, vals)
  • onchange_operation_type(self)
    @api.onchange('type', 'product_id')

New fields (2)
  • location_id Many2one
    default=_get_default_location_id
  • procurement_group_id Many2one → procurement.group
    copy=False args: 'procurement.group', 'Procurement Group'
Public methods (2)
  • action_repair_cancel(self)
  • action_repair_confirm(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (5)
  • add_c_type_id Many2one → stock.picking.type
    string='Add Component to Repair' args: 'stock.picking.type'
  • remove_c_type_id Many2one → stock.picking.type
    string='Remove component from Repair' args: 'stock.picking.type'
  • repair_location_id Many2one → stock.location
    string='Repair Location' args: 'stock.location'
  • repair_route_id Many2one → stock.location.route
    string='Repair Route' args: 'stock.location.route'
  • repair_steps Selection
    default='1_step' string='Repair Steps' args: [('1_step', 'Repair'), ('2_steps', 'Pick component, repair'), ('3_steps', 'Pick component, repair, store removed component')]
Public methods (3)
  • update_picking_types(self, repair_steps, repair_location_id)
  • update_repair_routes(self, repair_steps, repair_location_id)
  • write(self, vals)