Browse Source

FIX ADD Agregado report de cuentas a cobrar vencidos y no vencidos y a pagar vencidos y no vencidos, agregado en pos filtro cliente

Sebas 6 years ago
parent
commit
6bddeda3fc

+ 7 - 17
static/src/js/configuration_reporting.js

@@ -108,11 +108,11 @@ function configuration_reporting (instance, widget) {
                 description: 'Permite realizar un analisis de los productos disponibles en el stock.',
                 action: 'ReportStock'
             },
-            {
-                title: 'Análisis de Stock por Ubicación',
-                description: 'Permite realizar un analisis de los productos disponibles en el stock por Ubicación.',
-                action: 'ReportStockLocation'
-            },
+            // {
+            //     title: 'Análisis de Stock por Ubicación',
+            //     description: 'Permite realizar un analisis de los productos disponibles en el stock por Ubicación.',
+            //     action: 'ReportStockLocation'
+            // },
             {
                 title: 'Análisis de Movimientos de Stock',
                 description: 'Permite realizar un analisis de los productos disponibles en el stock.',
@@ -133,25 +133,15 @@ function configuration_reporting (instance, widget) {
                 description: 'Permite visualizar un histórico de mensaje realizado por la empresa.',
                 action: 'ReportMensajeCrm'
             },
-            {
-                title: 'Listado de Cuentas Vencidas a Cobrar',
-                description: 'Permite visualizar un listado de cuentas vencidas a cobrar.',
-                action: 'ReportingAccount'
-            },
             {
                 title: 'Listado de Cuentas a Cobrar',
-                description: 'Permite visualizar un listado de cuentas a cobrar.',
+                description: 'Permite visualizar un listado de cuentas a cobrar tanto vencidos como no vencidos.',
                 action: 'ReportingAccountPending'
             },
-            {
-                title: 'Listado de Cuentas Vencidas a Pagar',
-                description: 'Permite visualizar un listado de cuentas vencidas a pagar.',
-                action: 'ReportingAccountPendingaPagar'
-            },
             {
                 title: 'Listado de Cuentas a Pagar',
                 description: 'Permite visualizar un listado de cuentas a pagar.',
-                action: 'ReportingAccountaPagar'
+                action: 'ReportingAccountPendingaPagar'
             },
             {
                 title: 'Informe de Trabajos',

+ 9 - 10
static/src/js/main.js

@@ -19,15 +19,13 @@ openerp.eiru_reporting = function (instance) {
         report_sales_invoice_analysis(reporting);
         report_purchases_invoice_analysis(reporting);
         report_stock(reporting);
-        report_stock_location(reporting);
+        // report_stock_location(reporting);
         report_stock_move(reporting);
         report_crm(reporting);
         report_mensajecrm(reporting);
         report_phonecall(reporting);
         report_project(reporting);
-        reporting_account(reporting);
         reporting_accountpending_pagar(reporting);
-        reporting_account_apagar(reporting);
         reporting_accountpending(reporting);
         report_works(reporting);
         report_pos(reporting);
@@ -70,10 +68,13 @@ openerp.eiru_reporting = function (instance) {
     // instance.web.client_actions.add('eiru_reporting.bank_gral_action_report', 'instance.eiru_reporting.ReportBankGralWidget');
     // Historico de pagos
     instance.web.client_actions.add('eiru_reporting.voucher_action_report', 'instance.eiru_reporting.ReportVoucherWidget');
-    // Listado de cuentas a cobrar Vencidas
-    instance.web.client_actions.add('eiru_reporting.account_pending_action_report', 'instance.eiru_reporting.ReportingAccountPendingWidget');
     // Listado de cuentas a cobrar
-    instance.web.client_actions.add('eiru_reporting.account_action_report', 'instance.eiru_reporting.ReportingAccountWidget');
+    instance.web.client_actions.add('eiru_reporting.account_action_report', 'instance.eiru_reporting.ReportingAccountPendingWidget');
+    // Listado de cuentas a cobrar
+    // instance.web.client_actions.add('eiru_reporting.account_action_report', 'instance.eiru_reporting.ReportingAccountWidget');
+
+    // Listado de cuentas a pagar
+    instance.web.client_actions.add('eiru_reporting.account_pending_action_report', 'instance.eiru_reporting.ReportingAccountPendingPagarWidget');
 
     // ******************************************* Ventas *************************************************************************
     // Historico de ventas
@@ -121,10 +122,8 @@ openerp.eiru_reporting = function (instance) {
     // Ranking proveedores
     instance.web.client_actions.add('eiru_reporting.suppliers_ranking_action_report', 'instance.eiru_reporting.ReportRankingPurchasesOrdersSupplierWidget');
 
-    // Listado de cuentas a cobrar Vencidas
-    instance.web.client_actions.add('eiru_reporting.accountpendingapagar_detail_action_report', 'instance.eiru_reporting.ReportingAccountPendingPagarWidget');
     // Listado de cuentas a cobrar
-    instance.web.client_actions.add('eiru_reporting.accountpending_detail_action_report', 'instance.eiru_reporting.ReportingAccountaPagarWidget');
+    // instance.web.client_actions.add('eiru_reporting.accountpending_detail_action_report', 'instance.eiru_reporting.ReportingAccountaPagarWidget');
 
 
     // ******************************************* CRM ***************************************************************************
@@ -149,7 +148,7 @@ openerp.eiru_reporting = function (instance) {
     // Analisis de stock
     instance.web.client_actions.add('eiru_reporting.stock_action_report', 'instance.eiru_reporting.ReportStockWidget');
     // Analisis de stock por location
-    instance.web.client_actions.add('eiru_reporting.stock_location_action_report', 'instance.eiru_reporting.ReportStockLocationWidget');
+    // instance.web.client_actions.add('eiru_reporting.stock_location_action_report', 'instance.eiru_reporting.ReportStockLocationWidget');
     // Analisis de movimientos de stock
     instance.web.client_actions.add('eiru_reporting.stock_move_action_report', 'instance.eiru_reporting.ReportStockMoveWidget');
 

+ 2 - 1
static/src/js/reports/report_pos.js

@@ -18,6 +18,7 @@ function report_pos(reporting){
             'click #C' : 'factSearch',
             'click #D' : 'factSearch',
             'click #Z' : 'factSearch',
+            'change #partner': 'factSearch',
             'change #from' : 'factSearch',
             'change #current-store' : 'factSearch',
             'change #current-journal' : 'factSearch',
@@ -207,7 +208,7 @@ function report_pos(reporting){
         fetchPosOrder: function () {
             var self = this;
             var filter =[['state', 'in',['done','paid','invoiced']]];
-            var field =['id', 'name', 'session_id', 'state', 'table_id', 'statement_ids','date_order','partner_id','amount_total','user_id','amount_tax','sale_journal'];
+            var field =['id', 'partner_id', 'name', 'session_id', 'state', 'table_id', 'statement_ids','date_order','amount_total','user_id','amount_tax','sale_journal'];
             var defer = $.Deferred();
             var modules = self.checkModel('point_of_sale');
 

+ 40 - 1
static/src/js/reports/report_pos_orders.js

@@ -21,6 +21,7 @@ function report_pos_orders(reporting){
             'change #from' : 'fectSearch',
             'change #to': 'fectSearch',
             'change #current-category' : 'fectSearch',
+            'change #partner': 'fectSearch',
             'change #current-floor': 'fectSearch',
             'change #current-table': 'fectSearch',
             'change #current-store': 'fectSearch',
@@ -209,6 +210,7 @@ function report_pos_orders(reporting){
             }).then(function(AccountJournal){
                 self.AccountJournal = AccountJournal;
                 self.searchProduct();
+                self.search();
                 return self.BuildTable();
             });
         },
@@ -260,7 +262,7 @@ function report_pos_orders(reporting){
                 self.showMensaje('point_of_sale');
                 return defer;
             }
-            var fields = ['id','name','date_order','lines','table_id','sale_journal'];
+            var fields = ['id','partner_id','name','date_order','lines','table_id','sale_journal'];
             var domain = [['state', 'not in', ['draft','cancel']]];
             var PosOrder = new model.web.Model('pos.order');
             PosOrder.query(fields).filter(domain).all().then(function(results){
@@ -298,6 +300,33 @@ function report_pos_orders(reporting){
             return defer;
         },
 
+        search: function () {
+            var self = this;
+            var results = self.ResPartner;
+            results = _.map(results, function (item) {
+                return {
+                        label: item.id + '-'+ item.name + ' ' + self.valorNull(item.ruc),
+                        value: item.id + '-'+ item.name + ' ' + self.valorNull(item.ruc)
+                }
+            });
+            self.$('#partner').autocomplete({
+                source: results,
+                minLength:0,
+                search: function(event, ui) {
+                    if (!(self.$('#partner').val())){
+                        self.fectSearch();
+                    }
+                },
+                close: function( event, ui ) {
+                        self.fectSearch();
+                },
+                select: function(event, ui) {
+                    self.fectSearch();
+                }
+            });
+        },
+
+
         // Productos
         fetchProductProduct: function(){
             var self = this;
@@ -427,6 +456,7 @@ function report_pos_orders(reporting){
                         order_id : item.order_id[0],
                         order_name : item.order_id[1],
                         date : order.date_order,
+                        partner: order.partner_id[1],
                         date_order : moment(order.date_order).format("DD/MM/YYYY HH:mm"),
                         table_id : self.valorNull(place_id),
                         table_name : self.valorNull(place_name),
@@ -445,6 +475,7 @@ function report_pos_orders(reporting){
                         standar_tot_tot : ((item.qty * producto[0].standard_price)),
                         utility_tot : (((item.qty * item.price_unit) - (item.qty * producto[0].standard_price))),
                         category_name : category_name,
+                        partner_id : order.partner_id[0],
                         category_id : category_id,
                     });
                 }
@@ -467,6 +498,7 @@ function report_pos_orders(reporting){
             var desde =this.$el.find('#from').val();
             var hasta =this.$el.find('#to').val();
             var product = this.$el.find('#product').val().split('-');
+            var partner= this.$el.find('#partner').val().split('-');
             var content = self.content;
 
             if ($('#A').is(":checked")){
@@ -528,6 +560,12 @@ function report_pos_orders(reporting){
                 });
             }
 
+            if (partner != ""){
+                content = _.filter(content, function(inv){
+                    return inv.partner_id == partner[0];
+                });
+            }
+
             if(category != 9999999){
                 content = _.filter(content,function(inv){
                     return inv.category_id == category;
@@ -654,6 +692,7 @@ function report_pos_orders(reporting){
                 columnStyles: {
                         order_name: {halign:'left', fontStyle: 'bold'},
                         date_order :{halign:'left' , columnWidth: '8px'},
+                        partner :{halign:'left' , columnWidth: '8px'},
                         category_name :{halign:'left', columnWidth: '8px'},
                         table_name :{halign:'left', columnWidth: '7px'},
                         product_name :{halign:'left' },

+ 1 - 1
static/src/js/reports/report_sale_pos_cab.js

@@ -274,7 +274,7 @@ function report_sale_pos_cab(reporting){
         fetchPosOrder: function () {
             var self = this;
             var filter =[['state', 'in',['done','paid','invoiced']]];
-            var field =['id', 'name', 'session_id', 'state', 'table_id', 'statement_ids','date_order','partner_id','amount_total','user_id','amount_tax','sale_journal'];
+            var field =['id', 'partner_id','name', 'session_id', 'state', 'table_id', 'statement_ids','date_order','amount_total','user_id','amount_tax','sale_journal'];
             var defer = $.Deferred();
             var modules = self.checkModel('point_of_sale');
 

+ 40 - 6
static/src/js/reports/report_ventas_pos_orders.js

@@ -213,6 +213,7 @@ function report_ventas_pos_orders(reporting){
                 return self.fetchResPartner();
             }).then(function (ResPartner){
                 self.ResPartner = ResPartner;
+                self.search();
                 self.searchProduct();
                 return self.BuildTable();
             });
@@ -317,7 +318,7 @@ function report_ventas_pos_orders(reporting){
                 return defer;
             }
 
-            var fields = ['id','name','date_order','lines','table_id','sale_journal'];
+            var fields = ['id','name','partner_id','date_order','lines','table_id','sale_journal'];
             var domain = [['state', 'not in', ['draft','cancel']]];
             var PosOrder = new model.web.Model('pos.order');
             PosOrder.query(fields).filter(domain).all().then(function(results){
@@ -389,6 +390,33 @@ function report_ventas_pos_orders(reporting){
             });
         },
 
+        search: function () {
+            var self = this;
+            var results = self.ResPartner;
+            results = _.map(results, function (item) {
+                return {
+                        label: item.id + '-'+ item.name + ' ' + self.valorNull(item.ruc),
+                        value: item.id + '-'+ item.name + ' ' + self.valorNull(item.ruc)
+                }
+            });
+            self.$('#partner').autocomplete({
+                source: results,
+                minLength:0,
+                search: function(event, ui) {
+                    if (!(self.$('#partner').val())){
+                        self.fectSearch();
+                    }
+                },
+                close: function( event, ui ) {
+                        self.fectSearch();
+                },
+                select: function(event, ui) {
+                    self.fectSearch();
+                }
+            });
+        },
+
+
         // Obtener Pedido
         fecthResStore: function(){
             var self = this;
@@ -440,6 +468,7 @@ function report_ventas_pos_orders(reporting){
                         order_name : item.order_id[1],
                         date : order.date_order,
                         date_order : moment(order.date_order).format("DD/MM/YYYY"),
+                        partner: order.partner_id[1],
                         product_id : item.product_id[0],
                         product_name : item.product_id[1],
                         qty : accounting.formatNumber(item.qty,0,".",","),
@@ -451,6 +480,7 @@ function report_ventas_pos_orders(reporting){
                         qty_total : item.qty,
                         price_tot_tot : ((item.qty * item.price_unit)),
                         standar_tot_tot : ((item.qty * producto[0].standard_price)),
+                        partner_id : order.partner_id[0],
                         utility_tot : (((item.qty * item.price_unit) - (item.qty * producto[0].standard_price))),
                         store_id : store[0].store_ids[0],
                     });
@@ -483,6 +513,7 @@ function report_ventas_pos_orders(reporting){
                         order_name : "",
                         date : sale.create_date,
                         date_order : moment(sale.create_date).format("DD/MM/YYYY"),
+                        partner: sale.partner_id[1],
                         product_id : itemsale.product_id[0],
                         product_name : itemsale.product_id[1],
                         qty : accounting.formatNumber(itemsale.quantity,0,".",","),
@@ -494,6 +525,7 @@ function report_ventas_pos_orders(reporting){
                         qty_total : itemsale.quantity,
                         price_tot_tot : ((itemsale.quantity * itemsale.price_unit)),
                         standar_tot_tot : ((itemsale.quantity * saleproducto[0].standard_price)),
+                        partner_id : sale.partner_id[0],
                         utility_tot : (((itemsale.quantity * itemsale.price_unit) - (itemsale.quantity * saleproducto[0].standard_price))),
                         store_id : storeVenta[0].store_ids[0],
                     });
@@ -513,6 +545,7 @@ function report_ventas_pos_orders(reporting){
             var desde =this.$el.find('#from').val();
             var hasta =this.$el.find('#to').val();
             var store = this.$el.find('#current-store').val();
+            var partner= this.$el.find('#partner').val().split('-');
             var product = this.$el.find('#product').val().split('-');
             var content = self.content;
 
@@ -562,11 +595,11 @@ function report_ventas_pos_orders(reporting){
                 });
             }
 
-            // if(category != 9999999){
-            //     content = _.filter(content,function(inv){
-            //         return inv.category_id == category;
-            //     });
-            // }
+            if (partner != ""){
+                content = _.filter(content, function(inv){
+                    return inv.partner_id == partner[0];
+                });
+            }
 
             if (store != 9999999){
                 content=_.filter(content, function (inv){
@@ -724,6 +757,7 @@ function report_ventas_pos_orders(reporting){
                         order_name: {halign:'left', fontStyle: 'bold'},
                         ref: {halign:'left', fontStyle: 'bold'},
                         date_order :{halign:'left'},
+                        partner :{halign:'left' },
                         product_name :{halign:'left' },
                         qty :{halign:'right' },
                         price_unit : {halign:'right' },

+ 50 - 32
static/src/js/reports/reporting_accountpending.js

@@ -8,9 +8,11 @@ function reporting_accountpending (reporting){
         AccountVoucher: [],
         content:[],
         rowsData :[],
+        ResUser:[],
         moveLine: [],
         resCompany: [],
         resCurrecy: [],
+        AccountJournal: [],
         content: [],
         modelId: [],
         accountInvoice: [],
@@ -27,6 +29,10 @@ function reporting_accountpending (reporting){
 
             'click #Y' : 'factSearch',
 
+            'click #W' : 'factSearch',
+            'click #vencidos' : 'factSearch',
+            'click #novencidos' : 'factSearch',
+
             'change #current-journal' : 'factSearch',
 
             'change #from' : 'factSearch',
@@ -82,8 +88,11 @@ function reporting_accountpending (reporting){
         },
         submitForm: function () {
             var self = this;
-            self.fetchMoveLine().then(function(moveLine) {
-                return moveLine;
+            self.fetchAccountJournal().then(function(AccountJournal) {
+                return AccountJournal;
+            }).then(function(AccountJournal) {
+                self.AccountJournal = AccountJournal;
+                return self.fetchMoveLine();
             }).then(function (moveLine) {
                 self.moveLine = _.filter(moveLine, function(item) {
                     return item.amount_residual > 0;
@@ -157,13 +166,29 @@ function reporting_accountpending (reporting){
                 return date;
             }
         },
-        // Move line
+
+        fetchAccountJournal: function() {
+            var self = this;
+            var defer = $.Deferred();
+            var fields = ['id', 'name'];
+            var AccountJournal = new instance.web.Model('account.journal');
+            AccountJournal.query(fields).filter().all().then(function(results) {
+                defer.resolve(results);
+            });
+
+            return defer;
+        },
+
+        // Move line , ['date_maturity', '>=', hoy]
         fetchMoveLine: function () {
             var self = this;
             var hoy = moment().format('YYYY-MM-DD');
             var defer = $.Deferred();
+            var journal_ids = _.flatten(_.map(this.AccountJournal, function (item) {
+                return item.id;
+            }));
             var field = ['id', 'partner_id', 'amount_residual', 'credit', 'debit', 'date_maturity', 'ref', 'invoice', 'amount_residual_currency','state'];
-            var domain = [['credit', '<=', 0], ['date_maturity', '>=', hoy]];
+            var domain = [['credit', '<=', 0],['date_maturity', '!=', false],['journal_id','in',journal_ids]];
             var moveLine = new instance.web.Model('account.move.line');
 
             moveLine.query(field).filter(domain).all().then(function(results) {
@@ -257,49 +282,32 @@ function reporting_accountpending (reporting){
         },
         factSearch: function(){
             var self = this;
-            var hoy = moment().format('YYYY-MM-DD');
-            //var journal = this.$el.find('#current-journal').val();
+            var today = moment().format('YYYY-MM-DD');
+            var yesterday = moment().add(-1, 'days').format('YYYY-MM-DD');
+            var month = moment().format('YYYY-MM');
+            var last_month = moment().add(-1, 'months').format('YYYY-MM');
             var desde = this.$el.find('#from').val();
             var hasta = this.$el.find('#to').val();
             var partner= this.$el.find('#partner').val().split('-');
             var content = self.content;
             if ($('#A').is(":checked")){
                 content = _.filter(content, function (inv){
-                    return inv.date == hoy;
+                    return moment(inv.date).format('YYYY-MM-DD') == today;
                 });
             }
             if ($('#B').is(":checked")){
-                var date = hoy.split('-');
-                var ayer = date[2] + 1;
-                date.splice(2,0);
-                if(date[2] < 10){
-                    date[2] = '0'+ayer;
-                }else{
-                    date[2] = ayer;
-                }
                 content = _.filter(content, function (inv){
-                    return inv.date == date[0]+'-'+date[1]+'-'+date[2];
+                    return moment(inv.date).format('YYYY-MM-DD') == yesterday;
                 });
             }
             if ($('#C').is(":checked")){
-                var date = hoy.split('-');
                 content = _.filter(content, function (inv){
-                    var mes = inv.date.split('-');
-                    return mes[0]+'-'+mes[1] == date[0]+'-'+date[1];
+                    return moment(inv.date).format('YYYY-MM') == month;
                 });
             }
             if ($('#D').is(":checked")){
-                var date = moment(hoy).add(1,'months').format('YYYY-MM-DD');
-                var date1 = date.split('-');
-                var mes = date1[1];
-                var year;
-                date1.splice(1,0);
-
-                date1[1] = mes;
-
                 content = _.filter(content, function (inv){
-                    var mes = inv.date.split('-');
-                    return mes[0]+'-'+mes[1] == date1[0]+'-'+date1[1];
+                    return moment(inv.date).format('YYYY-MM') == last_month;
                 });
             }
             if ($('#Z').is(":checked")){
@@ -324,6 +332,16 @@ function reporting_accountpending (reporting){
                     return inv.partner_id == partner[0];
                 });
             }
+            if ($('#vencidos').is(":checked")){
+                content = _.filter(content, function (inv){
+                    return inv.date_maturity < today;
+                });
+            }
+            if ($('#novencidos').is(":checked")){
+                content = _.filter(content, function (inv){
+                    return inv.date_maturity >= today;
+                });
+            }
 
             var amount_total_amount = _.reduce(_.map(content,function(map){
                 return(map.total_residual);
@@ -335,7 +353,7 @@ function reporting_accountpending (reporting){
                 reference: "Total",
                 amount_residual: accounting.formatNumber((amount_total_amount),0,".",","),
             });
-            
+
             self.loadTable(content)
         },
         loadTable:function(rowsTable){
@@ -418,7 +436,7 @@ function reporting_accountpending (reporting){
                     pdfDoc.setFontSize(12);
                     pdfDoc.setFontStyle('bold');
                     pdfDoc.setTextColor(40);
-                    pdfDoc.text('Listado de cuentas a cobrar no vencidas', data.settings.margin.left, 10);
+                    pdfDoc.text('Listado de cuentas a cobrar', data.settings.margin.left, 10);
 
                     if(desde.length > 0 || hasta.length > 0){
                         var fecha='';
@@ -449,7 +467,7 @@ function reporting_accountpending (reporting){
             if (typeof pdfDoc.putTotalPages === 'function') {
                 pdfDoc.putTotalPages(totalPagesExp);
             }
-            pdfDoc.save('Listado de cuentas a cobrar no vencidas.pdf')
+            pdfDoc.save('Listado de cuentas a cobrar.pdf')
         },
     });
 }

+ 45 - 28
static/src/js/reports/reporting_accountpending_pagar.js

@@ -9,6 +9,7 @@ function reporting_accountpending_pagar (reporting){
         content:[],
         rowsData :[],
         moveLine: [],
+        AccountJournal: [],
         resCompany: [],
         resCurrecy: [],
         content: [],
@@ -26,6 +27,9 @@ function reporting_accountpending_pagar (reporting){
             'click #Z' : 'factSearch',
 
             'click #Y' : 'factSearch',
+            'click #W' : 'factSearch',
+            'click #vencidos' : 'factSearch',
+            'click #novencidos' : 'factSearch',
 
             'change #current-journal' : 'factSearch',
 
@@ -82,8 +86,11 @@ function reporting_accountpending_pagar (reporting){
         },
         submitForm: function () {
             var self = this;
-            self.fetchMoveLine().then(function(moveLine) {
-                return moveLine;
+            self.fetchAccountJournal().then(function(AccountJournal) {
+                return AccountJournal;
+            }).then(function(AccountJournal) {
+                self.AccountJournal = AccountJournal;
+                return self.fetchMoveLine();
             }).then(function (moveLine) {
                 self.moveLine = _.filter(moveLine, function(item) {
                     return item.amount_residual > 0;
@@ -157,13 +164,29 @@ function reporting_accountpending_pagar (reporting){
                 return date;
             }
         },
+
+        fetchAccountJournal: function() {
+            var self = this;
+            var defer = $.Deferred();
+            var fields = ['id', 'name'];
+            var AccountJournal = new instance.web.Model('account.journal');
+            AccountJournal.query(fields).filter().all().then(function(results) {
+                defer.resolve(results);
+            });
+
+            return defer;
+        },
+
         // Move line
         fetchMoveLine: function () {
             var self = this;
             var hoy = moment().format('YYYY-MM-DD');
             var defer = $.Deferred();
+            var journal_ids = _.flatten(_.map(this.AccountJournal, function (item) {
+                return item.id;
+            }));
             var field = ['id', 'partner_id', 'amount_residual', 'credit', 'debit', 'date_maturity', 'ref', 'invoice', 'amount_residual_currency','state'];
-            var domain = [['debit', '<=', 0], ['date_maturity', '>=', hoy]];
+            var domain = [['debit', '<=', 0],['date_maturity', '!=', false],['journal_id','in',journal_ids]];
             var moveLine = new instance.web.Model('account.move.line');
 
             moveLine.query(field).filter(domain).all().then(function(results) {
@@ -257,49 +280,32 @@ function reporting_accountpending_pagar (reporting){
         },
         factSearch: function(){
             var self = this;
-            var hoy = moment().format('YYYY-MM-DD');
-            //var journal = this.$el.find('#current-journal').val();
+            var today = moment().format('YYYY-MM-DD');
+            var yesterday = moment().add(-1, 'days').format('YYYY-MM-DD');
+            var month = moment().format('YYYY-MM');
+            var last_month = moment().add(-1, 'months').format('YYYY-MM');
             var desde = this.$el.find('#from').val();
             var hasta = this.$el.find('#to').val();
             var partner= this.$el.find('#partner').val().split('-');
             var content = self.content;
             if ($('#A').is(":checked")){
                 content = _.filter(content, function (inv){
-                    return inv.date == hoy;
+                    return moment(inv.date).format('YYYY-MM-DD') == today;
                 });
             }
             if ($('#B').is(":checked")){
-                var date = hoy.split('-');
-                var ayer = date[2] + 1;
-                date.splice(2,0);
-                if(date[2] < 10){
-                    date[2] = '0'+ayer;
-                }else{
-                    date[2] = ayer;
-                }
                 content = _.filter(content, function (inv){
-                    return inv.date == date[0]+'-'+date[1]+'-'+date[2];
+                    return moment(inv.date).format('YYYY-MM-DD') == yesterday;
                 });
             }
             if ($('#C').is(":checked")){
-                var date = hoy.split('-');
                 content = _.filter(content, function (inv){
-                    var mes = inv.date.split('-');
-                    return mes[0]+'-'+mes[1] == date[0]+'-'+date[1];
+                    return moment(inv.date).format('YYYY-MM') == month;
                 });
             }
             if ($('#D').is(":checked")){
-                var date = moment(hoy).add(1,'months').format('YYYY-MM-DD');
-                var date1 = date.split('-');
-                var mes = date1[1];
-                var year;
-                date1.splice(1,0);
-
-                date1[1] = mes;
-
                 content = _.filter(content, function (inv){
-                    var mes = inv.date.split('-');
-                    return mes[0]+'-'+mes[1] == date1[0]+'-'+date1[1];
+                    return moment(inv.date).format('YYYY-MM') == last_month;
                 });
             }
             if ($('#Z').is(":checked")){
@@ -325,6 +331,17 @@ function reporting_accountpending_pagar (reporting){
                 });
             }
 
+            if ($('#vencidos').is(":checked")){
+                content = _.filter(content, function (inv){
+                    return inv.date_maturity < today;
+                });
+            }
+            if ($('#novencidos').is(":checked")){
+                content = _.filter(content, function (inv){
+                    return inv.date_maturity >= today;
+                });
+            }
+
             var amount_total_amount = _.reduce(_.map(content,function(map){
                 return(map.total_residual);
             }),function(memo, num){

+ 5 - 0
static/src/reports/report_pos_orders.xml

@@ -61,10 +61,14 @@
                                     <select id="current-floor" class="form-control ui-autocomplete-input"  name="floor"></select>
                                     <label for="current-table">Lugar: </label>
                                     <select id="current-table" class="form-control ui-autocomplete-input"  name="table"></select>
+
                                     <label for="product">Buscar Producto</label>
                                     <input id="product" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ Referencia/ Codigo de barras"/>
                                 </div>
                                 <div class="form-group">
+                                    <label for="partner">Buscar Cliente:</label>
+                                    <input id="partner" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ CI/ Ruc"/>
+
                                     <label for="current-store">Sucursal: </label>
                                     <select id="current-store" class="form-control ui-autocomplete-input" name="store"></select>
                                 </div>
@@ -91,6 +95,7 @@
                     <tr>
                         <th data-field="order_name" data-sortable="true">Pedido</th>
                         <th data-field="date_order" data-sortable="true">Fecha</th>
+                        <th data-field="partner">Cliente</th>
                         <th data-field="category_name" data-sortable="true" >Categoria</th>
                         <th data-field="table_name">Lugar</th>
                         <th data-field="product_name" data-sortable="true">Productos</th>

+ 1 - 2
static/src/reports/report_sale_pos_cab.xml

@@ -60,8 +60,7 @@
                                 <div class="form-group">
                                     <label for="partner">Buscar Cliente:</label>
                                     <input id="partner" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ CI/ Ruc"/>
-                                </div>
-                                <div class="form-group">
+
                                     <label for="current-store">Sucursal: </label>
                                     <select id="current-store" class="form-control ui-autocomplete-input" name="store"></select>
                                 </div>

+ 5 - 8
static/src/reports/report_ventas_pos_orders.xml

@@ -56,16 +56,13 @@
                             <div class="panel-heading">Características</div>
                             <div class="panel-body">
                                 <div class="form-group">
-                                    <!-- <label for="current-category">Todas las categorias: </label>
-                                    <select id="current-category" class="form-control ui-autocomplete-input"  name="current-category"></select>
-                                    <label for="current-floor">Ubicacion: </label>
-                                    <select id="current-floor" class="form-control ui-autocomplete-input"  name="floor"></select>
-                                    <label for="current-table">Lugar: </label>
-                                    <select id="current-table" class="form-control ui-autocomplete-input"  name="table"></select> -->
                                     <label for="product">Buscar Producto</label>
                                     <input id="product" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ Referencia/ Codigo de barras"/>
                                 </div>
                                 <div class="form-group">
+                                    <label for="partner">Buscar Cliente:</label>
+                                    <input id="partner" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ CI/ Ruc"/>
+
                                     <label for="current-store">Sucursal: </label>
                                     <select id="current-store" class="form-control ui-autocomplete-input" name="store"></select>
                                 </div>
@@ -93,8 +90,8 @@
                 <th data-field="order_name" data-sortable="true">Pos</th>
                 <th data-field="ref" data-sortable="true">Venta</th>
                 <th data-field="date_order" data-sortable="true">Fecha</th>
-                <!-- <th data-field="category_name" data-sortable="true" >Categoria</th>
-                <th data-field="table_name">Lugar</th> -->
+                <!-- <th data-field="category_name" data-sortable="true" >Categoria</th>-->
+                <th data-field="partner">Cliente</th>
                 <th data-field="product_name" data-sortable="true">Productos</th>
                 <th data-field="qty" data-sortable="true" data-align="right">Cantidad</th>
                 <th data-field="price_unit" data-sortable="true" data-align="right">Precio Venta</th>

+ 24 - 11
static/src/reports/reporting_accountpending.xml

@@ -3,7 +3,7 @@
     <t t-name="ReportingAccountPending">
         <div class="report_view">
             <div class="reporting_page_header">
-                <h1>Listado de cuentas a cobrar no vencidas</h1>
+                <h1>Listado de cuentas a cobrar</h1>
             </div>
             <button type="button" class="oe_button oe_form_button oe_highlight" aria-label="Left Align" data-toggle="collapse" href="#collapseExample" aria-expanded="false" aria-controls="collapseExample">FILTRAR
             </button>
@@ -50,20 +50,33 @@
                             </div>
                         </div>
                     </div>
+
                     <div class="col-xs-6">
                         <div class="panel panel-default">
                             <div class="panel-heading">Características</div>
                             <div class="panel-body">
-                                <ul class="list-unstyled">
-                                    <li>
-                                        <label for="Y">Cliente</label>
-                                    </li>
-
-                                </ul>
-
-                                <div class="form-group">
-                                    <label for="partner">Buscar Cliente:</label>
-                                    <input id="partner" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ CI/ Ruc"/>
+                                <div class="col-xs-6">
+                                    <h3>Cuentas a Cobrar</h3>
+                                    <ul class="list-unstyled">
+                                        <li>
+                                            <input type="radio" name="estado" id="W" value="W" checked="checked"/>
+                                            <label for="W">Sin Filtro</label>
+                                        </li>
+                                        <li>
+                                            <input type="radio" name="estado" id="novencidos" value="novencidos"/>
+                                            <label for="novencidos">No Vencidos</label>
+                                        </li>
+                                        <li>
+                                            <input type="radio" name="estado" id="vencidos" value="vencidos"/>
+                                            <label for="vencidos">Vencidos</label>
+                                        </li>
+                                    </ul>
+                                </div>
+                                <div class="col-xs-12">
+                                    <div class="form-group">
+                                        <label for="partner">Buscar Cliente:</label>
+                                        <input id="partner" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ CI/ Ruc"/>
+                                    </div>
                                 </div>
                             </div>
                         </div>

+ 23 - 11
static/src/reports/reporting_accountpending_apagar.xml

@@ -3,7 +3,7 @@
     <t t-name="ReportingAccountPendingaPagar">
         <div class="report_view">
             <div class="reporting_page_header">
-                <h1>Listado de cuentas a pagar no vencidas</h1>
+                <h1>Listado de cuentas a pagar</h1>
             </div>
             <button type="button" class="oe_button oe_form_button oe_highlight" aria-label="Left Align" data-toggle="collapse" href="#collapseExample" aria-expanded="false" aria-controls="collapseExample">FILTRAR
             </button>
@@ -54,16 +54,28 @@
                         <div class="panel panel-default">
                             <div class="panel-heading">Características</div>
                             <div class="panel-body">
-                                <ul class="list-unstyled">
-                                    <li>
-                                        <label for="Y">Proveedor</label>
-                                    </li>
-
-                                </ul>
-
-                                <div class="form-group">
-                                    <label for="partner">Buscar Proveedor:</label>
-                                    <input id="partner" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ CI/ Ruc"/>
+                                <div class="col-xs-6">
+                                    <h3>Cuentas a Pagar</h3>
+                                    <ul class="list-unstyled">
+                                        <li>
+                                            <input type="radio" name="estado" id="W" value="W" checked="checked"/>
+                                            <label for="W">Sin Filtro</label>
+                                        </li>
+                                        <li>
+                                            <input type="radio" name="estado" id="novencidos" value="novencidos"/>
+                                            <label for="novencidos">No Vencidos</label>
+                                        </li>
+                                        <li>
+                                            <input type="radio" name="estado" id="vencidos" value="vencidos"/>
+                                            <label for="vencidos">Vencidos</label>
+                                        </li>
+                                    </ul>
+                                </div>
+                                <div class="col-xs-12">
+                                    <div class="form-group">
+                                        <label for="partner">Buscar Proveedor:</label>
+                                        <input id="partner" type="text" class="form-control ui-autocomplete-input" autocomplete="off" placeholder="Nombre/ CI/ Ruc"/>
+                                    </div>
                                 </div>
                             </div>
                         </div>

+ 3 - 3
templates.xml

@@ -39,11 +39,11 @@
                 <!-- Analisis de compras -->
                 <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/report_purchases_invoice_analysis.js" />
                 <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/report_stock.js" />
-                <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/report_stock_location.js" />
+                <!-- <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/report_stock_location.js" /> -->
                 <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/report_stock_move.js" />
                 <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/report_refund_invoice_supplier.js" />
                 <!-- account -->
-                <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/reporting_account_apagar.js"/>
+                <!-- <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/reporting_account_apagar.js"/> -->
                 <!-- accountpending -->
                 <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/reporting_accountpending_pagar.js"/>
 
@@ -57,7 +57,7 @@
                   <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/report_project.js"/>
                   <!-- <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/report_balance.js"/> -->
                  <!-- account -->
-                 <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/reporting_account.js"/>
+                 <!-- <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/reporting_account.js"/> -->
                  <!-- accountpending -->
                  <script type="text/javascript" src="/eiru_reporting/static/src/js/reports/reporting_accountpending.js"/>
                  <!-- work -->

+ 4 - 16
views/actions.xml

@@ -57,9 +57,9 @@
             <field name="tag">eiru_reporting.account_pending_action_report</field>
         </record>
 
-        <!-- Listado de cuentas a cobrar -->
+        <!-- Listado de cuentas a pagar -->
          <record id="account_report_action" model="ir.actions.client">
-            <field name="name">Cuentas a Cobrar (Vencidos)</field>
+            <field name="name">Cuentas a Pagar</field>
             <field name="tag">eiru_reporting.account_action_report</field>
         </record>
 
@@ -159,18 +159,6 @@
             <field name="tag">eiru_reporting.suppliers_ranking_action_report</field>
         </record>
 
-		<!-- Listado de cuentas a pagar -->
-		 <record id="accountpendingapagar_detail_report_action" model="ir.actions.client">
-			<field name="name">Cuentas a Pagar</field>
-			<field name="tag">eiru_reporting.accountpendingapagar_detail_action_report</field>
-		</record>
-
-		<!-- Listado de cuentas vencidas a pagar -->
-		 <record id="accountpending_detail_report_action" model="ir.actions.client">
-			<field name="name">Cuentas a Pagar (Vencidos)</field>
-			<field name="tag">eiru_reporting.accountpending_detail_action_report</field>
-		</record>
-
         <!-- Analisis de facturas de ventas -->
         <record id="sale_report_action" model="ir.actions.client">
             <field name="name">Analisis de facturas de ventas</field>
@@ -232,10 +220,10 @@
         </record>
 
 		<!-- Analisis de stock por location-->
-		<record id="stock_location_report_action" model="ir.actions.client">
+		<!-- <record id="stock_location_report_action" model="ir.actions.client">
 			<field name="name">Analisis de Stock por Ubicacion</field>
 			<field name="tag">eiru_reporting.stock_location_action_report</field>
-		</record>
+		</record> -->
 
         <!-- Analisis de movimientos de stock -->
         <record id="stock_move_report_action" model="ir.actions.client">

+ 4 - 11
views/menus.xml

@@ -34,10 +34,10 @@
 	        <menuitem id="voucher_report_menu_submenu" parent="account_report_parent_menu" name="Historico de Pagos" action="voucher_report_action" sequence="5"/>
 
 	        <!-- Listado de cuentas a cobrar-->
-	        <menuitem id="account_pending_menu_submenu" parent="account_report_parent_menu" name="Cuentas a cobrar" action="account_pending_report_action" sequence="6"/>
+	        <menuitem id="account_pending_menu_submenu" parent="account_report_parent_menu" name="Cuentas a Cobrar" action="account_report_action" sequence="6"/>
 
-	        <!-- Listado de cuentas a cobrar (vencidos)-->
-	        <menuitem id="account_report_menu_submenu" parent="account_report_parent_menu" name="Cuentas a cobrar (Vencidos)" action="account_report_action" sequence="7"/>
+	        <!-- Listado de cuentas a pagar-->
+	        <menuitem id="account_report_menu_submenu" parent="account_report_parent_menu" name="Cuentas a Pagar" action="account_pending_report_action" sequence="7"/>
 
 	    <!-- Ventas Submenu -->
         <menuitem id="sale_report_parent_menu" name="Ventas" parent="eiru_report_main_menu" sequence="3"/>
@@ -84,8 +84,6 @@
             <!-- Historico de ventas y pos -->
             <menuitem id="sale_pos_order_menu_submenu" parent="posventa_report_parent_menu" name="Historico de Ventas" action="sale_pos_order_report_action" sequence="1"/>
 
-
-
         <!-- Quinto Submenu -->
         <menuitem id="purchase_report_parent_menu" name="Compras" parent="eiru_report_main_menu" sequence="6"/>
 
@@ -98,11 +96,6 @@
             <!-- Ranking de proveedores -->
             <menuitem id="suppliers_ranking_report_menu_submenu" parent="purchase_report_parent_menu" name="Ranking de proveedores a quien mas compras" action="suppliers_ranking_report_action" />
 
-            <!-- Listado de cuentas a pagar no vencidas -->
-           <menuitem id="accountpending_detail_report_menu_submenu" parent="purchase_report_parent_menu" name="Listado de cuentas a pagar no vencidas" action="accountpending_detail_report_action" />
-
-           <!-- Listado de cuentas a pagar vencidas -->
-          <menuitem id="accountpendingapagar_detail_report_menu_submenu" parent="purchase_report_parent_menu" name="Listado de cuentas a pagar vencidas" action="accountpendingapagar_detail_report_action" />
         <!-- Sexto Submenu -->
         <menuitem id="crm_report_parent_menu" name="CRM" parent="eiru_report_main_menu" sequence="7"/>
 
@@ -134,7 +127,7 @@
         <menuitem id="stock_report_parent_menu" name="Stock" parent="eiru_report_main_menu" sequence="9"/>
 
 	        <!-- Analisis de stock -->
-	        <menuitem id="stock_report_menu_submenu" parent="stock_report_parent_menu" name="Analisis de Stock por Ubicacion" action="stock_location_report_action" />
+	        <!-- <menuitem id="stock_report_menu_submenu" parent="stock_report_parent_menu" name="Analisis de Stock por Ubicacion" action="stock_location_report_action" /> -->
 
             <!-- Analisis de stock -->
             <menuitem id="stock_location_report_menu_submenu" parent="stock_report_parent_menu" name="Analisis de Stock" action="stock_report_action" />