|
@@ -32,6 +32,9 @@ openerp.eiru_sale_order = function (instance, local) {
|
|
|
return sale;
|
|
|
}).then(function(sale){
|
|
|
self.sale = sale;
|
|
|
+ return self.fecthSaleLine();
|
|
|
+ }).then(function(saleLine){
|
|
|
+ self.saleLine = saleLine;
|
|
|
return self.fetchProductTemplate();
|
|
|
}).then(function(ProductTemplate){
|
|
|
self.ProductTemplate = ProductTemplate;
|
|
@@ -53,6 +56,21 @@ openerp.eiru_sale_order = function (instance, local) {
|
|
|
});
|
|
|
return defer;
|
|
|
},
|
|
|
+
|
|
|
+ fecthSaleLine: function(){
|
|
|
+ var self = this
|
|
|
+ var defer = $.Deferred();
|
|
|
+ var id = _.flatten(_.map(self.sale,function(map){
|
|
|
+ return map.id;
|
|
|
+ }))
|
|
|
+ var domain=[['order_id','=', id]];
|
|
|
+ var fields=['id','name','order_id','product_id','product_uom_qty'];
|
|
|
+ var Sale = new instance.web.Model('sale.order.line');
|
|
|
+ Sale.query(fields).filter(domain).order_by('id').all().then(function(results){
|
|
|
+ defer.resolve(results);
|
|
|
+ });
|
|
|
+ return defer;
|
|
|
+ },
|
|
|
|
|
|
fetchProductTemplate: function () {
|
|
|
var defer = $.Deferred();
|
|
@@ -107,6 +125,7 @@ openerp.eiru_sale_order = function (instance, local) {
|
|
|
|
|
|
inicializarBuscador: function () {
|
|
|
var self = this;
|
|
|
+ // console.log(self.saleLine);
|
|
|
var selectProduct;
|
|
|
var searchType = $('#SearchByCurve').is(":checked");
|
|
|
if(searchType){
|
|
@@ -189,17 +208,36 @@ openerp.eiru_sale_order = function (instance, local) {
|
|
|
|
|
|
factInsertProduct:function(selectProduct){
|
|
|
var self = this;
|
|
|
+ var line = self.saleLine;
|
|
|
var product = selectProduct.value.split('-');
|
|
|
var variant = self.getProductProduct(product[0]);
|
|
|
var qty = 1;
|
|
|
- self.joinSaleLine(variant[0].id, qty).then(function(results) {
|
|
|
- return results;
|
|
|
- }).then(function(){
|
|
|
- self.reloadLine();
|
|
|
- });
|
|
|
+
|
|
|
+ for (var i = 0; i < line.length; i++) {
|
|
|
+ if(variant[0].id == line[i].product_id[0]){
|
|
|
+ qty = line[i].product_uom_qty + 1;
|
|
|
+ console.log(line[i].product_uom_qty);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ self.updateSaleLine(variant[0].id, qty).then(function(results) {
|
|
|
+ return results;
|
|
|
+ }).then(function(){
|
|
|
+ self.reloadLine();
|
|
|
+ });
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ // self.createSaleLine(variant[0].id, qty).then(function(results) {
|
|
|
+ // return results;
|
|
|
+ // }).then(function(){
|
|
|
+ // self.reloadLine();
|
|
|
+ // });
|
|
|
},
|
|
|
|
|
|
- joinSaleLine: function(product_id, qty) {
|
|
|
+ createSaleLine: function(product_id, qty) {
|
|
|
var self = this;
|
|
|
var defer = $.Deferred();
|
|
|
var sale = new openerp.web.Model('sale.order');
|
|
@@ -216,6 +254,24 @@ openerp.eiru_sale_order = function (instance, local) {
|
|
|
});
|
|
|
return defer;
|
|
|
},
|
|
|
+
|
|
|
+ updateSaleLine: function(id, qty) {
|
|
|
+ var self = this;
|
|
|
+ var defer = $.Deferred();
|
|
|
+
|
|
|
+ var sale_line = new openerp.web.Model('sale.order');
|
|
|
+ sale_line.call('update_sale_order_lines',[
|
|
|
+ {
|
|
|
+ id: self.sale[0].id,
|
|
|
+ product_uom_qty: qty
|
|
|
+ }
|
|
|
+ ],{
|
|
|
+ context: new openerp.web.CompoundContext()
|
|
|
+ }).then(function(results) {
|
|
|
+ defer.resolve(results);
|
|
|
+ });
|
|
|
+ return defer;
|
|
|
+ },
|
|
|
});
|
|
|
|
|
|
if (instance.web && instance.web.FormView) {
|