This commit is contained in:
Oscar 2021-11-15 10:28:29 -05:00
parent 4f425e3fd8
commit 2cc7fdcf1d

57
sale.py
View file

@ -1226,37 +1226,38 @@ class WizardSalePayment(Wizard):
sale = Sale(active_id)
form = self.start
device_id = user.sale_device.id if user.sale_device else sale.sale_device.id
statements = Statement.search([
('journal', '=', form.journal.id),
('state', '=', 'draft'),
('sale_device', '=', device_id),
], order=[('date', 'DESC')])
if not statements:
raise DraftStatementError(
gettext('sale_pos.msg_not_draft_statement', journal=form.journal.name))
if form.payment_amount > 0:
device_id = user.sale_device.id if user.sale_device else sale.sale_device.id
statements = Statement.search([
('journal', '=', form.journal.id),
('state', '=', 'draft'),
('sale_device', '=', device_id),
], order=[('date', 'DESC')])
if not statements:
raise DraftStatementError(
gettext('sale_pos.msg_not_draft_statement', journal=form.journal.name))
if not sale.number:
Sale.set_number([sale])
if not sale.number:
Sale.set_number([sale])
if not sale.party.account_receivable:
raise PartyMissingAccount(
gettext('sale_pos.msg_party_without_account_receivable', s=sale.party.name))
account = sale.party.account_receivable.id
if not sale.party.account_receivable:
raise PartyMissingAccount(
gettext('sale_pos.msg_party_without_account_receivable', s=sale.party.name))
account = sale.party.account_receivable.id
if form.payment_amount:
payment = StatementLine(
statement=statements[0].id,
date=date.today(),
amount=form.payment_amount,
party=sale.party.id,
account=account,
description=self.start.voucher,
sale=active_id,
# number=self.start.voucher,
# voucher=self.start.voucher,
)
payment.save()
if form.payment_amount:
payment = StatementLine(
statement=statements[0].id,
date=date.today(),
amount=form.payment_amount,
party=sale.party.id,
account=account,
description=self.start.voucher,
sale=active_id,
# number=self.start.voucher,
# voucher=self.start.voucher,
)
payment.save()
if sale.total_amount != sale.paid_amount:
return 'start'