mirror of
https://github.com/OCA/pms.git
synced 2025-01-29 00:17:45 +02:00
[ADD]pms_api_rest: autoinvoice downpayments policy
This commit is contained in:
@@ -74,16 +74,12 @@ class PmsInvoiceService(Component):
|
||||
}
|
||||
)
|
||||
)
|
||||
reversal_action = move_reversal.reverse_moves()
|
||||
reverse_invoice = self.env["account.move"].browse(
|
||||
reversal_action["res_id"]
|
||||
)
|
||||
invoice = reverse_invoice
|
||||
invoice.sudo().action_post()
|
||||
move_reversal.reverse_moves()
|
||||
reverse_invoice = move_reversal.new_move_ids
|
||||
# If change invoice by reversal, and new_vals has invoice_line_ids
|
||||
# we need to mapp the new invoice lines with the new invoice
|
||||
reverse_lines = []
|
||||
for line in new_vals["invoice_line_ids"]:
|
||||
for line in new_vals.get("invoice_line_ids", []):
|
||||
origin_line = self.env["account.move.line"].browse(line[1])
|
||||
sale_line_id = origin_line.sale_line_ids.id
|
||||
reverse_line = reverse_invoice.invoice_line_ids.filtered(
|
||||
@@ -99,8 +95,16 @@ class PmsInvoiceService(Component):
|
||||
reverse_lines.append(line)
|
||||
if reverse_lines:
|
||||
new_vals["invoice_line_ids"] = reverse_lines
|
||||
|
||||
invoice = self._direct_move_update(invoice, new_vals)
|
||||
new_vals["journal_id"] = (
|
||||
invoice.pms_property_id._get_folio_default_journal(
|
||||
new_vals.get("partner_id", invoice.partner_id.id)
|
||||
).id,
|
||||
)
|
||||
reverse_invoice.write(new_vals)
|
||||
invoice = reverse_invoice
|
||||
invoice.sudo().action_post()
|
||||
else:
|
||||
invoice = self._direct_move_update(invoice, new_vals)
|
||||
# Update invoice lines name
|
||||
for item in pms_invoice_info.moveLines:
|
||||
if item.saleLineId in invoice.invoice_line_ids.mapped(
|
||||
|
||||
@@ -179,7 +179,10 @@ class PmsTransactionService(Component):
|
||||
if transaction.create_uid
|
||||
else None,
|
||||
transactionType=transaction.pms_api_transaction_type or None,
|
||||
isReconcilied=transaction.reconciled_statements_count > 0,
|
||||
isReconcilied=(
|
||||
transaction.reconciled_statements_count > 0
|
||||
or transaction.reconciled_invoices_count > 0
|
||||
),
|
||||
)
|
||||
)
|
||||
return PmsTransactionResults(
|
||||
@@ -220,7 +223,10 @@ class PmsTransactionService(Component):
|
||||
reference=transaction.ref if transaction.ref else None,
|
||||
createUid=transaction.create_uid.id if transaction.create_uid else None,
|
||||
transactionType=transaction.pms_api_transaction_type or None,
|
||||
isReconcilied=transaction.reconciled_statements_count > 0,
|
||||
isReconcilied=(
|
||||
transaction.reconciled_statements_count > 0
|
||||
or transaction.reconciled_invoices_count > 0
|
||||
),
|
||||
)
|
||||
|
||||
@restapi.method(
|
||||
|
||||
Reference in New Issue
Block a user