diff --git a/yuthon_hr_employee_approval/__manifest__.py b/yuthon_hr_employee_approval/__manifest__.py index 3d8f52370..c8b17c93b 100644 --- a/yuthon_hr_employee_approval/__manifest__.py +++ b/yuthon_hr_employee_approval/__manifest__.py @@ -32,6 +32,7 @@ 'views/yuthon_prepare_approval_views.xml', 'views/yuthon_rank_approval_views.xml', 'views/property_reimbursement_form_views.xml', + 'views/yuthon_renewal_approval_views.xml', 'views/yuthon_reassignment_approval_views.xml', 'views/yuthon_recruitment_approval_views.xml', 'views/yuthon_regularization_approval_views.xml', diff --git a/yuthon_hr_employee_approval/data/process_code_data.xml b/yuthon_hr_employee_approval/data/process_code_data.xml index b80d55f63..26adae08b 100644 --- a/yuthon_hr_employee_approval/data/process_code_data.xml +++ b/yuthon_hr_employee_approval/data/process_code_data.xml @@ -1,5 +1,12 @@ + + 合同续签-编号 + yuthon_renewal_approval_code + HX%(y)s%(month)s%(day)s + 3 + + 薪资核算申请表-编号 yuthon_account_approval_code diff --git a/yuthon_hr_employee_approval/models/__init__.py b/yuthon_hr_employee_approval/models/__init__.py index 7563ddd67..dfe70f0f8 100644 --- a/yuthon_hr_employee_approval/models/__init__.py +++ b/yuthon_hr_employee_approval/models/__init__.py @@ -23,4 +23,5 @@ from . import yuthon_appointment_approval from . import yuthon_transfer_approval from . import yuthon_retired_approval from . import property_reimbursement_form -from . import yuthon_department_change \ No newline at end of file +from . import yuthon_department_change +from . import yuthon_renewal_approval \ No newline at end of file diff --git a/yuthon_hr_employee_approval/models/yuthon_renewal_approval.py b/yuthon_hr_employee_approval/models/yuthon_renewal_approval.py new file mode 100644 index 000000000..af03839aa --- /dev/null +++ b/yuthon_hr_employee_approval/models/yuthon_renewal_approval.py @@ -0,0 +1,41 @@ +from odoo import models, fields, api +from odoo.exceptions import UserError + + +class YuthonRenewalApproval(models.Model): + _name = 'yuthon.renewal.approval' + _inherit = ['soong.workflow.mixin', 'mail.thread.main.attachment', 'mail.activity.mixin'] + _description = '合同续签' + + name = fields.Char(string='标题') + text = fields.Text(string='正文') + code = fields.Char(string="编号", + default=lambda self: self.env['ir.sequence'].next_by_code('yuthon_renewal_approval_code')) + 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="部门") + reason_application = fields.Text(string="事由") + documents_ids = fields.Many2many('ir.attachment', string="附件") + urgency_level = fields.Selection([('normal', '普件'), ('urgent', '急件'), ('emergency', '特急件')], string='紧急度', + default='normal') + active = fields.Boolean('Active', default=True, tracking=True) + work_end = fields.Boolean(string="结束") + + employee_id = fields.Many2one('hr.employee', string="新增自选员工") + card = fields.Char(string="身份证号") + department1_id = fields.Many2one('hr.department', string="新增自选部门") + user_sex = fields.Selection([('girl', '女'), ('boy', '男')], string="性别") + degree = fields.Selection([('high', '高中'), ('junior_college', '大专'), ('bachelor', '本科'), + ('master', '硕士'), ('doctor', '博士')], string="学历") + onboard_time = fields.Date(string='入职时间', default=fields.Datetime.now) + current_status = fields.Datetime(string='合同到期日') + + signing_status = fields.Text(string="劳动合同签订情况") + condition_review = fields.Text(string="续期条件审核") + job_id = fields.Many2one('hr.job', string="续签劳动合同岗位") + payroll_structure_id = fields.Many2one('hr.payroll.structure', string="续签劳动合同级档") + + def _get_default_name_title(self): + return self._description if self._description else self._name + + name_title = fields.Char(default=_get_default_name_title) + diff --git a/yuthon_hr_employee_approval/security/ir.model.access.csv b/yuthon_hr_employee_approval/security/ir.model.access.csv index 5f477a2af..0e3940ae4 100644 --- a/yuthon_hr_employee_approval/security/ir.model.access.csv +++ b/yuthon_hr_employee_approval/security/ir.model.access.csv @@ -51,3 +51,4 @@ access_yuthon_goods_line,yuthon_goods_line,model_yuthon_goods_line,base.group_us access_yuthon_department_change, yuthon_department_change,model_yuthon_department_change,base.group_user,1,1,1,1 access_department_change_approval_line,department_change_approval_line,model_department_change_approval_line,base.group_user,1,1,1,1 access_department_change_approval_line2,department_change_approval_line2,model_department_change_approval_line2,base.group_user,1,1,1,1 +access_yuthon_renewal_approval,yuthon_renewal_approval,model_yuthon_renewal_approval,base.group_user,1,1,1,1 diff --git a/yuthon_hr_employee_approval/views/yuthon_renewal_approval_views.xml b/yuthon_hr_employee_approval/views/yuthon_renewal_approval_views.xml new file mode 100644 index 000000000..40cbf56fc --- /dev/null +++ b/yuthon_hr_employee_approval/views/yuthon_renewal_approval_views.xml @@ -0,0 +1,82 @@ + + + + renewal.approval.tree + yuthon.renewal.approval + + + + + + + + + + renewal.approval.form + yuthon.renewal.approval + +
+ + + + + + + + + + + + + +
+

+ +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ + 合同续签申请 + yuthon.renewal.approval + tree,form + +
diff --git a/yuthon_work_brand/views/hr_menus.xml b/yuthon_work_brand/views/hr_menus.xml index c95120fa1..e1e93c724 100644 --- a/yuthon_work_brand/views/hr_menus.xml +++ b/yuthon_work_brand/views/hr_menus.xml @@ -424,6 +424,11 @@ parent="hr_set_process_menu_root_board" action="yuthon_hr_employee_approval.view_retired_approval_action" sequence="20"/> +