52 lines
2.8 KiB
Python
52 lines
2.8 KiB
Python
from odoo import models, fields, api, exceptions, _
|
|
|
|
|
|
class YuthonEmployeeApproval(models.Model):
|
|
_name = 'yuthon.employee.approval'
|
|
_description = "员工指标库变更管理"
|
|
_rec_name = 'name'
|
|
_inherit = 'soong.workflow.mixin'
|
|
|
|
name = fields.Char('标题')
|
|
users_id = fields.Many2one('res.users', string="申请人", default=lambda self: self.env.user.id)
|
|
department_id = fields.Many2one(related='users_id.employee_id.department_id', string="部门")
|
|
yuthon_company = fields.Selection([('thtz', '集团本部'), ('thwg', '天河物管'),
|
|
('thlc', '天河粮储')], string="所属公司")
|
|
dimension = fields.Char('评价维度', required=True)
|
|
creation_time = fields.Datetime(string='申请日期', default=lambda self: fields.Datetime.now())
|
|
job_id = fields.Many2one('hr.job', string="岗位")
|
|
reason_text = fields.Html(string='申请事由')
|
|
code = fields.Char(string="编号", default=lambda self: self.env['ir.sequence'].next_by_code('library_changes_personal_code'))
|
|
|
|
change_employee_library_ids = fields.One2many("yuthon.index.employee",'change_employee_library_id',string="员工指标库库变更明细")
|
|
new_change_employee_library_ids = fields.One2many("new.employee.library.line",'new_change_employee_library_id',string="新员工指标库变更明细")
|
|
users_role_ids = fields.Many2many('soong.user.role', string='被考核角色', domain=[('user_type', '!=', 'lv_role')])
|
|
|
|
@api.onchange('change_employee_library_ids')
|
|
def _onchange_change_employee_library_ids(self):
|
|
new_lines = []
|
|
for old in self:
|
|
for new in old.change_employee_library_ids:
|
|
new_lines.append((0, 0,{
|
|
'new_users_role_ids': new.users_role_ids,
|
|
'new_department_ids': new.department_ids,
|
|
'new_employee_ids': new.employee_ids,
|
|
'new_dimension': new.dimension,
|
|
'new_start_index_time':new.start_index_time,
|
|
'new_end_index_time': new.end_index_time,
|
|
}))
|
|
self.new_change_employee_library_ids = new_lines
|
|
|
|
class NewEmployeeLibraryLine(models.Model):
|
|
_name = 'new.employee.library.line'
|
|
_description = "新员工指标库变更明细"
|
|
|
|
|
|
new_change_employee_library_id = fields.Many2one('yuthon.employee.approval', string='关联员工指标库变更')
|
|
new_users_role_ids = fields.Many2many('soong.user.role', string='角色', domain=[('user_type', '!=', 'lv_role')])
|
|
new_department_ids = fields.Many2many('hr.department', string='部门')
|
|
new_employee_ids = fields.Many2many('hr.employee', string='人员')
|
|
new_dimension = fields.Char('评价维度', required=True)
|
|
new_start_index_time = fields.Datetime('开始时间', required=True)
|
|
new_end_index_time = fields.Datetime('结束时间', required=True)
|