|
@ -6,45 +6,45 @@ odoo.define('custom_receipts_for_pos.receipt',function(require){ |
|
|
const OrderReceipt = require('point_of_sale.OrderReceipt'); |
|
|
const OrderReceipt = require('point_of_sale.OrderReceipt'); |
|
|
const AbstractReceiptScreen = require('point_of_sale.AbstractReceiptScreen'); |
|
|
const AbstractReceiptScreen = require('point_of_sale.AbstractReceiptScreen'); |
|
|
var SuperOrder = models.Order; |
|
|
var SuperOrder = models.Order; |
|
|
|
|
|
const{onMounted}=owl; |
|
|
|
|
|
|
|
|
PosDB.include({ |
|
|
PosDB.include({ |
|
|
init:function(options){ |
|
|
init:function(options) |
|
|
var self=this;this._super(options); |
|
|
{ |
|
|
|
|
|
var self=this; |
|
|
|
|
|
this._super(options); |
|
|
this.receipt_design=null; |
|
|
this.receipt_design=null; |
|
|
}, |
|
|
}, |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
const PosResOrderReceipt = OrderReceipt => |
|
|
const PosResOrderReceipt = OrderReceipt => |
|
|
class extends OrderReceipt { |
|
|
class extends OrderReceipt { |
|
|
get receiptEnv() { |
|
|
setup(){ |
|
|
let receipt_render_env = super.receiptEnv; |
|
|
super.setup(); |
|
|
let receipt = receipt_render_env.receipt; |
|
|
onMounted(()=>{ |
|
|
console.log(receipt, 'receipt') |
|
|
var self=this; |
|
|
var self=this; |
|
|
if(self.env.pos.config.is_custom_receipt){ |
|
|
if(self.env.pos.config.is_custom_receipt){ |
|
|
var receipt_design=self.env.pos.config.design_receipt |
|
|
var receipt_design=self.env.pos.config.design_receipt |
|
|
var order=self._receiptEnv.order; |
|
|
var order=self._receiptEnv.order; |
|
|
var data={ |
|
|
var data={ |
|
|
widget:self.env, |
|
|
widget:self.env, |
|
|
pos:order.pos, |
|
|
pos:order.pos, |
|
|
order:order, |
|
|
order:order, |
|
|
receipt:order.export_for_printing(), |
|
|
receipt:order.export_for_printing(), |
|
|
orderlines:order.get_orderlines(), |
|
|
orderlines:order.get_orderlines(), |
|
|
paymentlines:order.get_paymentlines(), |
|
|
paymentlines:order.get_paymentlines(), |
|
|
moment:moment, |
|
|
moment:moment, |
|
|
}; |
|
|
}; |
|
|
var parser=new DOMParser(); |
|
|
console.log(data, 'data') |
|
|
var xmlDoc=parser.parseFromString(receipt_design,"text/xml"); |
|
|
var parser=new DOMParser(); |
|
|
var s=new XMLSerializer(); |
|
|
var xmlDoc=parser.parseFromString(receipt_design,"text/xml"); |
|
|
var newXmlStr=s.serializeToString(xmlDoc); |
|
|
var s=new XMLSerializer(); |
|
|
var qweb=new QWeb2.Engine(); |
|
|
var newXmlStr=s.serializeToString(xmlDoc); |
|
|
qweb.add_template('<templates><t t-name="receipt_design">'+newXmlStr+'</t></templates>'); |
|
|
var qweb=new QWeb2.Engine(); |
|
|
var receipt=qweb.render('receipt_design',data);$('div.pos-receipt').replaceWith(receipt); |
|
|
qweb.add_template('<templates><t t-name="receipt_design">'+newXmlStr+'</t></templates>'); |
|
|
} |
|
|
receipt=qweb.render('receipt_design',data);$('div.pos-receipt').replaceWith(receipt); |
|
|
}) |
|
|
return receipt_render_env; |
|
|
|
|
|
} |
|
|
|
|
|
return receipt_render_env; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
Registries.Component.extend(OrderReceipt, PosResOrderReceipt) |
|
|
Registries.Component.extend(OrderReceipt, PosResOrderReceipt) |
|
|
return OrderReceipt |
|
|
}); |
|
|
}); |
|
|
|
|
|