Skip to content
Extraits de code Groupes Projets
Valider fb4c7c0a rédigé par Hervé Silvant - CGScop's avatar Hervé Silvant - CGScop
Parcourir les fichiers

Ajout d'un temps de déplacement sur la ligne de temps

parent b6a3afbe
Branches
Étiquettes v1.1.0
Aucune requête de fusion associée trouvée
...@@ -80,7 +80,13 @@ class ScopHrTimesheet(models.Model): ...@@ -80,7 +80,13 @@ class ScopHrTimesheet(models.Model):
string="Heures supplémentaires autorisées", string="Heures supplémentaires autorisées",
compute="_compute_overtime_allowed", compute="_compute_overtime_allowed",
) )
travel_time = fields.Float(
string="Temps déplacement",
)
is_travel_time_allowed = fields.Boolean(
string="Temps de déplacement autorisé",
compute="_compute_travel_time_allowed",
)
calendar_l1 = fields.Char( calendar_l1 = fields.Char(
string="Ligne 1 calendrier", string="Ligne 1 calendrier",
compute="_compute_calendar_l1", compute="_compute_calendar_l1",
...@@ -98,6 +104,11 @@ class ScopHrTimesheet(models.Model): ...@@ -98,6 +104,11 @@ class ScopHrTimesheet(models.Model):
for rec in self: for rec in self:
rec.is_overtime_allowed = self.env.company.overtime_working rec.is_overtime_allowed = self.env.company.overtime_working
@api.depends("ur_id")
def _compute_travel_time_allowed(self):
for rec in self:
rec.is_travel_time_allowed = self.env.company.use_travel_time
@api.depends("ur_id") @api.depends("ur_id")
def _compute_ur_system_nb(self): def _compute_ur_system_nb(self):
for timesheet in self: for timesheet in self:
...@@ -285,6 +296,9 @@ class ScopHrTimesheet(models.Model): ...@@ -285,6 +296,9 @@ class ScopHrTimesheet(models.Model):
overtime_allowed = self.env.company.overtime_working overtime_allowed = self.env.company.overtime_working
if not overtime_allowed: if not overtime_allowed:
custom_context['hide_overtime'] = True custom_context['hide_overtime'] = True
travel_time_allowed = self.env.company.use_travel_time
if not travel_time_allowed:
custom_context['hide_travel_time'] = True
res = super(ScopHrTimesheet, self.with_context(custom_context)).fields_view_get( res = super(ScopHrTimesheet, self.with_context(custom_context)).fields_view_get(
view_id=view_id, view_type=view_type, toolbar=toolbar, submenu=submenu) view_id=view_id, view_type=view_type, toolbar=toolbar, submenu=submenu)
......
...@@ -23,3 +23,8 @@ class ResCompanyTmesheet(models.Model): ...@@ -23,3 +23,8 @@ class ResCompanyTmesheet(models.Model):
default=False, default=False,
help="Si cette option est cochée, un employé peut déclarer des heures supplémentaire" help="Si cette option est cochée, un employé peut déclarer des heures supplémentaire"
) )
use_travel_time = fields.Boolean(
string="Saisie des temps de déplacement",
default=False,
help="Si cette option est cochée, un employé peut saisir ses temps de déplacement"
)
...@@ -106,6 +106,12 @@ ...@@ -106,6 +106,12 @@
<field name="name" /> <field name="name" />
<field name="unit_amount" widget="float_time" /> <field name="unit_amount" widget="float_time" />
<field name="is_overtime_allowed" invisible="1" /> <field name="is_overtime_allowed" invisible="1" />
<field name="is_travel_time_allowed" invisible="1" />
<field
name="travel_time"
widget="float_time"
attrs="{'invisible': [('is_travel_time_allowed', '=', False)]}"
/>
<field <field
name="is_overtime" name="is_overtime"
widget="boolean_toggle" widget="boolean_toggle"
...@@ -186,6 +192,12 @@ ...@@ -186,6 +192,12 @@
<field name="name" /> <field name="name" />
<field name="unit_amount" widget="float_time" /> <field name="unit_amount" widget="float_time" />
<field name="is_overtime_allowed" invisible="1" /> <field name="is_overtime_allowed" invisible="1" />
<field name="is_travel_time_allowed" invisible="1" />
<field
name="travel_time"
widget="float_time"
attrs="{'invisible': [('is_travel_time_allowed', '=', False)]}"
/>
<field <field
name="is_overtime" name="is_overtime"
widget="boolean_toggle" widget="boolean_toggle"
...@@ -280,6 +292,11 @@ ...@@ -280,6 +292,11 @@
>{'readonly': [('state', 'in', ('submit', 'valid'))]}</attribute> >{'readonly': [('state', 'in', ('submit', 'valid'))]}</attribute>
</field> </field>
<field name="unit_amount" position="after"> <field name="unit_amount" position="after">
<field
name="travel_time"
widget="float_time"
invisible="context.get('hide_travel_time')"
/>
<field <field
name="is_overtime" name="is_overtime"
widget="boolean_toggle" widget="boolean_toggle"
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
attrs="{'invisible': [('day_working', '=', True)]}" attrs="{'invisible': [('day_working', '=', True)]}"
/> />
<field name="overtime_working" widget="boolean_toggle" /> <field name="overtime_working" widget="boolean_toggle" />
<field name="use_travel_time" widget="boolean_toggle" />
</group> </group>
</group> </group>
</page> </page>
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter