合并企业版代码(未测试,先提交到测试分支)
This commit is contained in:
39
mrp_workorder_hr/models/mrp_workcenter.py
Normal file
39
mrp_workorder_hr/models/mrp_workcenter.py
Normal file
@@ -0,0 +1,39 @@
|
||||
from ast import literal_eval
|
||||
|
||||
from odoo import models, fields
|
||||
from odoo.http import request
|
||||
|
||||
|
||||
class MrpWorkcenter(models.Model):
|
||||
_inherit = 'mrp.workcenter'
|
||||
|
||||
allow_employee = fields.Boolean("Requires Log In")
|
||||
employee_ids = fields.Many2many(
|
||||
'hr.employee', string="employees with access",
|
||||
help='if left empty, all employees can log in to the workcenter')
|
||||
currency_id = fields.Many2one(related='company_id.currency_id')
|
||||
employee_costs_hour = fields.Monetary(string='Employee Hourly Cost', currency_field='currency_id', default=0.0)
|
||||
|
||||
def action_work_order(self):
|
||||
action = super().action_work_order()
|
||||
# for the call to literal_eval
|
||||
context = action.get('context', '{}')
|
||||
context = context.replace('active_id', str(self.id))
|
||||
action['context'] = dict(literal_eval(context), employee_id=request.session.get('employee_id'))
|
||||
return action
|
||||
|
||||
|
||||
class MrpWorkcenterProductivity(models.Model):
|
||||
_inherit = "mrp.workcenter.productivity"
|
||||
|
||||
employee_id = fields.Many2one(
|
||||
'hr.employee', string="Employee",
|
||||
help='employee that record this working time')
|
||||
|
||||
def _check_open_time_ids(self):
|
||||
self.env['mrp.productivity.time']._read_group([
|
||||
('workorder_id', 'in', self.workorder_id.ids),
|
||||
('date_stop', '=', False),
|
||||
('employee_id', '!=', False),
|
||||
], ['employee_id', 'workorder_id'], ['employee_id', 'workorder_id'], lazy=False)
|
||||
# TODO make check on employees
|
||||
Reference in New Issue
Block a user