Skip to Content
Menu
This question has been flagged
3611 Rodiniai

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);

});
Portretas
Atmesti
Related Posts Replies Rodiniai Veikla
1
gruod. 20
3036
2
rugp. 20
3136
0
lapkr. 19
2903
1
liep. 24
1781
4
geg. 24
12293