2013-09-26 08:42:23 +02:00
|
|
|
# This file is part of account_payment_es_csb_34_1_la_caixa module for Tryton.
|
|
|
|
# The COPYRIGHT file at the top level of this repository contains
|
|
|
|
# the full copyright notices and license terms.
|
|
|
|
from trytond.model import fields
|
|
|
|
from trytond.pool import PoolMeta
|
2015-08-19 00:14:52 +02:00
|
|
|
from trytond.pyson import Eval
|
2013-09-26 08:42:23 +02:00
|
|
|
import logging
|
2015-08-12 01:39:31 +02:00
|
|
|
|
2013-09-26 08:42:23 +02:00
|
|
|
try:
|
|
|
|
from retrofix import Record, write, c34_1_la_caixa as c34_1_lc
|
|
|
|
except ImportError:
|
2015-08-12 01:39:31 +02:00
|
|
|
logger = logging.getLogger(__name__)
|
2013-09-26 08:42:23 +02:00
|
|
|
message = ('Unable to import retrofix library.\n'
|
|
|
|
'Please install it before install this module.')
|
2015-08-12 01:39:31 +02:00
|
|
|
logger.error(message)
|
2013-09-26 08:42:23 +02:00
|
|
|
raise Exception(message)
|
|
|
|
|
|
|
|
__all__ = [
|
|
|
|
'Journal',
|
|
|
|
'Group',
|
|
|
|
]
|
|
|
|
__metaclass__ = PoolMeta
|
|
|
|
|
|
|
|
|
|
|
|
class Journal:
|
|
|
|
__name__ = 'account.payment.journal'
|
|
|
|
csb34_11_lc_type = fields.Selection([
|
|
|
|
('transfer', 'Transfers'),
|
|
|
|
('check', 'Checks'),
|
|
|
|
('promissory_note', 'Promissory Notes'),
|
|
|
|
('certified_payment', 'Certified Payments'),
|
|
|
|
], 'Type of CSB 34 payment')
|
|
|
|
csb34_11_lc_text1 = fields.Char('Line 1', help=(u'Enter text and/or '
|
|
|
|
'select a field of the invoice to include as a description in the '
|
|
|
|
'letter. Allowed values are: ${name}, ${bank_account}, '
|
|
|
|
'${invoices}, ${amount}, ${communication}, ${date}, '
|
|
|
|
'${maturity_date}, ${create_date}, ${date_created}, ${concept}.'))
|
|
|
|
csb34_11_lc_text2 = fields.Char('Line 2', help=(u'Enter text and/or '
|
|
|
|
'select a field of the invoice to include as a description in the '
|
|
|
|
'letter. Allowed values are: ${name}, ${bank_account}, '
|
|
|
|
'${invoices}, ${amount}, ${communication}, ${date}, '
|
|
|
|
'${maturity_date}, ${create_date}, ${date_created}, ${concept}.'))
|
|
|
|
csb34_11_lc_text3 = fields.Char('Line 3', help=(u'Enter text and/or '
|
|
|
|
'select a field of the invoice to include as a description in the '
|
|
|
|
'letter. Allowed values are: ${name}, ${bank_account}, '
|
|
|
|
'${invoices}, ${amount}, ${communication}, ${date}, '
|
|
|
|
'${maturity_date}, ${create_date}, ${date_created}, ${concept}.'))
|
|
|
|
csb34_11_lc_add_date = fields.Boolean('Add Date', help=('Check it if you '
|
|
|
|
'want to add the 910 data type in the file to include the payment '
|
|
|
|
'date.'))
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def __setup__(cls):
|
|
|
|
super(Journal, cls).__setup__()
|
2013-12-05 19:19:54 +01:00
|
|
|
if (('csb34_1_lc', 'CSB 34-1 La Caixa')
|
|
|
|
not in cls.process_method.selection):
|
2013-09-26 08:42:23 +02:00
|
|
|
cls.process_method.selection.extend([
|
|
|
|
('csb34_1_lc', 'CSB 34-1 La Caixa'),
|
|
|
|
])
|
|
|
|
cls._error_messages.update({
|
|
|
|
'dear_sir': ('Dear Sir'),
|
|
|
|
'payement_ref': ('Payment ref.'),
|
|
|
|
'total': ('Total:'),
|
|
|
|
})
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def default_csb34_11_lc_type():
|
|
|
|
return 'transfer'
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def default_csb34_11_lc_not_to_the_order():
|
|
|
|
return True
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def default_csb34_11_lc_barred():
|
|
|
|
return True
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def default_csb34_11_lc_text1(cls):
|
|
|
|
return '%s %s' % (cls.raise_user_error('dear_sir',
|
|
|
|
raise_exception=False), ' ${name},')
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def default_csb34_11_lc_text2(cls):
|
|
|
|
return '%s %s' % (cls.raise_user_error('payement_ref',
|
|
|
|
raise_exception=False), ' ${communication}')
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def default_csb34_11_lc_text3(cls):
|
|
|
|
return '%s %s' % (cls.raise_user_error('total',
|
|
|
|
raise_exception=False), ' ${amount}')
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def default_csb34_11_lc_add_date():
|
|
|
|
return True
|
|
|
|
|
2015-08-19 00:14:52 +02:00
|
|
|
@classmethod
|
|
|
|
def view_attributes(cls):
|
2015-08-23 21:59:56 +02:00
|
|
|
return super(Journal, cls).view_attributes() + [
|
|
|
|
('//group[@id="csb_34_1_lc"]', 'states', {
|
2015-08-19 00:14:52 +02:00
|
|
|
'invisible': Eval('process_method') != 'csb34_1_lc',
|
2015-08-23 21:59:56 +02:00
|
|
|
}),
|
|
|
|
('//group[@id="csb_34_1_lc"]/group[@id="csb_34_type"]', 'states', {
|
2015-08-19 00:14:52 +02:00
|
|
|
'invisible': Eval('csb34_11_lc_type') == 'transfer',
|
2015-08-23 21:59:56 +02:00
|
|
|
}),
|
|
|
|
('//group[@id="csb_34_1_lc"]/group[@id="csb_34_type"]/group[@id="csb_34_other"]', 'states', {
|
2015-08-19 00:14:52 +02:00
|
|
|
'invisible': Eval('send_type') == 'other',
|
2015-08-23 21:59:56 +02:00
|
|
|
})]
|
2015-08-19 00:14:52 +02:00
|
|
|
|
2013-09-26 08:42:23 +02:00
|
|
|
|
|
|
|
class Group:
|
|
|
|
__name__ = 'account.payment.group'
|
|
|
|
|
|
|
|
def map_message(self, receipt, message=''):
|
|
|
|
"""
|
|
|
|
Evaluates an expression and returns its value
|
|
|
|
@param recibo: Order line data
|
|
|
|
@param message: The expression to be evaluated
|
|
|
|
@return: Computed message (string)
|
|
|
|
"""
|
|
|
|
for field in receipt.iterkeys():
|
2013-12-05 19:19:54 +01:00
|
|
|
value = unicode(receipt[field])
|
2013-09-26 08:42:23 +02:00
|
|
|
message = message.replace('${' + field + '}', value)
|
|
|
|
return message
|
|
|
|
|
2013-12-05 19:19:54 +01:00
|
|
|
def set_default_csb34_1_lc_payment_values(self):
|
2013-09-26 08:42:23 +02:00
|
|
|
values = self.set_default_csb34_payment_values()
|
|
|
|
values['add_date'] = values['payment_journal'].csb34_11_lc_add_date
|
|
|
|
values['csb34_11_lc_type'] = values['payment_journal'].csb34_11_lc_type
|
|
|
|
for receipt in values['receipts']:
|
|
|
|
if values['csb34_11_lc_type'] != 'transfer':
|
|
|
|
receipt['bank_account'] = ''.zfill(17)
|
|
|
|
if values['send_type'] == 'mail':
|
|
|
|
receipt['bank_account'] += '1'
|
|
|
|
elif values['send_type'] == 'certified_mail':
|
|
|
|
receipt['bank_account'] += '2'
|
|
|
|
else:
|
|
|
|
receipt['bank_account'] += '3'
|
|
|
|
if values['not_to_the_order']:
|
|
|
|
receipt['bank_account'] += '1'
|
|
|
|
else:
|
|
|
|
receipt['bank_account'] += '0'
|
|
|
|
if values['barred']:
|
|
|
|
receipt['bank_account'] += '9'
|
|
|
|
else:
|
|
|
|
receipt['bank_account'] += '0'
|
|
|
|
receipt['message_101'] = self.map_message(receipt,
|
|
|
|
values['payment_journal'].csb34_11_lc_text1)
|
|
|
|
receipt['message_102'] = self.map_message(receipt,
|
|
|
|
values['payment_journal'].csb34_11_lc_text2)
|
|
|
|
receipt['message_103'] = self.map_message(receipt,
|
|
|
|
values['payment_journal'].csb34_11_lc_text3)
|
|
|
|
if values['add_date']:
|
2015-10-21 11:54:55 +02:00
|
|
|
(year, month, day) = str(receipt['maturity_date']).split('-')
|
2013-09-26 08:42:23 +02:00
|
|
|
receipt['date'] = day + month + year
|
|
|
|
return values
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def process_csb34_1_lc(cls, group):
|
|
|
|
def set_ordering_header_record():
|
|
|
|
record = Record(c34_1_lc.ORDERING_HEADER_RECORD)
|
|
|
|
record.record_code = '03'
|
|
|
|
record.operation_code = '62'
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
|
|
|
record.data_number = '001'
|
|
|
|
record.send_date = values['payment_date']
|
|
|
|
record.creation_date = values['creation_date']
|
|
|
|
record.account = values['bank_account']
|
|
|
|
record.charge_detail = 'false' # or 'true'
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_ordering_header_002_record():
|
|
|
|
record = Record(c34_1_lc.ORDERING_HEADER_002_RECORD)
|
|
|
|
record.record_code = '03'
|
|
|
|
record.operation_code = '62'
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
|
|
|
record.data_number = '002'
|
|
|
|
record.name = values['name']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_ordering_header_003_record():
|
|
|
|
record = Record(c34_1_lc.ORDERING_HEADER_003_RECORD)
|
|
|
|
record.record_code = '03'
|
|
|
|
record.operation_code = '62'
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
|
|
|
record.data_number = '003'
|
|
|
|
record.address = values['street']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_ordering_header_004_record():
|
|
|
|
record = Record(c34_1_lc.ORDERING_HEADER_004_RECORD)
|
|
|
|
record.record_code = '03'
|
|
|
|
record.operation_code = '62'
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
|
|
|
record.data_number = '004'
|
|
|
|
record.city = values['city']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_national_header_record():
|
|
|
|
record = Record(c34_1_lc.NATIONAL_HEADER_RECORD)
|
|
|
|
record.record_code = '04'
|
|
|
|
record.operation_code = '56'
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_001_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_001_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '010'
|
|
|
|
record.amount = receipt['amount']
|
|
|
|
record.bank_account = receipt['bank_account'] # receipt['data']
|
|
|
|
record.cost = receipt['cost']
|
|
|
|
record.concept = receipt['concept']
|
|
|
|
record.direct_payment = receipt['direct_payment']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_002_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_002_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '011'
|
|
|
|
record.name = receipt['name']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_003_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_003_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '012'
|
2013-12-05 19:19:54 +01:00
|
|
|
record.street = receipt['street'][:28]
|
2013-09-26 08:42:23 +02:00
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_004_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_004_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '013'
|
|
|
|
record.street2 = receipt['street2']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_005_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_005_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '014'
|
|
|
|
record.zip_city = '%s%s' % (receipt['zip'], receipt['city'])
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_006_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_006_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '015'
|
|
|
|
record.country_code = receipt['country_code']
|
|
|
|
record.state = receipt['state']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_007_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_007_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '016'
|
|
|
|
record.concept = receipt['concept']
|
|
|
|
return write([record])
|
|
|
|
|
2015-10-21 13:40:21 +02:00
|
|
|
def set_detail_009_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_009_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
|
|
|
record.nif = values['vat_number']
|
|
|
|
record.suffix = values['suffix']
|
|
|
|
record.recipient_nif = receipt['vat_number']
|
|
|
|
record.data_number = '018'
|
|
|
|
record.beneficiary_nif = receipt['vat_number']
|
|
|
|
return write([record])
|
|
|
|
|
2013-09-26 08:42:23 +02:00
|
|
|
def set_detail_101_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_101_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '101'
|
2013-12-05 19:19:54 +01:00
|
|
|
record.message = receipt['message_101'][:36]
|
2013-09-26 08:42:23 +02:00
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_102_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_102_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '102'
|
2013-12-05 19:19:54 +01:00
|
|
|
record.message = receipt['message_102'][:36]
|
2013-09-26 08:42:23 +02:00
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_103_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_103_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '103'
|
|
|
|
record.message = receipt['message_103']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_detail_910_record():
|
|
|
|
record = Record(c34_1_lc.DETAIL_910_RECORD)
|
|
|
|
record.record_code = '06'
|
|
|
|
record.operation_code = values['csb34_11_lc_type']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
2015-10-06 21:05:23 +02:00
|
|
|
record.recipient_nif = receipt['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.data_number = '910'
|
|
|
|
record.message = receipt['date']
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_national_footer_record():
|
|
|
|
record = Record(c34_1_lc.NATIONAL_FOOTER_RECORD)
|
|
|
|
record.record_code = '08'
|
|
|
|
record.operation_code = '56'
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
|
|
|
record.amount = values['amount']
|
|
|
|
record.payment_line_count = str(values['payment_count'])
|
|
|
|
record.record_count = str(values['detail_record_count'])
|
|
|
|
return write([record])
|
|
|
|
|
|
|
|
def set_ordering_footer_record():
|
|
|
|
record = Record(c34_1_lc.ORDERING_FOOTER_RECORD)
|
|
|
|
record.record_code = '09'
|
|
|
|
record.operation_code = '62'
|
2015-10-06 21:05:23 +02:00
|
|
|
record.nif = values['vat_code']
|
2013-09-26 08:42:23 +02:00
|
|
|
record.suffix = values['suffix']
|
|
|
|
record.amount = values['amount']
|
|
|
|
record.payment_line_count = str(values['payment_count'])
|
|
|
|
record.record_count = str(values['record_count'])
|
|
|
|
return write([record])
|
|
|
|
|
2013-12-05 19:19:54 +01:00
|
|
|
values = Group.set_default_csb34_1_lc_payment_values(group)
|
|
|
|
text = set_ordering_header_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_ordering_header_002_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_ordering_header_003_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_ordering_header_004_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_national_header_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
|
|
|
for receipt in values['receipts']:
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_001_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_002_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
|
|
|
if receipt['street']:
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_003_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
|
|
|
if 'street2' in receipt and receipt['street2']:
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_004_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
|
|
|
if receipt['zip'] or receipt['city']:
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_005_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
|
|
|
if values['csb34_11_lc_type'] != 'transfer' \
|
|
|
|
and values['send_type'] in ('mail', 'certified_mail'):
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_006_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
|
|
|
if values['payroll_check']:
|
2015-10-21 13:40:21 +02:00
|
|
|
text += set_detail_009_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_101_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_102_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_103_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
|
|
|
if values['add_date']:
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_detail_910_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
|
|
|
values['payment_count'] += 1
|
|
|
|
values['detail_record_count'] += 1
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_national_footer_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
values['record_count'] += 2
|
2013-12-05 19:19:54 +01:00
|
|
|
text += set_ordering_footer_record()
|
2013-09-26 08:42:23 +02:00
|
|
|
group.attach_file(text)
|