Ir al contenido
Menú
Se marcó esta pregunta
3329 Vistas

the widget was work correctly on odoo 12 but in odoo 13 the button where fire the widget dont give any action and after trace error i found thet the init function is fired correctly but start function not work

 iremoved part of the code which have events

odoo.define("stock_scan_frontend.action_start_scanning", function(require) {
console.log("begin");
"use strict";
var core = require("web.core");
var Widget = require("web.Widget");
var _t = core._t;
var QWeb = core.qweb;
var rpc = require('web.rpc');

var ScanningModel = Backbone.Model.extend({
initialize: function (session, attributes) {
console.log("1");

var self = this;
this.active_id = this.get_stock_id();
this.ready = this.load_stock_data();
this.data = {};
this.quantsData = {};
this.products = {};
this.codeProducts = {}
this.scan_lines = {}
this.addedScansObj = {};
this.totalQty = 0;
this.createdScansObj = {};
this.type_of_scaning = '';
this.pickin_Typ_code = '';
},
get_stock_id: function () {
console.log("2");
var lochash = location.hash.substr(1);
var activeid = lochash.substr(lochash.indexOf('id='))
.split('&')[0]
.split('=')[1];
return activeid;
},
load_stock_data: function () {
console.log("3");
var loaded = new $.Deferred();
var self = this;
var stock_picking = rpc.query({
model:'stock.picking',
method: 'get_stock_lot_scan_data',
args: [self.active_id],
}).then(function (result) {
console.log("4");
result = JSON.parse(result);
console.log(result);
self.scan_lines = result.scan_lines;

self.data = result.data;
self.products = result.products;
self.codeProducts = result.productsCodeData;
self.type_of_scaning = result.type_of_scaning;
self.pickin_Typ_code = result.pickin_Typ_code;
self.res_id = result.res_id;

loaded.resolve();


});
console.log("4aaxx");
return loaded;
}
});
var Scanning = Widget.extend({
template: "Scanning",
xmlDependencies: ['/stock_scan_frontend/static/xml/stock.xml'],
init: function (parent) {
console.log("7");
this._super(parent);
this.stock_data = new ScanningModel(require);
console.log("7a");
},
start: function () {
console.log("8");
var sup = this._super();
var self = this;
this._super.apply(this, arguments);


return this.stock_data.ready.done(function () {
self.$el.prepend();
setTimeout(function () {
$('input#scan_box').focus();
if (self.stock_data.type_of_scaning == 'third_group') {
$('input#default_code').show().focus();
$('input#expiration_date').show();
} else {
$('input#default_code').remove();
$('input#expiration_date').remove();
$('input#scan_box').attr('style', '');
}

var scan_lines_count = Object.keys(self.stock_data.scan_lines).length;
if (scan_lines_count > 0) {
for (var i = 0; i < scan_lines_count; i++) {
var scan_box = self.stock_data.scan_lines[i]['serial'];
if (!self.stock_data.addedScansObj[scan_box]) {
self.stock_data.addedScansObj[scan_box] = {};
}
var encoded = CryptoJS.MD5(scan_box);
var qty = parseInt(self.stock_data.scan_lines[i]['qty']);
var product_id = self.stock_data.scan_lines[i]['product_id'];
var product = self.stock_data.products[product_id]
var lot_name = self.stock_data.scan_lines[i]['lot_name'];
var date = new Date(self.stock_data.scan_lines[i]['expiration_date']);
self.stock_data.addedScansObj[scan_box][product_id] = {'stock_picking_id': parseInt(self.stock_data.res_id), 'product_id': product['id'], 'product_uom_qty': qty, 'lot_no': scan_box, 'lot_name': lot_name, 'expiration_date': self.stock_data.scan_lines[i]['expiration_date']};
var html = '<tr id="' + encoded + '"><td><input type="hidden" class="lineProductId" value="' + product['id'] + '" />' + product['name'] + '</td><td><input type="number" class="qty" value="' + qty + '"/></td><td><span class="scan_box_line">' + scan_box + '</span></td><td>' + lot_name + '</td><td>' + $.datepicker.formatDate("mm/dd/yy", date) + '</td><td style="cursor:pointer;" class="deleteScan"><span class="fa fa-trash-o" name="delete"></span></td></tr>';
$('table tbody').append(html);
self.stock_data.totalQty += qty;
}
$('span.totalQty').html(self.stock_data.totalQty);
}
}, 1000);
});
},

});
// instance.web.client_actions.add('stock.scan', 'instance.stock_scan_frontend.Scanning');
core.action_registry.add("stock.scan", Scanning);

});
Avatar
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
1
dic 20
2693
2
ago 20
2777
0
nov 19
2745
1
jul 24
1319
4
may 24
11523