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

[add] champs target dans res_company pour définition de l'objectif de chiffre d'affaire

parent 406586be
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
# -*- coding: utf-8 -*-
import lefilament_tdb
import res_company
......@@ -120,6 +120,9 @@ class LeFilamentTdb(models.Model):
(select sum(price_subtotal-qty_invoiced*price_unit) from sale_order_line where invoice_status='to invoice') as commandes; """)
datas = cr.dictfetchall()
cr.execute("select ca_target from res_company;")
ca_target = cr.dictfetchall()
res['facture'] =+ datas[0]['facture']
res['a_encaisser'] =+ datas[0]['a_encaisser']
res['pipe'] =+ datas[0]['pipe']
......@@ -128,6 +131,7 @@ class LeFilamentTdb(models.Model):
res['sortie'] =+ datas[0]['sortie']
res['variation'] =+ datas[0]['variation']
res['commandes'] =+ datas[0]['commandes']
res['target'] =+ ca_target[0]['ca_target']
return res
......
......@@ -34,3 +34,5 @@
.card-header { margin: 0!important; }
.card-number { font-size: 30px; font-weight: 300; margin: 0!important; font-family: "Helvetica Neue", Helvetica, "Open Sans", Arial, sans-serif; }
.tresorerie .card-number { font-size: 20px; font-weight: 300; }
.ca_target:hover { cursor: pointer; color: rgba(115, 135, 156,0.5); }
\ No newline at end of file
......@@ -14,6 +14,10 @@ odoo.define('lefilament_tdb.dashboard_year', function (require) {
var YearDashboardView = Widget.extend({
template: 'YearDashboard',
events: {
'click .ca_target': 'target_clicked',
},
init: function() {
var result = this._super.apply(this, arguments);
return result;
......@@ -28,7 +32,6 @@ odoo.define('lefilament_tdb.dashboard_year', function (require) {
.call('retrieve_datas_dashboard', [])
.then(function(results) {
self.values = results;
console.log(self.values);
self.progress = results.facture / results.target;
deferred.resolve();
});
......@@ -48,14 +51,15 @@ odoo.define('lefilament_tdb.dashboard_year', function (require) {
step: function(state, circle) {
value = self.progress*100
circle.setText(
self.values.target.toLocaleString('fr', { maximumFractionDigits: 0 }) + ' € <br />'
'<span class="ca_target">'+
self.values.target.toLocaleString('fr', { maximumFractionDigits: 0 }) + ' € </span><br />'
+value.toLocaleString('fr', { maximumFractionDigits: 0 }) + ' %');
}
},
});
bar.text.style.fontFamily = '"Raleway", Helvetica, sans-serif';
bar.text.style.fontSize = '2rem';
bar.text.style.color = '#73879C';
this.$el.find('.progressbar-text').css('opacity',self.progress)
// this.$el.find('.progressbar-text').css('opacity',self.progress)
bar.text.style.textAlign = 'center';
bar.animate(self.progress);
......@@ -74,6 +78,26 @@ odoo.define('lefilament_tdb.dashboard_year', function (require) {
return value;
},
target_clicked: function(ev){
var self = this;
id = this.session.uid;
var context = {
'user_id': self.session.uid,
}
var action = ({
type: 'ir.actions.act_window',
res_model: 'res.company',
res_id: id,
view_type: 'form',
view_mode: 'form',
views: [[false, 'form']],
target:'current',
context: context
})
this.do_action(action);
},
});
core.action_registry.add('lefilament_tdb.dashboard_year', YearDashboardView);
......
......@@ -102,7 +102,7 @@
</div>
<div class="col-xs-12">
<div class="card">
<p class="card-header">Reste à encaisser</p>
<p class="card-header">Facturé non encaissé</p>
<p class="card-number">
<t t-esc="widget.render_monetary(widget.values.a_encaisser)"></t>
</p>
......
......@@ -105,6 +105,18 @@
</field>
</record>
<!-- Company Form -->
<record id="view_form_lefilament_project_form_inherited" model="ir.ui.view">
<field name="name">res.company.form.tdb</field>
<field name="model">res.company</field>
<field name="inherit_id" ref="base.view_company_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='website']" position="after">
<field name="ca_target" />
</xpath>
</field>
</record>
<!-- <record id="lefilament_dashboard_data" model="ir.ui.view">
<field name="name">Le Filament Dashboard Data</field>
<field name="model">lefilament.dashboard.data</field>
......
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