Untitled

 avatar
unknown
python
10 months ago
1.7 kB
17
Indexable
odoo.define('pos_invoice_to_receipt.models', function (require) {
    "use strict";

    var { Order } = require('point_of_sale.models');
    var Registries = require('point_of_sale.Registries');
    var rpc = require('web.rpc');

    const CustomOrder = (Order) => class CustomOrder extends Order {

        async fetch_invoice_number() {
            if (this.to_invoice && !this.invoice_number || this.invoice_number == undefined) {
                const move = await rpc.query({
                    model: "pos.order",
                    method: "search_read",
                    domain: [["pos_reference", "=", this.name]],
                    fields: ['account_move']
                });
        
                if (move.length > 0) {
                    this.invoice_number = await move[0].account_move[1];
                } else {
                    this.invoice_number = null;
                }
                return this.invoice_number
            }
        }
        

        export_for_printing() {
            var result = super.export_for_printing(...arguments);
                if(this.to_invoice){
                    if('invoice_number' in this){
                        result.client = this.get_partner();
                        if (!result.logo) {
                            result.logo = this.pos.company.logo;
                        }
                        if (this.to_invoice && this.invoice_number) {
                            result.invoice = this.invoice_number;
                        }
                        return result
                    }
                } else {
                    return result
                }
             }
    };

    Registries.Model.extend(Order, CustomOrder);
});

Editor is loading...