2015-01-23 13:09:30 +00:00
|
|
|
|
2018-08-30 13:26:05 +00:00
|
|
|
Hedera.Ticket = new Class({
|
|
|
|
Extends: Hedera.Form,
|
2015-01-23 13:09:30 +00:00
|
|
|
|
2018-08-30 13:26:05 +00:00
|
|
|
onTicketChange: function(ticket) {
|
2016-10-27 11:22:04 +00:00
|
|
|
if (!ticket.value)
|
|
|
|
return;
|
|
|
|
|
2022-05-30 01:30:33 +00:00
|
|
|
var params = {ticket: ticket.value};
|
|
|
|
this.conn.execQuery('CALL myTicket_logAccess(#ticket)', null, params);
|
2018-08-30 13:26:05 +00:00
|
|
|
},
|
2016-10-27 11:22:04 +00:00
|
|
|
|
2018-08-30 13:26:05 +00:00
|
|
|
onTicketReady: function(form) {
|
2022-05-28 15:49:46 +00:00
|
|
|
if (form.$.method != 'PICKUP')
|
2022-05-28 01:18:06 +00:00
|
|
|
Vn.Node.setText(this.$.method, _('Agency'));
|
2018-02-06 08:57:05 +00:00
|
|
|
else
|
2022-05-28 01:18:06 +00:00
|
|
|
Vn.Node.setText(this.$.method, _('Warehouse'));
|
2018-08-30 13:26:05 +00:00
|
|
|
},
|
|
|
|
|
|
|
|
onPrintClick: function() {
|
2022-05-05 13:56:17 +00:00
|
|
|
let params = Vn.Url.makeUri({
|
|
|
|
authorization: this.conn.token,
|
2022-05-28 01:18:06 +00:00
|
|
|
ticketId: this.$.ticketId.value,
|
2022-05-05 13:56:17 +00:00
|
|
|
recipientId: this.gui.user.id,
|
|
|
|
type: 'deliveryNote'
|
|
|
|
});
|
|
|
|
window.open(`/api/report/delivery-note?${params}`);
|
2018-08-30 13:26:05 +00:00
|
|
|
},
|
2022-05-05 13:56:17 +00:00
|
|
|
|
2018-08-30 13:26:05 +00:00
|
|
|
repeaterFunc: function(res, form) {
|
2022-05-28 01:18:06 +00:00
|
|
|
var discount = res.$.discount;
|
2022-05-28 15:49:46 +00:00
|
|
|
discount.style.display = form.$.discount ? 'inline' : 'none';
|
2022-05-28 01:18:06 +00:00
|
|
|
res.$.discountSubtotal.value = this.discountSubtotal(form);
|
|
|
|
res.$.subtotal.value = this.subtotal(form);
|
2018-08-30 13:26:05 +00:00
|
|
|
},
|
|
|
|
|
|
|
|
discountSubtotal: function(form) {
|
2022-05-28 15:49:46 +00:00
|
|
|
return form.$.quantity * form.$.price;
|
2018-08-30 13:26:05 +00:00
|
|
|
},
|
|
|
|
|
|
|
|
subtotal: function(form) {
|
2022-05-28 15:49:46 +00:00
|
|
|
var discount = form.$.discount;
|
2018-08-30 13:26:05 +00:00
|
|
|
return this.discountSubtotal(form) * ((100 - discount) / 100);
|
|
|
|
},
|
2020-10-23 10:10:41 +00:00
|
|
|
|
|
|
|
servicesFunc: function(res, form) {
|
2022-05-28 15:49:46 +00:00
|
|
|
res.$.subtotal.value = form.$.quantity * form.$.price;
|
2020-10-23 10:10:41 +00:00
|
|
|
},
|
|
|
|
|
|
|
|
onServicesChanged: function(model) {
|
2022-05-28 01:18:06 +00:00
|
|
|
this.$.services.node.style.display =
|
2020-10-23 10:10:41 +00:00
|
|
|
model.numRows > 0 ? 'block' : 'none';
|
|
|
|
},
|
2018-08-30 13:26:05 +00:00
|
|
|
|
|
|
|
onPackagesChanged: function(model) {
|
2022-05-28 01:18:06 +00:00
|
|
|
this.$.packages.node.style.display =
|
2018-01-05 12:57:35 +00:00
|
|
|
model.numRows > 0 ? 'block' : 'none';
|
2020-10-23 10:10:41 +00:00
|
|
|
},
|
2015-01-23 13:09:30 +00:00
|
|
|
});
|
|
|
|
|