Browse Source

May 06: [FIX] Bug Fixed 'custom_receipts_for_pos'

pull/254/merge
RisvanaCybro 12 months ago
parent
commit
551f9ef297
  1. 2
      custom_receipts_for_pos/__manifest__.py
  2. 7
      custom_receipts_for_pos/doc/RELEASE_NOTES.md
  3. 55
      custom_receipts_for_pos/static/src/js/ReceiptScreen/order_receipt.js
  4. 2
      custom_receipts_for_pos/views/pos_config_views.xml

2
custom_receipts_for_pos/__manifest__.py

@ -21,7 +21,7 @@
############################################################################# #############################################################################
{ {
'name': 'Custom Receipts for POS', 'name': 'Custom Receipts for POS',
'version': '15.0.1.0.0', 'version': '15.0.1.0.1',
'summary': "Add Custom Receipt for each POS", 'summary': "Add Custom Receipt for each POS",
'description': "It helps to create and select customised receipts for " 'description': "It helps to create and select customised receipts for "
"each POS", "each POS",

7
custom_receipts_for_pos/doc/RELEASE_NOTES.md

@ -4,3 +4,10 @@
#### Version 15.0.1.0.0 #### Version 15.0.1.0.0
#### ADD #### ADD
- Initial Commit for Custom Receipts for POS - Initial Commit for Custom Receipts for POS
## Bug Fix
#### 06.05.2024
#### version 15.0.1.0.1
#### ADD
- The issue arises when the receipt is printed from the ticket screen but the
- custom receipt fails to load

55
custom_receipts_for_pos/static/src/js/ReceiptScreen/order_receipt.js

@ -6,39 +6,34 @@ odoo.define('custom_receipts_for_pos.receipt',function(require){
// extending the pos receipt screen // extending the pos receipt screen
const PosResOrderReceipt = OrderReceipt => const PosResOrderReceipt = OrderReceipt =>
class extends OrderReceipt { class extends OrderReceipt {
get receiptEnv() { mounted() {
let receipt_render_env = super.receiptEnv; let receipt_render_env = super.receiptEnv;
let receipt = receipt_render_env.receipt; let receipt = receipt_render_env.receipt;
var self=this; if(this.env.pos.config.is_custom_receipt){
// if there is a selected receipt in pos config replace that var receipt_design=this.env.pos.config.design_receipt;
// receipt with existing one var order=this._receiptEnv.order;
if(self.env.pos.config.is_custom_receipt){ var data={
var receipt_design=self.env.pos.config.design_receipt widget:this.env,
var order=self._receiptEnv.order; pos:order.pos,
var data={ order:order,
widget:self.env, receipt:order.export_for_printing(),
pos:order.pos, orderlines:order.get_orderlines(),
order:order, paymentlines:order.get_paymentlines(),
receipt:order.export_for_printing(), moment:moment,
orderlines:order.get_orderlines(),
paymentlines:order.get_paymentlines(),
moment:moment,
}; };
var parser=new DOMParser(); var parser=new DOMParser();
var xmlDoc=parser.parseFromString(receipt_design, var xmlDoc=parser.parseFromString(receipt_design,
"text/xml"); "text/xml");
var s=new XMLSerializer(); var s=new XMLSerializer();
var newXmlStr=s.serializeToString(xmlDoc); var newXmlStr=s.serializeToString(xmlDoc);
var qweb=new QWeb2.Engine(); var qweb=new QWeb2.Engine();
qweb.add_template('<templates><t t-name="receipt_design">' qweb.add_template('<templates><t t-name="receipt_design">'
+newXmlStr+'</t></templates>'); +newXmlStr+'</t></templates>');
receipt=qweb.render('receipt_design',data);$( receipt=qweb.render('receipt_design',data);
'div.pos-receipt').replaceWith(receipt); $('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 return OrderReceipt
}); });

2
custom_receipts_for_pos/views/pos_config_views.xml

@ -27,4 +27,4 @@
</xpath> </xpath>
</field> </field>
</record> </record>
</odoo> </odoo>

Loading…
Cancel
Save