fix like Effective Form with contrat
This commit is contained in:
parent
5b17bc2a29
commit
62a28bd9cc
|
|
@ -44,12 +44,12 @@ class EmployeeEffectiveForm(models.Model):
|
||||||
employee_id = self.env['employee.effective.form'].search([('id', '!=', i.id),('employee_id', '=', i.employee_id.id), ('state', '=', 'done')], limit=1)
|
employee_id = self.env['employee.effective.form'].search([('id', '!=', i.id),('employee_id', '=', i.employee_id.id), ('state', '=', 'done')], limit=1)
|
||||||
if employee_id:
|
if employee_id:
|
||||||
raise exceptions.Warning(_('Sorry, Not possible to request a effective Form more than once'))
|
raise exceptions.Warning(_('Sorry, Not possible to request a effective Form more than once'))
|
||||||
if i.contract_start:
|
if i.contract_start and i.effective_form_date:
|
||||||
if i.effective_form_date < i.contract_start:
|
if i.effective_form_date < i.contract_start:
|
||||||
raise exceptions.Warning(_('Sorry, The First Hiring Date must be after the Contract Start Date'))
|
raise exceptions.Warning(_('Sorry, The First Hiring Date must be after the Contract Start Date'))
|
||||||
|
|
||||||
if i.employee_id.contract_id.state != 'program_directory':
|
#if i.employee_id.contract_id.state != 'program_directory':
|
||||||
raise exceptions.Warning(_('Sorry, The Employee Contract Must Be Approved Before Hiring Date'))
|
#raise exceptions.Warning(_('Sorry, The Employee Contract Must Be Approved Before Hiring Date'))
|
||||||
if i.employee_id.state != 'open':
|
if i.employee_id.state != 'open':
|
||||||
raise exceptions.Warning(_('Sorry, The Employee Record Must Be Approved Before Hiring Date'))
|
raise exceptions.Warning(_('Sorry, The Employee Record Must Be Approved Before Hiring Date'))
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -352,8 +352,8 @@
|
||||||
|
|
||||||
|
|
||||||
<field name="user_id" position="attributes">
|
<field name="user_id" position="attributes">
|
||||||
<attribute name="attrs">{'readonly':[('state','!=','draft')]}
|
<attribute name="attrs">{'readonly':[('state','!=','draft')]}</attribute>
|
||||||
</attribute>
|
<attribute name="domain">[('employee_ids', '=', False)]</attribute>
|
||||||
</field>
|
</field>
|
||||||
|
|
||||||
<!-- <field name="address_home_id" position="attributes">-->
|
<!-- <field name="address_home_id" position="attributes">-->
|
||||||
|
|
|
||||||
|
|
@ -3849,3 +3849,11 @@ msgstr "آخر راتب للتأمينات"
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "The Last Salary Gosi After The Age 50 Years."
|
msgid "The Last Salary Gosi After The Age 50 Years."
|
||||||
msgstr "آخر راتب في التأمينات الاجتماعية بعد سن الخمسين"
|
msgstr "آخر راتب في التأمينات الاجتماعية بعد سن الخمسين"
|
||||||
|
|
||||||
|
|
||||||
|
#. module: hr_contract_custom
|
||||||
|
#: code:addons/hr_contract_custom/models/hr_contract.py:0
|
||||||
|
#: model_terms:ir.ui.view,arch_db:hr_contract_custom.hr_contract_form_view
|
||||||
|
#, python-format
|
||||||
|
msgid "Effective Form"
|
||||||
|
msgstr "مباشرة العمل"
|
||||||
|
|
|
||||||
|
|
@ -667,6 +667,17 @@ class Contract(models.Model):
|
||||||
|
|
||||||
def program_directory(self):
|
def program_directory(self):
|
||||||
#self.chick_saudi_percentage()
|
#self.chick_saudi_percentage()
|
||||||
|
self.employee_id.contract_id = self.id
|
||||||
|
hiring_date = self.employee_id.first_hiring_date
|
||||||
|
effective = self.env['employee.effective.form'].search([('contract_id', '=', self.id)])
|
||||||
|
if not effective and not hiring_date:
|
||||||
|
self.env['employee.effective.form'].create({
|
||||||
|
'employee_id': self.employee_id.id,
|
||||||
|
'contract_id': self.id,
|
||||||
|
'department_id': self.department_id.id,
|
||||||
|
'contract_start': self.date_start,
|
||||||
|
'effective_form_date': self.date_start,
|
||||||
|
'state': 'draft'})
|
||||||
self.state = "program_directory"
|
self.state = "program_directory"
|
||||||
|
|
||||||
def unlink(self):
|
def unlink(self):
|
||||||
|
|
@ -684,6 +695,20 @@ class Contract(models.Model):
|
||||||
{'calendar_id': self.working_hours.id})
|
{'calendar_id': self.working_hours.id})
|
||||||
|
|
||||||
|
|
||||||
|
# Smart Button to access effective form
|
||||||
|
|
||||||
|
def action_view_effective_frm(self):
|
||||||
|
effective_id = self.env['employee.effective.form'].search([('employee_id', '=', self.employee_id.id)])
|
||||||
|
return {
|
||||||
|
'name': _('Employee Effective Form'),
|
||||||
|
'domain': [('id', '=', effective_id.id)],
|
||||||
|
'view_mode': 'tree,form',
|
||||||
|
'res_model': 'employee.effective.form',
|
||||||
|
'view_id': False,
|
||||||
|
'type': 'ir.actions.act_window',
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
class VacationDest(models.Model):
|
class VacationDest(models.Model):
|
||||||
_name = 'hr.vacation.dest'
|
_name = 'hr.vacation.dest'
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,14 @@
|
||||||
<field name="priority" eval="16"/>
|
<field name="priority" eval="16"/>
|
||||||
<field name="inherit_id" ref="hr_contract.hr_contract_view_form"/>
|
<field name="inherit_id" ref="hr_contract.hr_contract_view_form"/>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
|
<xpath expr="//div" position="before">
|
||||||
|
<!-- Create effective from directly from contract -->
|
||||||
|
<div class="oe_button_box" name="button_box">
|
||||||
|
<button class="btn-primary" name="action_view_effective_frm"
|
||||||
|
string="Effective Form" widget="statinfo" icon="fa-book" type="object"/>
|
||||||
|
</div>
|
||||||
|
</xpath>
|
||||||
|
|
||||||
<header position="replace">
|
<header position="replace">
|
||||||
<header>
|
<header>
|
||||||
<button name="program_directory" string="program Director" class="oe_highlight" type="object"
|
<button name="program_directory" string="program Director" class="oe_highlight" type="object"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue