line/book: sequence für zeilen-nummerierung
This commit is contained in:
parent
5fdbb0ce89
commit
a801775880
8 changed files with 128 additions and 17 deletions
41
line.py
41
line.py
|
@ -54,6 +54,7 @@ class Line(Workflow, ModelSQL, ModelView):
|
|||
states=STATES, depends=DEPENDS)
|
||||
month = fields.Function(fields.Integer(string='Month', readonly=True),
|
||||
'on_change_with_month', searcher='search_month')
|
||||
number = fields.Char(string='Number', readonly=True)
|
||||
description = fields.Text(string='Description',
|
||||
states=STATES, depends=DEPENDS)
|
||||
category = fields.Many2One(string='Category',
|
||||
|
@ -218,6 +219,7 @@ class Line(Workflow, ModelSQL, ModelView):
|
|||
Line2 = pool.get('cashbook.line')
|
||||
|
||||
to_create_line = []
|
||||
to_write_line = []
|
||||
for line in lines:
|
||||
# deny if date is in range of existing reconciliation
|
||||
# allow cashbook-line at range-limits
|
||||
|
@ -259,6 +261,18 @@ class Line(Workflow, ModelSQL, ModelView):
|
|||
'reference': line.id,
|
||||
})
|
||||
|
||||
# add number to line
|
||||
if line.cashbook.number_atcheck == True:
|
||||
if len(line.number or '') == 0:
|
||||
to_write_line.extend([
|
||||
[line],
|
||||
{
|
||||
'number': line.cashbook.number_sequ.get()
|
||||
}])
|
||||
|
||||
if len(to_write_line) > 0:
|
||||
Line2.write(*to_write_line)
|
||||
|
||||
if len(to_create_line) > 0:
|
||||
new_lines = Line2.create(to_create_line)
|
||||
Line2.wfcheck(new_lines)
|
||||
|
@ -269,7 +283,20 @@ class Line(Workflow, ModelSQL, ModelView):
|
|||
def wfdone(cls, lines):
|
||||
""" line is done
|
||||
"""
|
||||
pass
|
||||
Line2 = Pool().get('cashbook.line')
|
||||
|
||||
to_write_line = []
|
||||
for line in lines:
|
||||
# add number to line
|
||||
if len(line.number or '') == 0:
|
||||
to_write_line.extend([
|
||||
[line],
|
||||
{
|
||||
'number': line.cashbook.number_sequ.get()
|
||||
}])
|
||||
|
||||
if len(to_write_line) > 0:
|
||||
Line2.write(*to_write_line)
|
||||
|
||||
@classmethod
|
||||
def default_state(cls):
|
||||
|
@ -508,6 +535,18 @@ class Line(Workflow, ModelSQL, ModelView):
|
|||
raise ValueError('invalid "bookingtype"')
|
||||
return {}
|
||||
|
||||
@classmethod
|
||||
def copy(cls, lines, default=None):
|
||||
""" reset values
|
||||
"""
|
||||
if default is None:
|
||||
default = {}
|
||||
else:
|
||||
default = default.copy()
|
||||
default.setdefault('number', None)
|
||||
default.setdefault('state', cls.default_state())
|
||||
return super(Line, cls).copy(moves, default=default)
|
||||
|
||||
@classmethod
|
||||
def create(cls, vlist):
|
||||
""" add debit/credit
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue