|
@@ -8,7 +8,7 @@ from account_voucher import create_account_voucher
|
|
|
from http_response import make_gzip_response
|
|
|
from product_pricelist import get_pricelist_id
|
|
|
from product_template import get_products
|
|
|
-from purchase_order import (get_purchase_orders, get_purchase_order, create_purchase_order, confirm_purchase_order, force_assign_picking, done_picking)
|
|
|
+from purchase_order import (get_purchase_orders, get_purchase_order, create_purchase_order, confirm_purchase_order, done_purchase_order, force_assign_picking, done_picking)
|
|
|
from res_bank_cheque_type import get_cheque_types
|
|
|
from res_bank_payments_type import get_bank_payment_types
|
|
|
from res_bank import get_banks
|
|
@@ -100,18 +100,25 @@ def process_data(data=None):
|
|
|
|
|
|
return order.id
|
|
|
|
|
|
- def paying_order(order_id, supplier_invoice_number=None, supplier_id=None, cart_items=None, date_now=None, payment_term_id=None):
|
|
|
- invoice = None
|
|
|
+ def paying_order(order_id, supplier_invoice_number=None, date_now=None, payment_term_id=None):
|
|
|
+ order = get_purchase_order(order_id)
|
|
|
|
|
|
- if order_id:
|
|
|
- order = get_purchase_order(order_id)
|
|
|
- invoice = order.invoice_ids
|
|
|
+ lines = [{
|
|
|
+ 'name': l.name,
|
|
|
+ 'id': l.product_id.id,
|
|
|
+ 'quantity': l.product_qty,
|
|
|
+ 'price': l.price_unit
|
|
|
+ } for l in order.order_line]
|
|
|
|
|
|
- if not invoice:
|
|
|
- invoice = create_invoice(supplier_id, cart_items, currency_id, payment_term_id, supplier_invoice_number)
|
|
|
+ invoice = create_invoice(order.partner_id.id, lines, order.currency_id.id, payment_term_id, supplier_invoice_number)
|
|
|
|
|
|
invoice_ids = invoice.mapped(lambda x: x.id)
|
|
|
|
|
|
+ order.write({
|
|
|
+ 'invoice_ids': [[4, invoice_ids, False]],
|
|
|
+ 'invoiced': True
|
|
|
+ })
|
|
|
+
|
|
|
prepare_invoice(invoice_ids, currency_id, date_now)
|
|
|
move_lines = create_invoice_move_lines(invoice_ids, payment, date_now)
|
|
|
account_move = create_account_move(invoice_ids, move_lines)
|
|
@@ -164,52 +171,13 @@ def process_data(data=None):
|
|
|
if not order_id:
|
|
|
return
|
|
|
|
|
|
- paying_order(order_id, supplier_invoice_number, supplier_id, cart_items, date_now, payment_term_id)
|
|
|
+ paying_order(order_id, supplier_invoice_number, date_now, payment_term_id)
|
|
|
+ done_purchase_order(order_id)
|
|
|
|
|
|
if mode == 'picking':
|
|
|
order_id = data.get('orderId')
|
|
|
complete_order(order_id)
|
|
|
|
|
|
-
|
|
|
- # prepare_invoice(invoice_ids, currency_id, date_now)
|
|
|
- # move_lines = create_invoice_move_lines(invoice_ids, payment, date_now)
|
|
|
- # account_move = create_account_move(invoice_ids, move_lines)
|
|
|
- #
|
|
|
- # validate_invoice(invoice_ids, mode)
|
|
|
- #
|
|
|
- # account_voucher = create_account_voucher(account_move.id, journal_id, currency_id, payment)
|
|
|
- # close_invoice(invoice_ids)
|
|
|
- #
|
|
|
- # statement_lines = create_bank_statement_lines(account_voucher.id)
|
|
|
- # create_bank_statement(account_voucher.id, statement_lines, date_now)
|
|
|
-
|
|
|
- # invoice = None
|
|
|
- #
|
|
|
- # if mode == 'purchase':
|
|
|
- # purchase_order = create_purchase_order(supplier_id, cart_items, date_now, currency_id, pricelist_id, payment_term_id)
|
|
|
- # confirm_purchase_order(purchase_order.id)
|
|
|
- #
|
|
|
- # invoice = purchase_order.invoice_ids
|
|
|
- # invoice.write({
|
|
|
- # 'supplier_invoice_number': supplier_invoice_number
|
|
|
- # })
|
|
|
- # else:
|
|
|
- # invoice = create_invoice(supplier_id, cart_items, currency_id, payment_term_id, supplier_invoice_number)
|
|
|
- #
|
|
|
- # invoice_ids = invoice.mapped(lambda x: x.id)
|
|
|
- #
|
|
|
- # prepare_invoice(invoice_ids, currency_id, date_now)
|
|
|
- # move_lines = create_invoice_move_lines(invoice_ids, payment, date_now)
|
|
|
- # account_move = create_account_move(invoice_ids, move_lines)
|
|
|
- #
|
|
|
- # validate_invoice(invoice_ids, mode)
|
|
|
- #
|
|
|
- # account_voucher = create_account_voucher(account_move.id, journal_id, currency_id, payment)
|
|
|
- # close_invoice(invoice_ids)
|
|
|
- #
|
|
|
- # statement_lines = create_bank_statement_lines(account_voucher.id)
|
|
|
- # create_bank_statement(account_voucher.id, statement_lines, date_now)
|
|
|
-
|
|
|
return {
|
|
|
'status': 'ok'
|
|
|
}
|