Browse Source

Agregar comisión para propietario

sebastian 5 years ago
parent
commit
a0deda31c2

BIN
__init__.pyc


BIN
controller/__init__.pyc


BIN
controller/helpers/__init__.pyc


BIN
controller/helpers/account_analytic_account.pyc


BIN
controller/helpers/account_analytic_invoice_line.pyc


BIN
controller/helpers/account_invoice.pyc


BIN
controller/helpers/account_invoice_line.pyc


BIN
controller/helpers/account_journal.pyc


BIN
controller/helpers/pos_order.pyc


+ 3 - 1
controller/helpers/product_template.py

@@ -19,7 +19,8 @@ def get_product_template_inmobiliaria():
         tpt.categ_id,
         tpt.t_estado,
         estado.name,
-        tpt.t_nro
+        tpt.t_nro,
+        tpt.comision_propietario
         FROM product_template AS tpt
         LEFT JOIN res_partner AS partner
         ON partner.id = tpt.t_propietario
@@ -48,6 +49,7 @@ def get_product_template_inmobiliaria():
             'estado_id': j[13],
             'estado_name': j[14],
             't_nro': j[15],
+            'comision_propietario': j[16],
 
         } for j in r.cr.fetchall()
     ]

BIN
controller/helpers/product_template.pyc


BIN
controller/helpers/res_company.pyc


BIN
controller/helpers/res_partner.pyc


BIN
controller/helpers/res_store.pyc


BIN
controller/helpers/res_users.pyc


BIN
controller/main.pyc


+ 9 - 3
static/src/js/reports/report_comision_inmobiliaria.js

@@ -485,11 +485,13 @@ function report_comision_inmobiliaria(reporting){
 
               var suma_comision_inmobiliaria = 0;
               var suma_comision_vendedor = 0;
+              var suma_comision_propietario = 0;
               var suma_comision_total = 0;
               var owner;
               _.each(AccountInvoiceLine, function(line){
                 suma_comision_inmobiliaria = suma_comision_inmobiliaria + ((line.subtotal * line.comision_inmobiliaria)/100)
                 suma_comision_vendedor = suma_comision_vendedor + ((line.subtotal * line.comision_vendedor)/100)
+                suma_comision_propietario = suma_comision_propietario + ((line.subtotal * line.comision_propietario)/100)
                 suma_comision_total = suma_comision_total + ((line.subtotal * line.comision_total)/100)
                 owner = line.t_propietario;
 
@@ -507,6 +509,7 @@ function report_comision_inmobiliaria(reporting){
                   cuota: self.valorNull(item.cuotas),
                   seller_comision:  accounting.formatMoney(suma_comision_vendedor, '', CurrencyBase.decimal_places, CurrencyBase.thousands_separator, CurrencyBase.decimal_separator),
                   company_comision:  accounting.formatMoney(suma_comision_inmobiliaria, '', CurrencyBase.decimal_places, CurrencyBase.thousands_separator, CurrencyBase.decimal_separator),
+                  propietario_comision:  accounting.formatMoney(suma_comision_propietario, '', CurrencyBase.decimal_places, CurrencyBase.thousands_separator, CurrencyBase.decimal_separator),
                   /*
                   =======================
                       NO FORMAT
@@ -515,6 +518,7 @@ function report_comision_inmobiliaria(reporting){
                   date_no_format: moment(item.date).format('YYYY-MM-DD'),
                   seller_comision_no_format:suma_comision_vendedor,
                   company_comision_no_format:suma_comision_inmobiliaria,
+                  propietario_comision_no_format:suma_comision_propietario,
                   /*
                   =======================
                       FOOTER
@@ -580,6 +584,7 @@ function report_comision_inmobiliaria(reporting){
                 date:'Totales',
                 seller_comision:seller_comision,
                 company_comision:company_comision,
+                propietario_comision:propietario_comision,
             });
 
             if (action === 'pdf') {
@@ -608,12 +613,13 @@ function report_comision_inmobiliaria(reporting){
                     number:{columnWidth: 24, halign:'left'},
                     supplier_invoice_number:{columnWidth: 20, halign:'left'},
                     cuota:{columnWidth: 16,halign:'left'},
-                    origin:{columnWidth: 17,halign:'left'},
+                    origin:{columnWidth: 16,halign:'left'},
                     customer_name:{halign:'left'},
                     owner_name:{columnWidth: 20, halign:'left'},
                     seller_name:{columnWidth: 20, halign:'left'},
-                    seller_comision:{columnWidth: 25, halign:'right'},
-                    company_comision:{columnWidth: 25, halign:'right'},
+                    seller_comision:{columnWidth: 23, halign:'right'},
+                    company_comision:{columnWidth: 23, halign:'right'},
+                    propietario_comision:{columnWidth: 23, halign:'right'},
                 };
                 /*
                 ============================================================

+ 18 - 0
static/src/reports/report_comision_inmobiliaria.xml

@@ -119,6 +119,7 @@
                               <th data-field="seller_name" data-align="left">Vendedor</th>
                               <th data-field="seller_comision" data-align="right" data-footer-formatter="totalSeller">Comisión Vendedor</th>
                               <th data-field="company_comision" data-align="right" data-footer-formatter="totalCompany">Comisión Empresa</th>
+                              <th data-field="propietario_comision" data-align="right" data-footer-formatter="totalPropietario">Comisión Propietario</th>
 
                             </tr>
                         </thead>
@@ -163,6 +164,23 @@
                     },0);
                     return accounting.formatNumber(total,decimal_places,thousands_separator,decimal_separator);
                 }
+
+                function totalPropietario(rowsTable) {
+                    var decimal_places = 0;
+                    var thousands_separator = '.';
+                    var decimal_separator = ',';
+                    if(rowsTable.length > 0){
+                        decimal_places = rowsTable[0].decimal_places;
+                        thousands_separator = rowsTable[0].thousands_separator;
+                        decimal_separator = rowsTable[0].decimal_separator;
+                    }
+                    var total =  _.reduce(_.map(rowsTable,function(item){
+                        return item.propietario_comision_no_format;
+                    }), function(memo, num){
+                        return memo + num;
+                    },0);
+                    return accounting.formatNumber(total,decimal_places,thousands_separator,decimal_separator);
+                }
                 <!--
                     FOOTER STYLE
                 -->