Просмотр исходного кода

Añadir campo medic_id en account_invoice_line

sebastian 5 лет назад
Родитель
Сommit
387250fd4b

+ 5 - 5
controllers/helpers/account_invoice_line.py

@@ -13,12 +13,12 @@ def get_account_invoice_line_widget():
         	invoice.date_invoice,
         	invoice.type,
         	product.name_template,
-            line.medic_id,
         	line.price_unit * (%s / (array_agg(rate.rate ORDER BY rate.id DESC))[1]) as price_unit,
         	line.quantity AS cant,
         	line.price_subtotal * (%s / (array_agg(rate.rate ORDER BY rate.id DESC))[1]) AS subtotal,
         	(line.quantity * (line.price_unit * (%s / (array_agg(rate.rate ORDER BY rate.id DESC))[1]))) - (line.price_subtotal * (%s / (array_agg(rate.rate ORDER BY rate.id DESC))[1])) AS impuestos,
-        	(array_agg(history.cost ORDER BY history.id DESC))[1] AS cost
+        	(array_agg(history.cost ORDER BY history.id DESC))[1] AS cost,
+            line.medic_id
             FROM account_invoice AS invoice
             LEFT JOIN account_invoice_line AS line
             ON line.invoice_id = invoice.id
@@ -30,7 +30,7 @@ def get_account_invoice_line_widget():
             ON history.product_template_id = product.product_tmpl_id
             LEFT JOIN res_currency_rate AS rate
             ON rate.currency_id = invoice.currency_id
-            WHERE invoice.state NOT IN ('draft', 'cancel')
+            WHERE invoice.state NOT IN ('draft', 'cancel') AND invoice.type = 'out_invoice'
             AND TO_CHAR(invoice.date_invoice,'YYYY-MM') = TO_CHAR(current_date,'YYYY-MM')
             AND journal.store_id = ''' + str(user_store) + '''
         GROUP BY
@@ -39,11 +39,11 @@ def get_account_invoice_line_widget():
         	invoice.number,
         	invoice.origin,
         	invoice.date_invoice,
-            line.medic_id,
         	product.name_template,
         	line.price_unit,
         	line.quantity,
-        	line.price_subtotal
+        	line.price_subtotal,
+            line.medic_id
     '''
 
     r.cr.execute(query,(tuple([company_currency_rate,company_currency_rate,company_currency_rate,company_currency_rate])))

BIN
controllers/helpers/account_invoice_line.pyc


+ 24 - 19
static/src/js/widgets/ranking_doctores.js

@@ -36,39 +36,44 @@ function ranking_doctores(widget) {
         getAccountInvoiceLine:function(id) {
             var self = this;
             return _.flatten(_.filter(self.AccountInvoiceLine,function (inv) {
-                return inv.id === id;
-            }));
-        },
-        getAccountInvoice:function(id) {
-            var self = this;
-            return _.flatten(_.filter(self.AccountInvoice,function (inv) {
-                return inv.id === id && inv.type == 'out_invoice';
+                return inv.medic_id === id;
             }));
         },
+        // getAccountInvoice:function(id) {
+        //     var self = this;
+        //     return _.flatten(_.filter(self.AccountInvoice,function (inv) {
+        //         return inv.id === id && inv.type == 'out_invoice';
+        //     }));
+        // },
 
         SalesmanRanking: function() {
             var self = this;
+            console.log(self);
             var ranking = [];
             var amount = 0;
             var ResUser = self.ResUser;
             //console.log(ResUser);
             _.each(ResUser, function (item) {
                 var AccountInvoiceLine = self.getAccountInvoiceLine(item.medic_id);
-                //console.log(AccountInvoiceLine);
-                var AccountInvoice = self.getAccountInvoice(AccountInvoiceLine.invoice_id);
-                _.each(AccountInvoice, function (item1) {
-                    if(item1.type == 'out_invoice'){
+                // _.each(AccountInvoiceLine, function (item1) {
+                //     if(item1.medic_id){
+                // var AccountInvoice = self.getAccountInvoice(AccountInvoiceLine.invoice_id);
 
-                        var account_invoice_amount = _.reduce(_.map(AccountInvoiceLine,function(item) {
-                            return item.subtotal;
-                        }),function(memo, num) {
-                            return memo + num;
-                        },0);
-                        amount = (account_invoice_amount);
+                //
+                //         if(item1.type == 'out_invoice'){
 
-                    }
-                });
+                            var account_invoice_amount = _.reduce(_.map(AccountInvoiceLine,function(item) {
+                                return item.quantity;
+                            }),function(memo, num) {
+                                return memo + num;
+                            },0);
+                            amount = (account_invoice_amount);
 
+                    //     }
+                    //
+                    //
+                //     }
+                // });
                 if(amount > 0 ){
                    ranking.push({
                        name: item.name,