Explorar el Código

[ADD] modificaciones a los reportes de stock

Rodney Enciso Arias hace 7 años
padre
commit
4ab62befb4

+ 2 - 2
static/src/js/reports/report_stock.js

@@ -187,8 +187,8 @@ function report_stock (reporting){
             var results = self.ProductProduct;
             results = _.map(results, function (item) {
                 return {
-                        label: item.id + '-'+ item.name,
-                        value: item.id + '-'+ item.name
+                        label: item.id + '- '+ ' [ ' + self.valorNull(item.default_code) + ' ] ' + ' - ' + item.name + ' ( ' + self.valorNull(item.ean13) + ' )',
+                        value: item.id + '- '+ ' [ ' + self.valorNull(item.default_code) + ' ] ' + ' - ' + item.name + ' ( ' + self.valorNull(item.ean13) + ' ) '
                 }
             });
             self.$('#product').autocomplete({

+ 48 - 5
static/src/js/reports/report_stock_move.js

@@ -128,6 +128,9 @@ function report_stock_move(reporting){
                 return self.fetchResPartner();
             }).then(function(ResPartner){
                 self.ResPartner=ResPartner;
+                return self.fetchProductProduct();
+            }).then(function(ProductProduct){
+                self.ProductProduct=ProductProduct;
                 return self.fetchStockLocation();
             }).then(function(StockLocation){
                 self.StockLocation=StockLocation;
@@ -140,6 +143,7 @@ function report_stock_move(reporting){
                     self.$el.find('#current-location-destiny').append('<option value="' + item.id + '">'+ item.location_id[1] + " / " + item.name + '</option>');
                 }); 
                 self.search();
+                self.searchProduct();
                 return self.BuildTable();
             });
         },
@@ -163,6 +167,15 @@ function report_stock_move(reporting){
             });
             return defer;
         },
+        fetchProductProduct: function() {
+            var self = this;
+            var defer = $.Deferred();
+            var ProductProduct = new instance.web.Model('product.product');
+            ProductProduct.query(['id', 'name',]).filter([['active', '=', true]]).all().then(function (results) {
+                defer.resolve(results);
+            });
+            return defer;
+        },
         fetchStockLocation : function(){
             var self = this;
             var defer = $.Deferred();
@@ -173,8 +186,7 @@ function report_stock_move(reporting){
                 defer.resolve(results);
             })
             return defer;
-        },
-        
+        },    
         search: function () {
             var self = this;
             var results = self.ResPartner;
@@ -200,6 +212,31 @@ function report_stock_move(reporting){
                 }
             });
         },
+        searchProduct: function () {
+            var self = this;
+            var results = self.ProductProduct;
+            results = _.map(results, function (item) {
+                return {
+                        label: item.id + '- '+ ' [ ' + self.valorNull(item.default_code) + ' ] ' + ' - ' + item.name + ' ( ' + self.valorNull(item.ean13) + ' )',
+                        value: item.id + '- '+ ' [ ' + self.valorNull(item.default_code) + ' ] ' + ' - ' + item.name + ' ( ' + self.valorNull(item.ean13) + ' ) '
+                }
+            });
+            self.$('#product').autocomplete({
+                source: results,
+                minLength:0,
+                search: function(event, ui) {
+                    if (!(self.$('#product').val())){
+                        self.factSearch();
+                    }
+                },
+                close: function( event, ui ) {
+                        self.factSearch();
+                },
+                select: function(event, ui) {
+                    self.factSearch();
+                }
+            });
+        },
         BuildTable: function(){
             var self = this;
             var StockMove = self.StockMove;
@@ -231,11 +268,12 @@ function report_stock_move(reporting){
         factSearch: function(){
             var self = this;
             var hoy = moment().format('YYYY-MM-DD');
-            var desde =this.$el.find('#from').val();
-            var hasta =this.$el.find('#to').val();
+            var desde = this.$el.find('#from').val();
+            var hasta = this.$el.find('#to').val();
             var location_id = this.$el.find('#current-location-origin').val();
             var location_dest_id = this.$el.find('#current-location-destiny').val();
-            var partner= this.$el.find('#partner').val().split('-');
+            var partner = this.$el.find('#partner').val().split('-');
+            var product = this.$el.find('#product').val().split('-');
             var content = self.content;
             if ($('#A').is(":checked")){
                 content = _.filter(content, function (inv){
@@ -298,6 +336,11 @@ function report_stock_move(reporting){
                     return inv.partner_id == partner[0];
                 });
             }
+            if (product != ''){
+                content = _.filter(content, function(inv){
+                    return inv.product_id == product[0];
+                });
+            }
             if (location_id != 9999999){
                 content = _.filter(content, function(inv){
                     return inv.location_id == location_id;

+ 1 - 1
static/src/reports/report_resumen_egresos.xml

@@ -26,7 +26,7 @@
                                 </div>
                             </div> 
                         </div>
-                        <div class="col-xs-6">
+                        <div class="col-xs-6" style="display:none;">
                             <div class="panel panel-default">
                                 <div class="panel-heading">Características</div>
                                 <div class="panel-body">

+ 1 - 1
static/src/reports/report_resumen_ingresos.xml

@@ -27,7 +27,7 @@
                             </div> 
                         </div>
                         <div class="col-xs-6">
-                            <div class="panel panel-default">
+                            <div class="panel panel-default" style="display:none;">
                                 <div class="panel-heading">Características</div>
                                 <div class="panel-body">
                                     <label for="current-journal">Sucursal: </label>

+ 9 - 3
static/src/reports/report_stock_move.xml

@@ -60,12 +60,18 @@
                                         <label for="current-location-origin">Ubicacion de origen: </label>
                                         <select id="current-location-origin" class="form-control ui-autocomplete-input"  name="current-location-origin"></select>    
                                     </div>
-                                     <div class="form-group">
+                                    <div class="form-group">
                                         <label for="current-location-destiny">Ubicacion de destino: </label>
                                         <select id="current-location-destiny" class="form-control ui-autocomplete-input"  name="current-location-destiny"></select>    
                                     </div>
-                                    <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="form-group">
+                                        <label for="partner">Buscar Cliente/Proveedor:</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="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>
                             </div> 
                         </div>