添加功能

This commit is contained in:
zhou
2025-05-29 16:53:21 +08:00
parent 360f13cdcf
commit 3cf3fe57bb
7 changed files with 139 additions and 1 deletions
@@ -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',
@@ -1,5 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="yuthon_renewal_approval_code" model="ir.sequence">
<field name="name">合同续签-编号</field>
<field name="code">yuthon_renewal_approval_code</field>
<field name="prefix">HX%(y)s%(month)s%(day)s</field>
<field name="padding">3</field>
<field name="company_id" eval="False"/>
</record>
<record id="yuthon_account_approval_code" model="ir.sequence">
<field name="name">薪资核算申请表-编号</field>
<field name="code">yuthon_account_approval_code</field>
@@ -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
from . import yuthon_department_change
from . import yuthon_renewal_approval
@@ -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)
@@ -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
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
51 access_yuthon_department_change yuthon_department_change model_yuthon_department_change base.group_user 1 1 1 1
52 access_department_change_approval_line department_change_approval_line model_department_change_approval_line base.group_user 1 1 1 1
53 access_department_change_approval_line2 department_change_approval_line2 model_department_change_approval_line2 base.group_user 1 1 1 1
54 access_yuthon_renewal_approval yuthon_renewal_approval model_yuthon_renewal_approval base.group_user 1 1 1 1
@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="view_renewal_approval_tree" model="ir.ui.view">
<field name="name">renewal.approval.tree</field>
<field name="model">yuthon.renewal.approval</field>
<field name="arch" type="xml">
<tree string="合同续签申请">
<field name="name"/>
<field name="users_id"/>
<field name="employee_id"/>
</tree>
</field>
</record>
<record id="view_renewal_approval_form" model="ir.ui.view">
<field name="name">renewal.approval.form</field>
<field name="model">yuthon.renewal.approval</field>
<field name="arch" type="xml">
<form string="合同续签申请">
<sheet>
<widget name="web_ribbon" title="普件" bg_color="text-bg-success"
invisible="urgency_level != 'normal'"/>
<widget name="web_ribbon" title="急件" bg_color="text-bg-warning"
invisible="urgency_level != 'urgent'"/>
<widget name="web_ribbon" title="特级" bg_color="text-bg-danger"
invisible="urgency_level != 'emergency'"/>
<group col="3">
<group>
<field name="code" string="流水号" readonly="1"/>
</group>
<group>
<field name="urgency_level" readonly="1"/>
</group>
<group/>
</group>
<div class="col-12 text-center">
<h1>
<field name="name_title" readonly="1"/>
</h1>
</div>
<div class="oe_title">
<label for="name"/>
<h1>
<field name="name"/>
</h1>
</div>
<group string="审批事项">
<group>
<field name="users_id"/>
<field name="work_end" invisible="1"/>
<field name="reason_application"/>
<field name="documents_ids" widget="preview_many2many"/>
</group>
</group>
<group string="续签员工" col="2">
<group>
<field name="employee_id"/>
<field name="card"/>
<field name="department1_id"/>
<field name="current_status"/>
</group>
<group>
<field name="user_sex"/>
<field name="degree"/>
<field name="onboard_time"/>
</group>
</group>
<group string="合同信息">
<field name="signing_status"/>
<field name="condition_review"/>
<field name="job_id"/>
<field name="payroll_structure_id"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="view_yuthon_renewal_approval_action" model="ir.actions.act_window">
<field name="name">合同续签申请</field>
<field name="res_model">yuthon.renewal.approval</field>
<field name="view_mode">tree,form</field>
</record>
</odoo>
+5
View File
@@ -424,6 +424,11 @@
parent="hr_set_process_menu_root_board"
action="yuthon_hr_employee_approval.view_retired_approval_action"
sequence="20"/>
<menuitem id="hr_yuthon_renewal_approval_board"
name="合同续签"
parent="hr_set_process_menu_root_board"
action="yuthon_hr_employee_approval.view_yuthon_renewal_approval_action"
sequence="25"/>
<menuitem id="property_reimbursement_form_menu"
sequence="30"
name="体检费报销单"