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

[FIX] calculations for cashflow

parent 2c9787a4
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -62,33 +62,30 @@ class LeFilamentTdb(models.Model): ...@@ -62,33 +62,30 @@ class LeFilamentTdb(models.Model):
# Trésorerie # Trésorerie
self.env.cr.execute( self.env.cr.execute(
"SELECT SUM(amount_total_signed) \ "SELECT SUM(amount) \
FROM account_move \ FROM account_bank_statement_line \
WHERE date < date_trunc('month', %s \ WHERE date < date_trunc('month', %s \
+ interval '1' month) \ + interval '1' month)",
AND statement_line_id is not NULL;",
(date_tdb,), (date_tdb,),
) )
treso_total = self.env.cr.fetchone()[0] treso_total = self.env.cr.fetchone()[0]
# CHARGES # CHARGES
self.env.cr.execute( self.env.cr.execute(
"SELECT SUM(amount_total_signed) \ "SELECT SUM(amount) \
FROM account_move \ FROM account_bank_statement_line \
WHERE amount_total_signed < 0 \ WHERE amount < 0 \
AND date >= date_trunc('month', %s) \ AND date >= date_trunc('month', %s) \
AND date < date_trunc('month', %s + interval '1' month) \ AND date < date_trunc('month', %s + interval '1' month)",
AND statement_line_id is not NULL;",
(date_tdb, date_tdb), (date_tdb, date_tdb),
) )
charges = self.env.cr.fetchone()[0] charges = self.env.cr.fetchone()[0]
# ENCAISSE # ENCAISSE
self.env.cr.execute( self.env.cr.execute(
"SELECT SUM(amount_total_signed) \ "SELECT SUM(amount) \
FROM account_move \ FROM account_bank_statement_line \
WHERE amount_total_signed > 0 \ WHERE amount > 0 \
AND date >= date_trunc('month', %s) \ AND date >= date_trunc('month', %s) \
AND date < date_trunc('month', %s + interval '1' month) \ AND date < date_trunc('month', %s + interval '1' month)",
AND statement_line_id is not NULL;",
(date_tdb, date_tdb), (date_tdb, date_tdb),
) )
encaisse = self.env.cr.fetchone()[0] encaisse = self.env.cr.fetchone()[0]
...@@ -240,23 +237,21 @@ class LeFilamentTdb(models.Model): ...@@ -240,23 +237,21 @@ class LeFilamentTdb(models.Model):
FROM account_bank_statement FROM account_bank_statement
ORDER BY ID DESC LIMIT 1 ORDER BY ID DESC LIMIT 1
) AS date_maj, ) AS date_maj,
(SELECT SUM(amount_total_signed) (SELECT SUM(amount)
FROM account_move FROM account_bank_statement_line
WHERE statement_line_id is NOT NULL
) AS tresorerie, ) AS tresorerie,
(SELECT SUM(amount_total_signed) (SELECT SUM(amount)
FROM account_move FROM account_bank_statement_line
WHERE amount_total_signed > 0 AND date > %s WHERE amount > 0 AND date > %s
AND statement_line_id is NOT NULL
) AS entree, ) AS entree,
(SELECT SUM(amount_total_signed) (SELECT SUM(amount)
FROM account_move FROM account_bank_statement_line
WHERE amount_total_signed < 0 AND date > %s WHERE amount < 0 AND date > %s
AND statement_line_id is NOT NULL AND statement_line_id is NOT NULL
) AS sortie, ) AS sortie,
(SELECT SUM(amount_total_signed) (SELECT SUM(amount)
FROM account_move FROM account_bank_statement_line
WHERE date > %s AND statement_line_id is NOT NULL WHERE date > %s
) AS variation, ) AS variation,
(SELECT SUM(e.total_amount) (SELECT SUM(e.total_amount)
FROM hr_expense_sheet es, hr_expense e FROM hr_expense_sheet es, hr_expense e
...@@ -329,13 +324,12 @@ class LeFilamentTdb(models.Model): ...@@ -329,13 +324,12 @@ class LeFilamentTdb(models.Model):
self._cr.execute( self._cr.execute(
""" """
SELECT to_char(date_trunc('month', date),'YYYY-MM') AS mois, SELECT to_char(date_trunc('month', date),'YYYY-MM') AS mois,
SUM(CASE WHEN amount_total_signed > 0 SUM(CASE WHEN amount > 0
THEN amount_total_signed ELSE 0 END) AS entree, THEN amount_total_signed ELSE 0 END) AS entree,
SUM(CASE WHEN amount_total_signed < 0 SUM(CASE WHEN amount < 0
THEN amount_total_signed ELSE 0 END) AS sortie, THEN amount_total_signed ELSE 0 END) AS sortie,
SUM(amount_total_signed) AS variation SUM(amount) AS variation
FROM account_move FROM account_bank_statement_line
WHERE statement_line_id is not NULL
GROUP BY date_trunc('month', date) GROUP BY date_trunc('month', date)
ORDER BY date_trunc('month', date); ORDER BY date_trunc('month', date);
""" """
...@@ -366,11 +360,10 @@ class LeFilamentTdb(models.Model): ...@@ -366,11 +360,10 @@ class LeFilamentTdb(models.Model):
self._cr.execute( self._cr.execute(
""" """
SELECT to_char(date_trunc('month', date),'YYYY-MM') AS mois, SELECT to_char(date_trunc('month', date),'YYYY-MM') AS mois,
SUM(SUM(amount_total_signed)) OVER ( SUM(SUM(amount)) OVER (
ORDER BY date_trunc('month', date) ORDER BY date_trunc('month', date)
) AS treso ) AS treso
FROM account_move FROM account_bank_statement_line
WHERE statement_line_id is not NULL
GROUP BY date_trunc('month', date) GROUP BY date_trunc('month', date)
ORDER BY date_trunc('month', date) DESC LIMIT 6; ORDER BY date_trunc('month', date) DESC LIMIT 6;
""" """
...@@ -403,7 +396,8 @@ class LeFilamentTdb(models.Model): ...@@ -403,7 +396,8 @@ class LeFilamentTdb(models.Model):
ELSE 0 END ELSE 0 END
) AS f_client ) AS f_client
FROM account_move FROM account_move
WHERE state != 'draft' AND state != 'paid' WHERE state = 'posted'
AND payment_state IN ('not_paid','in_payment','partial')
GROUP BY date_trunc('month', invoice_date_due) GROUP BY date_trunc('month', invoice_date_due)
ORDER BY date_trunc('month', invoice_date_due); ORDER BY date_trunc('month', invoice_date_due);
""" """
......
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