Fix: Autopep8
This commit is contained in:
parent
23fa2996a6
commit
4ebe44ae45
@ -8,9 +8,9 @@ from . import statement
|
||||
from . import user
|
||||
from . import configuration_statement
|
||||
|
||||
|
||||
def register():
|
||||
Pool.register(
|
||||
configuration_statement.Configuration,
|
||||
statement.Journal,
|
||||
statement.Statement,
|
||||
statement.Line,
|
||||
@ -27,6 +27,7 @@ def register():
|
||||
statement.CloseStatementStart,
|
||||
statement.CloseStatementDone,
|
||||
statement.PayInvoiceSupplierStart,
|
||||
configuration_statement.Configuration,
|
||||
module='sale_payment', type_='model')
|
||||
Pool.register(
|
||||
sale.WizardSalePayment,
|
||||
|
@ -6,6 +6,7 @@ from trytond.pyson import Eval
|
||||
from trytond.transaction import Transaction
|
||||
from trytond.pool import Pool
|
||||
|
||||
|
||||
class Configuration(ModelSingleton, ModelView, ModelSQL):
|
||||
"Configuration Chas Closures"
|
||||
__name__ = 'sale.cash_closures'
|
||||
@ -17,19 +18,21 @@ class Configuration(ModelSingleton, ModelView, ModelSQL):
|
||||
|
||||
mismatch_limit = Monetary(
|
||||
"Mismatch Limit", currency='currency', digits='currency')
|
||||
account_mismatch_charge = fields.Many2One('account.account', "Account Mismatch Charge",
|
||||
account_mismatch_charge = fields.Many2One(
|
||||
'account.account', "Account Mismatch Charge",
|
||||
domain=[
|
||||
('company', '=', Eval('company', 0)),
|
||||
('type', '!=', None),
|
||||
('closed', '!=', True),
|
||||
],)
|
||||
account_mismatch_positive = fields.Many2One(
|
||||
'account.account', "Account Mismatch Positivo",
|
||||
domain=[
|
||||
('company', '=', Eval('company', 0)),
|
||||
('type', '!=', None),
|
||||
('closed', '!=', True),
|
||||
],)
|
||||
|
||||
account_mismatch_positive = fields.Many2One('account.account', "Account Mismatch Positivo",
|
||||
domain=[
|
||||
('company', '=', Eval('company', 0)),
|
||||
('type', '!=', None),
|
||||
('closed', '!=', True),
|
||||
],)
|
||||
@staticmethod
|
||||
def default_currency():
|
||||
Company = Pool().get('company.company')
|
||||
|
19
sale.py
19
sale.py
@ -162,16 +162,17 @@ class Sale(metaclass=PoolMeta):
|
||||
condition=(sale.id == payline.sale)
|
||||
).select(
|
||||
sale.id,
|
||||
where=((sale.total_amount_cache != None) &
|
||||
(sale.state.in_([
|
||||
where=((sale.total_amount_cache) & (
|
||||
sale.state.in_([
|
||||
'draft',
|
||||
'quotation',
|
||||
'confirmed',
|
||||
'processing',
|
||||
'done']))),
|
||||
group_by=(sale.id),
|
||||
having=(Operator(sale.total_amount_cache -
|
||||
Sum(Coalesce(payline.amount, 0)), value)
|
||||
having=(Operator(
|
||||
sale.total_amount_cache - Sum(
|
||||
Coalesce(payline.amount, 0)), value)
|
||||
))
|
||||
return [('id', 'in', query)]
|
||||
|
||||
@ -196,17 +197,17 @@ class Sale(metaclass=PoolMeta):
|
||||
class ChangePaymentMethodForm(ModelView):
|
||||
'Change Payments Method form'
|
||||
__name__ = 'sale.change_payment_method.form'
|
||||
|
||||
sale = fields.Many2One('sale.sale', "Sale", required=True)
|
||||
statement = fields.Many2One('account.statement', 'Statement Journal',
|
||||
domain=[
|
||||
('id', 'in', Eval('statements', [])),
|
||||
],
|
||||
depends=['journals'], required=True)
|
||||
], required=True)
|
||||
statements = fields.One2Many('account.statement', None,
|
||||
'Allowed Statement', readonly=True)
|
||||
payment = fields.Many2One(
|
||||
'account.statement.line', "Payment", required=True,
|
||||
domain=[('sale.id', '=', Eval('sale'))])
|
||||
domain=[('sale', '=', Eval('sale'))])
|
||||
|
||||
|
||||
class ChangePaymentMethod(Wizard):
|
||||
@ -379,8 +380,8 @@ class WizardSaleReconcile(Wizard):
|
||||
if not payment.move:
|
||||
continue
|
||||
for line in payment.move.lines:
|
||||
if (not line.reconciliation and
|
||||
line.account == account):
|
||||
if (not line.reconciliation and (
|
||||
line.account == account)):
|
||||
lines.append(line)
|
||||
amount += line.debit - line.credit
|
||||
if lines and amount == Decimal('0.0'):
|
||||
|
82
statement.py
82
statement.py
@ -4,7 +4,8 @@
|
||||
from trytond.model import fields, ModelView
|
||||
from trytond.pool import Pool, PoolMeta
|
||||
from trytond.transaction import Transaction
|
||||
from trytond.wizard import Button, StateTransition, StateAction, StateView, Wizard
|
||||
from trytond.wizard import (
|
||||
Button, StateTransition, StateAction, StateView, Wizard)
|
||||
from decimal import Decimal
|
||||
from trytond.i18n import gettext
|
||||
from trytond.modules.currency.fields import Monetary
|
||||
@ -121,6 +122,7 @@ class OpenStatementStart(ModelView):
|
||||
'Open Statement'
|
||||
__name__ = 'open.statement.start'
|
||||
|
||||
|
||||
class OpenStatementDone(ModelView):
|
||||
'Open Statement'
|
||||
__name__ = 'open.statement.done'
|
||||
@ -172,7 +174,8 @@ class OpenStatement(Wizard):
|
||||
for journal in device.journals:
|
||||
if journal not in journals_of_draft_statements:
|
||||
values = {
|
||||
'name': '%s - %s' % (device.rec_name, journal.rec_name),
|
||||
'name': '%s - %s' % (
|
||||
device.rec_name, journal.rec_name),
|
||||
'journal': journal.id,
|
||||
'company': user.company.id,
|
||||
'start_balance': start_balances.get(journal.id,
|
||||
@ -185,7 +188,9 @@ class OpenStatement(Wizard):
|
||||
results.append(gettext('sale_payment.open_statement',
|
||||
statement=journal.rec_name))
|
||||
else:
|
||||
results.append(gettext('sale_payment.statement_already_opened',
|
||||
results.append(
|
||||
gettext(
|
||||
'sale_payment.statement_already_opened',
|
||||
statement=journal.rec_name))
|
||||
statements.extend(Statement.create(vlist))
|
||||
self.result = '\n'.join(results)
|
||||
@ -223,7 +228,6 @@ class CloseStatement(Wizard):
|
||||
Button('Done', 'end', 'tryton-ok', default=True),
|
||||
])
|
||||
|
||||
|
||||
def default_done(self, fields):
|
||||
return {
|
||||
'result': self.result,
|
||||
@ -232,7 +236,7 @@ class CloseStatement(Wizard):
|
||||
def default_start(self, fields):
|
||||
pool = Pool()
|
||||
User = pool.get('res.user')
|
||||
StatementLine = pool.get('statement.line')
|
||||
# StatementLine = pool.get('statement.line')
|
||||
Statement = pool.get('account.statement')
|
||||
statementLines = []
|
||||
user = Transaction().user
|
||||
@ -258,7 +262,8 @@ class CloseStatement(Wizard):
|
||||
'journal': s.journal.id,
|
||||
'start_balance': s.start_balance,
|
||||
'balance': end_balance,
|
||||
'end_balance':end_balance+s.start_balance
|
||||
'end_balance': (
|
||||
end_balance + s.start_balance)
|
||||
}
|
||||
statementLines.append(line)
|
||||
|
||||
@ -305,7 +310,7 @@ class CloseStatement(Wizard):
|
||||
if account and transfer:
|
||||
end_balance = abs(end_balance) - abs(transfer)
|
||||
statement.end_balance = end_balance
|
||||
lines = statement.lines
|
||||
# lines = statement.lines
|
||||
conciliation = tuple([StatementLine(
|
||||
date=datetime.today().date(),
|
||||
amount=abs(transfer) * -1,
|
||||
@ -316,17 +321,22 @@ class CloseStatement(Wizard):
|
||||
if mismatch and mismatch.real > 0:
|
||||
pass
|
||||
|
||||
if (config.mismatch_limit and config.account_mismatch_charge):
|
||||
if mismatch and (abs(mismatch) >= abs(config.mismatch_limit.real)):
|
||||
lines = statement.lines
|
||||
if employee_party == None:
|
||||
raise UserError(str("Debe definir un Empleado para el Usuario."))
|
||||
if config.mismatch_limit and (
|
||||
config.account_mismatch_charge):
|
||||
if mismatch and (abs(mismatch) >= abs(
|
||||
config.mismatch_limit.real)):
|
||||
# lines = statement.lines
|
||||
if employee_party is None:
|
||||
raise UserError(str(
|
||||
"Debe definir un Empleado para el Usuario."
|
||||
))
|
||||
conciliation_mismatch = tuple([StatementLine(
|
||||
date=datetime.today().date(),
|
||||
amount=mismatch,
|
||||
account=config.account_mismatch_charge.id)]
|
||||
)
|
||||
statement.lines = statement.lines + conciliation_mismatch
|
||||
statement.lines =\
|
||||
statement.lines + conciliation_mismatch
|
||||
end_balance = abs(end_balance) - abs(mismatch)
|
||||
|
||||
statement.end_balance = end_balance
|
||||
@ -335,7 +345,9 @@ class CloseStatement(Wizard):
|
||||
results.append(gettext('sale_payment.close_statement',
|
||||
statement=statement.rec_name))
|
||||
elif statement:
|
||||
results.append(gettext('sale_payment.statement_already_closed',
|
||||
results.append(
|
||||
gettext(
|
||||
'sale_payment.statement_already_closed',
|
||||
statement=statement.rec_name))
|
||||
else:
|
||||
results.append(gettext('sale_payment.not_statement_found',
|
||||
@ -362,11 +374,13 @@ class StatementLine(ModelView):
|
||||
currency = fields.Many2One(
|
||||
'currency.currency', "Currency")
|
||||
start_balance = Monetary(
|
||||
"Start Balance", currency='currency', digits='currency', states=_states)
|
||||
"Start Balance", currency='currency', digits='currency',
|
||||
states=_states)
|
||||
balance = Monetary(
|
||||
"Balance", currency='currency', digits='currency', states=_states)
|
||||
end_balance = Monetary(
|
||||
"End Balance", currency='currency', digits='currency', readonly=True)
|
||||
"End Balance", currency='currency', digits='currency',
|
||||
readonly=True)
|
||||
transfer = Monetary(
|
||||
"Transfer", currency='currency', digits='currency')
|
||||
real_cash = Monetary(
|
||||
@ -395,25 +409,31 @@ class StatementLine(ModelView):
|
||||
|
||||
@fields.depends('end_balance', 'real_cash', 'mismatch')
|
||||
def on_change_real_cash(self):
|
||||
if self.real_cash and self.end_balance:
|
||||
self.mismatch = self.real_cash - self.end_balance
|
||||
|
||||
|
||||
class PayInvoiceSupplierStart(ModelView):
|
||||
'Payment Invoice To Supplier'
|
||||
__name__ = 'pay_invoice.statement.start'
|
||||
|
||||
invoice_to_pay = fields.One2Many('line_invoice.pay', None, "Invoice To Pay")
|
||||
invoice_to_pay = fields.One2Many(
|
||||
'line_invoice.pay', None, "Invoice To Pay")
|
||||
|
||||
|
||||
class PayInvoiceSupplier(Wizard):
|
||||
'Payment Invoice To Supplier'
|
||||
__name__ = 'pay_invoice.statement'
|
||||
|
||||
start = StateView('pay_invoice.statement.start',
|
||||
start = StateView(
|
||||
'pay_invoice.statement.start',
|
||||
'sale_payment.pay_invoice_statement_start', [
|
||||
Button('Cancel', 'end', 'tryton-cancel'),
|
||||
Button('Pay', 'pay', 'tryton-ok', default=True),
|
||||
])
|
||||
|
||||
pay = StateAction('account_statement.act_statement_form')
|
||||
|
||||
def do_pay(self, action):
|
||||
pool = Pool()
|
||||
User = pool.get('res.user')
|
||||
@ -438,7 +458,7 @@ class PayInvoiceSupplier(Wizard):
|
||||
party = pay.party
|
||||
amount = pay.amount
|
||||
statement = draft_statements.get(journal)
|
||||
lines = statement.lines
|
||||
# lines = statement.lines
|
||||
pay_to_add = tuple([StatementLine(
|
||||
date=datetime.today().date(),
|
||||
party=party,
|
||||
@ -457,7 +477,8 @@ class LinesInvoiceToPay(ModelView):
|
||||
'company.company', "Company", required=True)
|
||||
journal = fields.Many2One('account.statement.journal', 'Journal',
|
||||
required=True)
|
||||
amount = Monetary("Amount", currency='currency', digits='currency', required=True)
|
||||
amount = Monetary(
|
||||
"Amount", currency='currency', digits='currency', required=True)
|
||||
party = fields.Many2One('party.party', "Party", required=True,
|
||||
context={'company': Eval('company', -1)},)
|
||||
invoice = fields.Reference(
|
||||
@ -472,10 +493,10 @@ class LinesInvoiceToPay(ModelView):
|
||||
If(Bool(Eval('account')),
|
||||
('account', '=', Eval('account')),
|
||||
()),
|
||||
If(Eval('statement_state') == 'draft',
|
||||
('state', '=', 'posted'),
|
||||
('state', '!=', '')),
|
||||
],},
|
||||
# If(Eval('statement_state') == 'draft',
|
||||
# ('state', '=', 'posted'),
|
||||
# ('state', '!=', '')),
|
||||
]},
|
||||
context={'with_payment': False})
|
||||
account = fields.Many2One('account.account', "Account",
|
||||
domain=[
|
||||
@ -484,18 +505,29 @@ class LinesInvoiceToPay(ModelView):
|
||||
('closed', '!=', True),
|
||||
],)
|
||||
description = fields.Char("Description")
|
||||
currency = fields.Many2One(
|
||||
'currency.currency', 'Currency', required=True)
|
||||
|
||||
@staticmethod
|
||||
def default_company():
|
||||
return Transaction().context.get('company')
|
||||
|
||||
@classmethod
|
||||
def default_currency(cls, **pattern):
|
||||
pool = Pool()
|
||||
Company = pool.get('company.company')
|
||||
company = pattern.get('company')
|
||||
if not company:
|
||||
company = cls.default_company()
|
||||
if company:
|
||||
return Company(company).currency.id
|
||||
|
||||
@classmethod
|
||||
def _get_relations(cls):
|
||||
"Return a list of Model names for related_to Reference"
|
||||
|
||||
return ['account.invoice']
|
||||
|
||||
|
||||
@classmethod
|
||||
def get_relations(cls):
|
||||
Model = Pool().get('ir.model')
|
||||
|
@ -4,25 +4,6 @@ The COPYRIGHT file at the top level of this repository contains the full
|
||||
copyright notices and license terms. -->
|
||||
<tryton>
|
||||
<data>
|
||||
<record model="ir.action.act_window" id="act_configuration_closures_form">
|
||||
<field name="name">Configuration Closures</field>
|
||||
<field name="res_model">sale.cash_closures</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="configuration_closures_view_form">
|
||||
<field name="model">sale.cash_closures</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">configuration_closures_form</field>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_prospect_form_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="configuration_closures_view_form"/>
|
||||
<field name="act_window" ref="act_configuration_closures_form"/>
|
||||
</record>
|
||||
<menuitem
|
||||
parent="sale.menu_configuration"
|
||||
sequence="10"
|
||||
id="menu_configuration_closure"
|
||||
action="act_configuration_closures_form"/>
|
||||
<record model="ir.action.act_window" id="act_sale_statement_form">
|
||||
<field name="name">Statements</field>
|
||||
<field name="res_model">account.statement</field>
|
||||
@ -87,11 +68,6 @@ copyright notices and license terms. -->
|
||||
<field name="name">Open Statements</field>
|
||||
<field name="wiz_name">open.statement</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="statement_line_view_form">
|
||||
<field name="model">statement.line</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">statement_line_form</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="statement_line_view_tree_sequence">
|
||||
<field name="model">statement.line</field>
|
||||
<field name="type">tree</field>
|
||||
@ -148,6 +124,26 @@ copyright notices and license terms. -->
|
||||
<field name="group" ref="account_statement.group_statement"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.act_window" id="act_configuration_closures_form">
|
||||
<field name="name">Configuration Closures</field>
|
||||
<field name="res_model">sale.cash_closures</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="configuration_closures_view_form">
|
||||
<field name="model">sale.cash_closures</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">configuration_closures_form</field>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_prospect_form_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="configuration_closures_view_form"/>
|
||||
<field name="act_window" ref="act_configuration_closures_form"/>
|
||||
</record>
|
||||
<menuitem
|
||||
parent="sale.menu_configuration"
|
||||
sequence="10"
|
||||
id="menu_configuration_closure"
|
||||
action="act_configuration_closures_form"/>
|
||||
|
||||
<record model="ir.model.access" id="access_sale_statement">
|
||||
<field name="model" search="[('model', '=', 'account.statement')]"/>
|
||||
<field name="group" ref="sale.group_sale"/>
|
||||
|
@ -19,7 +19,6 @@ Imports::
|
||||
>>> today = datetime.date.today()
|
||||
|
||||
Install sale::
|
||||
|
||||
>>> config = activate_modules(['party', 'sale_payment'])
|
||||
|
||||
Create company::
|
||||
|
@ -20,4 +20,5 @@ def load_tests(loader, tests, pattern):
|
||||
optionflags=doctest.REPORT_ONLY_FIRST_FAILURE))
|
||||
finally:
|
||||
os.chdir(cwd)
|
||||
|
||||
return tests
|
@ -4,8 +4,8 @@ depends:
|
||||
account_statement
|
||||
sale_shop
|
||||
xml:
|
||||
statement.xml
|
||||
device.xml
|
||||
sale.xml
|
||||
statement.xml
|
||||
user.xml
|
||||
message.xml
|
||||
|
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<!-- This file is part sale_pos module for Tryton. The COPYRIGHT file at the top level of
|
||||
this repository contains the full copyright notices and license terms. -->
|
||||
<tree editable="1">
|
||||
<field name="journal"/>
|
||||
<field name="start_balance"/>
|
||||
<field name="current_balance"/>
|
||||
<field name="account"/>
|
||||
</tree>
|
Loading…
Reference in New Issue
Block a user