Equipments

hr_equipment
REPOSITORY
REPOSITORYodoo/odoo
GIT
GIThttps://github.com/odoo/odoo.git
GIT FOLDER
GIT FOLDERhttps://github.com/odoo/odoo/tree/9.0/hr_equipment
VERSION
VERSION 1.0
CATEGORY
CATEGORYHuman Resources
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONYes
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORS
MAINTAINERS
MAINTAINERS
COMMITTERS
COMMITTERSOdoo Translation Bot, Martin Trigaux, Fabien Pinckaers, Antony Lesuisse, Olivier Dony, Thibault Delavallée, Denis Ledoux, David Monjoie, Goffin Simon, Nicolas Martinelli, Nicolas Lempereur, Richard Mathot, Géry Debongnie, Aaron Bohy, Yannick Tivisse, qsm-odoo, Martin Geubelle
WEBSITE
WEBSITE
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-05 23:48:29
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - hr
    - base_setup
    - base
    - web_kanban
    - web
    - mail
    - bus
    - resource
    - web_tip
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
        Track employees' equipment and manage maintenance requests.

Code Analysis

Views touched (14)
XML IDNameModelTypeStatus
hr_equipment_category_view_form hr.equipment.category.form hr.equipment.category form New
hr_equipment_category_view_search hr.equipment.category.search hr.equipment.category search New
hr_equipment_category_view_tree hr.equipment.category.tree hr.equipment.category tree New
hr_equipment_config_settings_view_form hr.equipment.config.settings hr.equipment.config.settings form New
hr_equipment_request_view_form hr.equipment.request.form hr.equipment.request form New
hr_equipment_request_view_kanban hr.equipment.request.kanban hr.equipment.request kanban New
hr_equipment_request_view_search hr.equipment.request.search hr.equipment.request search New
hr_equipment_request_view_tree hr.equipment.request.tree hr.equipment.request tree New
hr_equipment_stage_view_search hr.equipment.stage.search hr.equipment.stage search New
hr_equipment_stage_view_tree hr.equipment.stage.tree hr.equipment.stage tree New
hr_equipment_view_form hr.equipment.form hr.equipment form New
hr_equipment_view_kanban hr.equipment.kanban hr.equipment kanban New
hr_equipment_view_search hr.equipment.search hr.equipment search New
hr_equipment_view_tree hr.equipment.tree hr.equipment tree New
Models touched (5)

New fields (20)
  • assign_date Date
    track_visibility='onchange' args: 'Assigned Date'
  • category_id Many2one → hr.equipment.category
    string='Asset Category' track_visibility='onchange' args: 'hr.equipment.category'
  • color Integer
    args: 'Color Index'
  • cost Float
    args: 'Cost'
  • department_id Many2one → hr.department
    string='Assigned to Department' track_visibility='onchange' args: 'hr.department'
  • employee_id Many2one → hr.employee
    string='Assigned to Employee' track_visibility='onchange' args: 'hr.employee'
  • equipment_assign_to Selection
    default='employee' required=True string='Used By' args: [('department', 'Department'), ('employee', 'Employee')]
  • location Char
    args: 'Location'
  • maintenance_count Integer
    compute='_compute_maintenance_count' store=True string='Maintenance'
  • maintenance_ids One2many → hr.equipment.request
    args: 'hr.equipment.request', 'equipment_id'
  • maintenance_open_count Integer
    compute='_compute_maintenance_count' store=True string='Current Maintenance'
  • model Char
    args: 'Model'
  • name Char
    required=True translate=True args: 'Asset Name'
  • note Text
    args: 'Note'
  • partner_id Many2one → res.partner
    domain="[('supplier', '=', 1)]" string='Vendor' args: 'res.partner'
  • partner_ref Char
    args: 'Vendor Reference'
  • scrap_date Date
    args: 'Scrap Date'
  • serial_no Char
    copy=False args: 'Serial Number'
  • user_id Many2one → res.users
    string='Technician' track_visibility='onchange' args: 'res.users'
  • warranty Date
    args: 'Warranty'
Public methods (4)
  • create(self, vals)
    @api.model
  • name_get(self)
    @api.multi
  • name_search(self, name, args=None, operator='ilike', limit=100)
    @api.model
  • write(self, vals)
    @api.multi

New fields (10)
  • alias_id Many2one → mail.alias
    help='Email alias for this equipment category. New emails will automatically create new maintenance request for this equipment category.' ondelete='cascade' required=True args: 'mail.alias', 'Alias'
  • color Integer
    args: 'Color Index'
  • equipment_count Integer
    compute='_compute_equipment_count' string='Equipment'
  • equipment_ids One2many → hr.equipment
    copy=False string='Equipments' args: 'hr.equipment', 'category_id'
  • fold Boolean
    compute='_compute_fold' store=True string='Folded in Maintenance Pipe'
  • maintenance_count Integer
    compute='_compute_maintenance_count' string='Maintenance'
  • maintenance_ids One2many → hr.equipment.request
    copy=False args: 'hr.equipment.request', 'category_id'
  • name Char
    required=True translate=True args: 'Category Name'
  • note Text
    translate=True args: 'Comments'
  • user_id Many2one → res.users
    default=<expr> track_visibility='onchange' args: 'res.users', 'Responsible'
Public methods (2)
  • create(self, vals)
    @api.model
  • unlink(self)
    @api.multi

New fields (2)
  • alias_domain Char
    args: 'Alias Domain'
  • equipment_alias_prefix Char
    args: 'Use the following alias to report internal equipment issue'
Public methods (3)
  • get_default_alias_domain(self)
    @api.multi
  • get_default_alias_equipment(self)
    @api.multi
  • set_default_alias_equipment(self)
    @api.multi

New fields (14)
  • active Boolean
    default=True help='Set active to false to hide the maintenance request without deleting it.'
  • category_id Many2one → hr.equipment.category
    string='Category' args: 'hr.equipment.category'
  • close_date Date
    args: 'Close Date'
  • color Integer
    args: 'Color Index'
  • department_id Many2one → hr.department
    string='Department' args: 'hr.department'
  • description Text
    args: 'Description'
  • employee_id Many2one → hr.employee
    default=_default_employee_get string='Employee' args: 'hr.employee'
  • equipment_id Many2one → hr.equipment
    index=True string='Asset' args: 'hr.equipment'
  • kanban_state Selection
    default='normal' required=True string='Kanban State' track_visibility='onchange' args: [('normal', 'In Progress'), ('blocked', 'Blocked'), ('done', 'Ready for next stage')]
  • name Char
    required=True args: 'Subjects'
  • priority Selection
    string='Priority' args: [('0', 'Very Low'), ('1', 'Low'), ('2', 'Normal'), ('3', 'High')]
  • request_date Date
    default=fields.Date.context_today track_visibility='onchange' args: 'Request Date'
  • stage_id Many2one → hr.equipment.stage
    default=_default_stage string='Stage' track_visibility='onchange' args: 'hr.equipment.stage'
  • user_id Many2one → res.users
    string='Assigned to' track_visibility='onchange' args: 'res.users'
Public methods (8)
  • archive_equipment_request(self)
    @api.multi
  • create(self, vals)
    @api.model
  • message_new(self, msg, custom_values=None)
    @api.model
    Overrides mail_thread message_new that is called by the mailgateway through message_process. This override updates the document according to the email.
  • onchange_category_id(self)
    @api.onchange('category_id')
  • onchange_department_or_employee_id(self)
    @api.onchange('employee_id', 'department_id')
  • onchange_equipment_id(self)
    @api.onchange('equipment_id')
  • reset_equipment_request(self)
    @api.multi
    Reinsert the equipment request into the maintenance pipe in the first stage
  • write(self, vals)
    @api.multi

New fields (4)
  • done Boolean
    args: 'Request Done'
  • fold Boolean
    args: 'Folded in Recruitment Pipe'
  • name Char
    required=True translate=True args: 'Name'
  • sequence Integer
    default=20 args: 'Sequence'
Public methods (0)

No public methods.