Skip to content
Extraits de code Groupes Projets
Valider dd3babac rédigé par Benjamin - Le Filament's avatar Benjamin - Le Filament
Parcourir les fichiers

[FIX] wrong values for employee query

parent 5a273831
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -444,11 +444,11 @@ class LeFilamentTdb(models.Model):
return result
def _employee_time(self, date_start=None, date_end=None):
clause = "where 1=1 "
clause = ""
if date_start:
clause += f"and line_date >= '{date_start}' "
clause += f" and aal.date >= '{date_start}'"
if date_end:
clause += f"and line_date <= '{date_end}' "
clause += f" and aal.date <= '{date_end}'"
query = """
select
......@@ -456,14 +456,13 @@ class LeFilamentTdb(models.Model):
sum(production) as "Prod",
sum(internal) as "Interne",
sum(revenue) as "CA"
from
(
from (
select
p.name as employee,
0 as production,
0 as internal,
aal.amount as revenue,
aal.date as line_date
sum(aal.amount) as revenue
from
account_analytic_line aal
left join
......@@ -474,15 +473,16 @@ class LeFilamentTdb(models.Model):
res_partner p on aa.partner_id = p.id
where
aap.id = 3
%s
group by p.name
union
select
e.name as employee,
case when aal.partner_id != 1 or aal.partner_id is null and aal.holiday_id is null then unit_amount else 0 end as production,
case when aal.partner_id = 1 and aal.holiday_id is null then unit_amount else 0 end as internal,
0 as revenue,
aal.date as line_date
sum(case when aal.partner_id != 1 or aal.partner_id is null and aal.holiday_id is null then unit_amount else 0 end) as production,
sum(case when aal.partner_id = 1 and aal.holiday_id is null then unit_amount else 0 end) as internal,
0 as revenue
from
account_analytic_line aal
left join
......@@ -493,13 +493,13 @@ class LeFilamentTdb(models.Model):
hr_leave_type lt on l.holiday_status_id = lt.id
where
aal.project_id is not null
and (lt.active is true or lt.active is null)
) query
%s
group by e.name
) query
group by employee
order by sum(production) desc
"""
self.env.cr.execute(query, (AsIs(clause),))
self.env.cr.execute(query, (AsIs(clause), AsIs(clause),))
result = self.env.cr.dictfetchall()
return result
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