Skip to content
Extraits de code Groupes Projets
Valider 5b300f8f rédigé par Benjamin's avatar Benjamin
Parcourir les fichiers

[add] Pipe sur plusieurs années

parent 048f892f
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -106,6 +106,7 @@ class LeFilamentTdb(models.Model): ...@@ -106,6 +106,7 @@ class LeFilamentTdb(models.Model):
'pipe': 0, 'pipe': 0,
'pipe_win': 0, 'pipe_win': 0,
'pipe_to_win': 0, 'pipe_to_win': 0,
'pipe_n1': 0,
'tresorerie': 0, 'tresorerie': 0,
'entree': 0, 'entree': 0,
'sortie': 0, 'sortie': 0,
...@@ -122,9 +123,10 @@ class LeFilamentTdb(models.Model): ...@@ -122,9 +123,10 @@ class LeFilamentTdb(models.Model):
(select count(*) from account_invoice) as id, (select count(*) from account_invoice) as id,
(select sum(amount_untaxed) from account_invoice where state!='draft' and type='out_invoice' and date >= date_trunc('year', current_date) ) as facture, (select sum(amount_untaxed) from account_invoice where state!='draft' and type='out_invoice' and date >= date_trunc('year', current_date) ) as facture,
(select sum(residual_company_signed) from account_invoice where state!='draft' and type='out_invoice' ) as a_encaisser, (select sum(residual_company_signed) from account_invoice where state!='draft' and type='out_invoice' ) as a_encaisser,
(select sum(planned_revenue*probability/100) from crm_lead where active=True) as pipe, (select sum(planned_revenue*probability/100) from crm_lead where active=True and (date_deadline < date_trunc('year', current_date + interval '1' year) or date_deadline is null) ) as pipe,
(select sum(planned_revenue*probability/100) from crm_lead where active=True and probability=100) as pipe_win, (select sum(planned_revenue*probability/100) from crm_lead where active=True and date_deadline >= date_trunc('year', current_date + interval '1' year) ) as pipe_n1,
(select sum(planned_revenue*probability/100) from crm_lead where active=True and probability!=100) as pipe_to_win, (select sum(planned_revenue*probability/100) from crm_lead where active=True and probability=100 and (date_deadline < date_trunc('year', current_date + interval '1' year) or date_deadline is null) ) as pipe_win,
(select sum(planned_revenue*probability/100) from crm_lead where active=True and probability!=100 and (date_deadline < date_trunc('year', current_date + interval '1' year) or date_deadline is null) ) as pipe_to_win,
(select date from account_bank_statement ORDER BY ID DESC LIMIT 1) as date_maj, (select date from account_bank_statement ORDER BY ID DESC LIMIT 1) as date_maj,
(select sum(amount) from account_bank_statement_line ) as tresorerie, (select sum(amount) from account_bank_statement_line ) as tresorerie,
(select sum(amount) from account_bank_statement_line where amount > 0 and date >= date_trunc('year', current_date) ) as entree, (select sum(amount) from account_bank_statement_line where amount > 0 and date >= date_trunc('year', current_date) ) as entree,
...@@ -140,16 +142,24 @@ class LeFilamentTdb(models.Model): ...@@ -140,16 +142,24 @@ class LeFilamentTdb(models.Model):
self._cr.execute("select sum(capital) as capital from hr_employee;") self._cr.execute("select sum(capital) as capital from hr_employee;")
capital = self._cr.dictfetchall() capital = self._cr.dictfetchall()
if datas[0]['facture']:
res['facture'] =+ datas[0]['facture'] res['facture'] =+ datas[0]['facture']
if datas[0]['a_encaisser']:
res['a_encaisser'] =+ datas[0]['a_encaisser'] res['a_encaisser'] =+ datas[0]['a_encaisser']
if datas[0]['pipe']:
res['pipe'] =+ datas[0]['pipe'] res['pipe'] =+ datas[0]['pipe']
if datas[0]['pipe_win']:
res['pipe_win'] =+ datas[0]['pipe_win'] res['pipe_win'] =+ datas[0]['pipe_win']
if datas[0]['pipe_to_win']:
res['pipe_to_win'] =+ datas[0]['pipe_to_win'] res['pipe_to_win'] =+ datas[0]['pipe_to_win']
if datas[0]['pipe_n1']:
res['pipe_n1'] =+ datas[0]['pipe_n1']
res['tresorerie'] =+ datas[0]['tresorerie'] res['tresorerie'] =+ datas[0]['tresorerie']
res['date_maj'] = datas[0]['date_maj'] res['date_maj'] = datas[0]['date_maj']
res['entree'] =+ datas[0]['entree'] res['entree'] =+ datas[0]['entree']
res['sortie'] =+ datas[0]['sortie'] res['sortie'] =+ datas[0]['sortie']
res['variation'] =+ datas[0]['variation'] res['variation'] =+ datas[0]['variation']
if datas[0]['commandes']:
res['commandes'] =+ datas[0]['commandes'] res['commandes'] =+ datas[0]['commandes']
res['cca'] =+ datas[0]['cca'] res['cca'] =+ datas[0]['cca']
res['target'] =+ ca_target[0]['ca_target'] res['target'] =+ ca_target[0]['ca_target']
......
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
<div class="yeardashboard"> <div class="yeardashboard">
<div class="row"> <div class="row">
<!-- COLONNE 1 --> <!-- COLONNE 1 -->
<div class="col-xs-6 col-sm-4"> <div class="col-xs-12 col-sm-6 col-md-4">
<h3>En Cours</h3> <h3>En Cours</h3>
<div class="col-xs-12"> <div class="col-xs-12">
<div class="card"> <div class="card">
...@@ -101,17 +101,27 @@ ...@@ -101,17 +101,27 @@
</p> </p>
</div> </div>
</div> </div>
<div class="col-xs-12"> <div class="col-xs-12 dashboard-tab">
<div class="card"> <ul class="nav nav-tabs" id="myTab1">
<p class="card-header">Pipe</p> <li class="active"><a data-toggle="tab" href="#pipe">Pipe</a></li>
<li><a data-toggle="tab" href="#pipe_n1">Pipe N+1</a></li>
</ul>
<div class="tab-content card-tab" id="myTab1Content">
<div id="pipe" class="tab-pane fade active in">
<p class="card-number"> <p class="card-number">
<t t-esc="widget.render_monetary(widget.values.pipe)"></t> <t t-esc="widget.render_monetary(widget.values.pipe)"></t>
</p> </p>
</div> </div>
<div id="pipe_n1" class="tab-pane fade">
<p class="card-number">
<t t-esc="widget.render_monetary(widget.values.pipe_n1)"></t>
</p>
</div>
</div>
</div> </div>
</div> </div>
<!-- COLONNE 2 --> <!-- COLONNE 2 -->
<div class="col-xs-6 col-sm-4"> <div class="col-xs-6 col-sm-6 col-md-4">
<h3>Objectif</h3> <h3>Objectif</h3>
<div class="col-xs-12"> <div class="col-xs-12">
<div class="card"> <div class="card">
...@@ -120,7 +130,7 @@ ...@@ -120,7 +130,7 @@
</div> </div>
</div> </div>
<!-- COLONNE 3 --> <!-- COLONNE 3 -->
<div class="col-xs-6 col-sm-4 tresorerie"> <div class="col-xs-6 col-sm-6 col-md-4 tresorerie">
<h3>Trésorerie</h3> <h3>Trésorerie</h3>
<div class="col-xs-12"> <div class="col-xs-12">
<div class="card"> <div class="card">
......
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