diff --git a/pyaccuwage/enums.py b/pyaccuwage/enums.py index b5c3c09..8c96ebf 100644 --- a/pyaccuwage/enums.py +++ b/pyaccuwage/enums.py @@ -1,338 +1,339 @@ state_postal_numeric = { - 'AL': 1, - 'AK': 2, - 'AZ': 4, - 'AR': 5, - 'CA': 6, - 'CO': 8, - 'CT': 9, - 'DE': 10, - 'DC': 11, - 'FL': 12, - 'GA': 13, - 'HI': 15, - 'ID': 16, - 'IL': 17, - 'IN': 18, - 'IA': 19, - 'KS': 20, - 'KY': 21, - 'LA': 22, - 'ME': 23, - 'MD': 24, - 'MA': 25, - 'MI': 26, - 'MN': 27, - 'MS': 28, - 'MO': 29, - 'MT': 30, - 'NE': 31, - 'NV': 32, - 'NH': 33, - 'NJ': 34, - 'NM': 35, - 'NY': 36, - 'NC': 37, - 'ND': 38, - 'OH': 39, - 'OK': 40, - 'OR': 41, - 'PA': 42, - 'RI': 44, - 'SC': 45, - 'SD': 46, - 'TN': 47, - 'TX': 48, - 'UT': 49, - 'VT': 50, - 'VA': 51, - 'WA': 53, - 'WV': 54, - 'WI': 55, - 'WY': 56, + 'AL': 1, + 'AK': 2, + 'AZ': 4, + 'AR': 5, + 'CA': 6, + 'CO': 8, + 'CT': 9, + 'DE': 10, + 'DC': 11, + 'FL': 12, + 'GA': 13, + 'HI': 15, + 'ID': 16, + 'IL': 17, + 'IN': 18, + 'IA': 19, + 'KS': 20, + 'KY': 21, + 'LA': 22, + 'ME': 23, + 'MD': 24, + 'MA': 25, + 'MI': 26, + 'MN': 27, + 'MS': 28, + 'MO': 29, + 'MT': 30, + 'NE': 31, + 'NV': 32, + 'NH': 33, + 'NJ': 34, + 'NM': 35, + 'NY': 36, + 'NC': 37, + 'ND': 38, + 'OH': 39, + 'OK': 40, + 'OR': 41, + 'PA': 42, + 'RI': 44, + 'SC': 45, + 'SD': 46, + 'TN': 47, + 'TX': 48, + 'UT': 49, + 'VT': 50, + 'VA': 51, + 'WA': 53, + 'WV': 54, + 'WI': 55, + 'WY': 56, } countries = ( - ('AF', 'Afghanistan'), - ('AX', 'Aland Islands'), - ('AL', 'Albania'), - ('DZ', 'Algeria'), - ('AS', 'American Samoa'), - ('AD', 'Andorra'), - ('AO', 'Angola'), - ('AI', 'Anguilla'), - ('AQ', 'Antarctica'), - ('AG', 'Antigua and Barbuda'), - ('AR', 'Argentina'), - ('AM', 'Armenia'), - ('AW', 'Aruba'), - ('AU', 'Australia'), - ('AT', 'Austria'), - ('AZ', 'Azerbaijan'), - ('BS', 'Bahamas'), - ('BH', 'Bahrain'), - ('BD', 'Bangladesh'), - ('BB', 'Barbados'), - ('BY', 'Belarus'), - ('BE', 'Belgium'), - ('BZ', 'Belize'), - ('BJ', 'Benin'), - ('BM', 'Bermuda'), - ('BT', 'Bhutan'), - ('BO', 'Bolivia, Plurinational State of'), - ('BQ', 'Bonaire, Saint Eustatius and Saba'), - ('BA', 'Bosnia and Herzegovina'), - ('BW', 'Botswana'), - ('BV', 'Bouvet Island'), - ('BR', 'Brazil'), - ('IO', 'British Indian Ocean Territory'), - ('BN', 'Brunei Darussalam'), - ('BG', 'Bulgaria'), - ('BF', 'Burkina Faso'), - ('BI', 'Burundi'), - ('KH', 'Cambodia'), - ('CM', 'Cameroon'), - ('CA', 'Canada'), - ('CV', 'Cape Verde'), - ('KY', 'Cayman Islands'), - ('CF', 'Central African Republic'), - ('TD', 'Chad'), - ('CL', 'Chile'), - ('CN', 'China'), - ('CX', 'Christmas Island'), - ('CC', 'Cocos (Keeling) Islands'), - ('CO', 'Colombia'), - ('KM', 'Comoros'), - ('CG', 'Congo'), - ('CD', 'Congo, The Democratic Republic of the'), - ('CK', 'Cook Islands'), - ('CR', 'Costa Rica'), - ('CI', "Cote D'ivoire"), - ('HR', 'Croatia'), - ('CU', 'Cuba'), - ('CW', 'Curacao'), - ('CY', 'Cyprus'), - ('CZ', 'Czech Republic'), - ('DK', 'Denmark'), - ('DJ', 'Djibouti'), - ('DM', 'Dominica'), - ('DO', 'Dominican Republic'), - ('EC', 'Ecuador'), - ('EG', 'Egypt'), - ('SV', 'El Salvador'), - ('GQ', 'Equatorial Guinea'), - ('ER', 'Eritrea'), - ('EE', 'Estonia'), - ('ET', 'Ethiopia'), - ('FK', 'Falkland Islands (Malvinas)'), - ('FO', 'Faroe Islands'), - ('FJ', 'Fiji'), - ('FI', 'Finland'), - ('FR', 'France'), - ('GF', 'French Guiana'), - ('PF', 'French Polynesia'), - ('TF', 'French Southern Territories'), - ('GA', 'Gabon'), - ('GM', 'Gambia'), - ('GE', 'Georgia'), - ('DE', 'Germany'), - ('GH', 'Ghana'), - ('GI', 'Gibraltar'), - ('GR', 'Greece'), - ('GL', 'Greenland'), - ('GD', 'Grenada'), - ('GP', 'Guadeloupe'), - ('GU', 'Guam'), - ('GT', 'Guatemala'), - ('GG', 'Guernsey'), - ('GN', 'Guinea'), - ('GW', 'Guinea-Bissau'), - ('GY', 'Guyana'), - ('HT', 'Haiti'), - ('HM', 'Heard Island and McDonald Islands'), - ('VA', 'Holy See (Vatican City State)'), - ('HN', 'Honduras'), - ('HK', 'Hong Kong'), - ('HU', 'Hungary'), - ('IS', 'Iceland'), - ('IN', 'India'), - ('ID', 'Indonesia'), - ('IR', 'Iran, Islamic Republic of'), - ('IQ', 'Iraq'), - ('IE', 'Ireland'), - ('IM', 'Isle of Man'), - ('IL', 'Israel'), - ('IT', 'Italy'), - ('JM', 'Jamaica'), - ('JP', 'Japan'), - ('JE', 'Jersey'), - ('JO', 'Jordan'), - ('KZ', 'Kazakhstan'), - ('KE', 'Kenya'), - ('KI', 'Kiribati'), - ('KP', "Korea, Democratic People's Republic of"), - ('KR', 'Korea, Republic of'), - ('KW', 'Kuwait'), - ('KG', 'Kyrgyzstan'), - ('LA', "Lao People's Democratic Republic"), - ('LV', 'Latvia'), - ('LB', 'Lebanon'), - ('LS', 'Lesotho'), - ('LR', 'Liberia'), - ('LY', 'Libyan Arab Jamahiriya'), - ('LI', 'Liechtenstein'), - ('LT', 'Lithuania'), - ('LU', 'Luxembourg'), - ('MO', 'Macao'), - ('MK', 'Macedonia, The Former Yugoslav Republic of'), - ('MG', 'Madagascar'), - ('MW', 'Malawi'), - ('MY', 'Malaysia'), - ('MV', 'Maldives'), - ('ML', 'Mali'), - ('MT', 'Malta'), - ('MH', 'Marshall Islands'), - ('MQ', 'Martinique'), - ('MR', 'Mauritania'), - ('MU', 'Mauritius'), - ('YT', 'Mayotte'), - ('MX', 'Mexico'), - ('FM', 'Micronesia, Federated States of'), - ('MD', 'Moldova, Republic of'), - ('MC', 'Monaco'), - ('MN', 'Mongolia'), - ('ME', 'Montenegro'), - ('MS', 'Montserrat'), - ('MA', 'Morocco'), - ('MZ', 'Mozambique'), - ('MM', 'Myanmar'), - ('NA', 'Namibia'), - ('NR', 'Nauru'), - ('NP', 'Nepal'), - ('NL', 'Netherlands'), - ('NC', 'New Caledonia'), - ('NZ', 'New Zealand'), - ('NI', 'Nicaragua'), - ('NE', 'Niger'), - ('NG', 'Nigeria'), - ('NU', 'Niue'), - ('NF', 'Norfolk Island'), - ('MP', 'Northern Mariana Islands'), - ('NO', 'Norway'), - ('OM', 'Oman'), - ('PK', 'Pakistan'), - ('PW', 'Palau'), - ('PS', 'Palestinian Territory, Occupied'), - ('PA', 'Panama'), - ('PG', 'Papua New Guinea'), - ('PY', 'Paraguay'), - ('PE', 'Peru'), - ('PH', 'Philippines'), - ('PN', 'Pitcairn'), - ('PL', 'Poland'), - ('PT', 'Portugal'), - ('PR', 'Puerto Rico'), - ('QA', 'Qatar'), - ('RE', 'Reunion'), - ('RO', 'Romania'), - ('RU', 'Russian Federation'), - ('RW', 'Rwanda'), - ('BL', 'Saint Barthelemy'), - ('SH', 'Saint Helena, Ascension and Tristan Da Cunha'), - ('KN', 'Saint Kitts and Nevis'), - ('LC', 'Saint Lucia'), - ('MF', 'Saint Martin (French Part)'), - ('PM', 'Saint Pierre and Miquelon'), - ('VC', 'Saint Vincent and the Grenadines'), - ('WS', 'Samoa'), - ('SM', 'San Marino'), - ('ST', 'Sao Tome and Principe'), - ('SA', 'Saudi Arabia'), - ('SN', 'Senegal'), - ('RS', 'Serbia'), - ('SC', 'Seychelles'), - ('SL', 'Sierra Leone'), - ('SG', 'Singapore'), - ('SX', 'Sint Maarten (Dutch Part)'), - ('SK', 'Slovakia'), - ('SI', 'Slovenia'), - ('SB', 'Solomon Islands'), - ('SO', 'Somalia'), - ('ZA', 'South Africa'), - ('GS', 'South Georgia and the South Sandwich Islands'), - ('ES', 'Spain'), - ('LK', 'Sri Lanka'), - ('SD', 'Sudan'), - ('SR', 'Suriname'), - ('SJ', 'Svalbard and Jan Mayen'), - ('SZ', 'Swaziland'), - ('SE', 'Sweden'), - ('CH', 'Switzerland'), - ('SY', 'Syrian Arab Republic'), - ('TW', 'Taiwan, Province of China'), - ('TJ', 'Tajikistan'), - ('TZ', 'Tanzania, United Republic of'), - ('TH', 'Thailand'), - ('TL', 'Timor-Leste'), - ('TG', 'Togo'), - ('TK', 'Tokelau'), - ('TO', 'Tonga'), - ('TT', 'Trinidad and Tobago'), - ('TN', 'Tunisia'), - ('TR', 'Turkey'), - ('TM', 'Turkmenistan'), - ('TC', 'Turks and Caicos Islands'), - ('TV', 'Tuvalu'), - ('UG', 'Uganda'), - ('UA', 'Ukraine'), - ('AE', 'United Arab Emirates'), - ('GB', 'United Kingdom'), - ('US', 'United States'), - ('UM', 'United States Minor Outlying Islands'), - ('UY', 'Uruguay'), - ('UZ', 'Uzbekistan'), - ('VU', 'Vanuatu'), - ('VE', 'Venezuela, Bolivarian Republic of'), - ('VN', 'Viet Nam'), - ('VG', 'Virgin Islands, British'), - ('VI', 'Virgin Islands, U.S.'), - ('WF', 'Wallis and Futuna'), - ('EH', 'Western Sahara'), - ('YE', 'Yemen'), - ('ZM', 'Zambia'), - ('ZW', 'Zimbabwe')) + ('AF', 'Afghanistan'), + ('AX', 'Aland Islands'), + ('AL', 'Albania'), + ('DZ', 'Algeria'), + ('AS', 'American Samoa'), + ('AD', 'Andorra'), + ('AO', 'Angola'), + ('AI', 'Anguilla'), + ('AQ', 'Antarctica'), + ('AG', 'Antigua and Barbuda'), + ('AR', 'Argentina'), + ('AM', 'Armenia'), + ('AW', 'Aruba'), + ('AU', 'Australia'), + ('AT', 'Austria'), + ('AZ', 'Azerbaijan'), + ('BS', 'Bahamas'), + ('BH', 'Bahrain'), + ('BD', 'Bangladesh'), + ('BB', 'Barbados'), + ('BY', 'Belarus'), + ('BE', 'Belgium'), + ('BZ', 'Belize'), + ('BJ', 'Benin'), + ('BM', 'Bermuda'), + ('BT', 'Bhutan'), + ('BO', 'Bolivia, Plurinational State of'), + ('BQ', 'Bonaire, Saint Eustatius and Saba'), + ('BA', 'Bosnia and Herzegovina'), + ('BW', 'Botswana'), + ('BV', 'Bouvet Island'), + ('BR', 'Brazil'), + ('IO', 'British Indian Ocean Territory'), + ('BN', 'Brunei Darussalam'), + ('BG', 'Bulgaria'), + ('BF', 'Burkina Faso'), + ('BI', 'Burundi'), + ('KH', 'Cambodia'), + ('CM', 'Cameroon'), + ('CA', 'Canada'), + ('CV', 'Cape Verde'), + ('KY', 'Cayman Islands'), + ('CF', 'Central African Republic'), + ('TD', 'Chad'), + ('CL', 'Chile'), + ('CN', 'China'), + ('CX', 'Christmas Island'), + ('CC', 'Cocos (Keeling) Islands'), + ('CO', 'Colombia'), + ('KM', 'Comoros'), + ('CG', 'Congo'), + ('CD', 'Congo, The Democratic Republic of the'), + ('CK', 'Cook Islands'), + ('CR', 'Costa Rica'), + ('CI', "Cote D'ivoire"), + ('HR', 'Croatia'), + ('CU', 'Cuba'), + ('CW', 'Curacao'), + ('CY', 'Cyprus'), + ('CZ', 'Czech Republic'), + ('DK', 'Denmark'), + ('DJ', 'Djibouti'), + ('DM', 'Dominica'), + ('DO', 'Dominican Republic'), + ('EC', 'Ecuador'), + ('EG', 'Egypt'), + ('SV', 'El Salvador'), + ('GQ', 'Equatorial Guinea'), + ('ER', 'Eritrea'), + ('EE', 'Estonia'), + ('ET', 'Ethiopia'), + ('FK', 'Falkland Islands (Malvinas)'), + ('FO', 'Faroe Islands'), + ('FJ', 'Fiji'), + ('FI', 'Finland'), + ('FR', 'France'), + ('GF', 'French Guiana'), + ('PF', 'French Polynesia'), + ('TF', 'French Southern Territories'), + ('GA', 'Gabon'), + ('GM', 'Gambia'), + ('GE', 'Georgia'), + ('DE', 'Germany'), + ('GH', 'Ghana'), + ('GI', 'Gibraltar'), + ('GR', 'Greece'), + ('GL', 'Greenland'), + ('GD', 'Grenada'), + ('GP', 'Guadeloupe'), + ('GU', 'Guam'), + ('GT', 'Guatemala'), + ('GG', 'Guernsey'), + ('GN', 'Guinea'), + ('GW', 'Guinea-Bissau'), + ('GY', 'Guyana'), + ('HT', 'Haiti'), + ('HM', 'Heard Island and McDonald Islands'), + ('VA', 'Holy See (Vatican City State)'), + ('HN', 'Honduras'), + ('HK', 'Hong Kong'), + ('HU', 'Hungary'), + ('IS', 'Iceland'), + ('IN', 'India'), + ('ID', 'Indonesia'), + ('IR', 'Iran, Islamic Republic of'), + ('IQ', 'Iraq'), + ('IE', 'Ireland'), + ('IM', 'Isle of Man'), + ('IL', 'Israel'), + ('IT', 'Italy'), + ('JM', 'Jamaica'), + ('JP', 'Japan'), + ('JE', 'Jersey'), + ('JO', 'Jordan'), + ('KZ', 'Kazakhstan'), + ('KE', 'Kenya'), + ('KI', 'Kiribati'), + ('KP', "Korea, Democratic People's Republic of"), + ('KR', 'Korea, Republic of'), + ('KW', 'Kuwait'), + ('KG', 'Kyrgyzstan'), + ('LA', "Lao People's Democratic Republic"), + ('LV', 'Latvia'), + ('LB', 'Lebanon'), + ('LS', 'Lesotho'), + ('LR', 'Liberia'), + ('LY', 'Libyan Arab Jamahiriya'), + ('LI', 'Liechtenstein'), + ('LT', 'Lithuania'), + ('LU', 'Luxembourg'), + ('MO', 'Macao'), + ('MK', 'Macedonia, The Former Yugoslav Republic of'), + ('MG', 'Madagascar'), + ('MW', 'Malawi'), + ('MY', 'Malaysia'), + ('MV', 'Maldives'), + ('ML', 'Mali'), + ('MT', 'Malta'), + ('MH', 'Marshall Islands'), + ('MQ', 'Martinique'), + ('MR', 'Mauritania'), + ('MU', 'Mauritius'), + ('YT', 'Mayotte'), + ('MX', 'Mexico'), + ('FM', 'Micronesia, Federated States of'), + ('MD', 'Moldova, Republic of'), + ('MC', 'Monaco'), + ('MN', 'Mongolia'), + ('ME', 'Montenegro'), + ('MS', 'Montserrat'), + ('MA', 'Morocco'), + ('MZ', 'Mozambique'), + ('MM', 'Myanmar'), + ('NA', 'Namibia'), + ('NR', 'Nauru'), + ('NP', 'Nepal'), + ('NL', 'Netherlands'), + ('NC', 'New Caledonia'), + ('NZ', 'New Zealand'), + ('NI', 'Nicaragua'), + ('NE', 'Niger'), + ('NG', 'Nigeria'), + ('NU', 'Niue'), + ('NF', 'Norfolk Island'), + ('MP', 'Northern Mariana Islands'), + ('NO', 'Norway'), + ('OM', 'Oman'), + ('PK', 'Pakistan'), + ('PW', 'Palau'), + ('PS', 'Palestinian Territory, Occupied'), + ('PA', 'Panama'), + ('PG', 'Papua New Guinea'), + ('PY', 'Paraguay'), + ('PE', 'Peru'), + ('PH', 'Philippines'), + ('PN', 'Pitcairn'), + ('PL', 'Poland'), + ('PT', 'Portugal'), + ('PR', 'Puerto Rico'), + ('QA', 'Qatar'), + ('RE', 'Reunion'), + ('RO', 'Romania'), + ('RU', 'Russian Federation'), + ('RW', 'Rwanda'), + ('BL', 'Saint Barthelemy'), + ('SH', 'Saint Helena, Ascension and Tristan Da Cunha'), + ('KN', 'Saint Kitts and Nevis'), + ('LC', 'Saint Lucia'), + ('MF', 'Saint Martin (French Part)'), + ('PM', 'Saint Pierre and Miquelon'), + ('VC', 'Saint Vincent and the Grenadines'), + ('WS', 'Samoa'), + ('SM', 'San Marino'), + ('ST', 'Sao Tome and Principe'), + ('SA', 'Saudi Arabia'), + ('SN', 'Senegal'), + ('RS', 'Serbia'), + ('SC', 'Seychelles'), + ('SL', 'Sierra Leone'), + ('SG', 'Singapore'), + ('SX', 'Sint Maarten (Dutch Part)'), + ('SK', 'Slovakia'), + ('SI', 'Slovenia'), + ('SB', 'Solomon Islands'), + ('SO', 'Somalia'), + ('ZA', 'South Africa'), + ('GS', 'South Georgia and the South Sandwich Islands'), + ('ES', 'Spain'), + ('LK', 'Sri Lanka'), + ('SD', 'Sudan'), + ('SR', 'Suriname'), + ('SJ', 'Svalbard and Jan Mayen'), + ('SZ', 'Swaziland'), + ('SE', 'Sweden'), + ('CH', 'Switzerland'), + ('SY', 'Syrian Arab Republic'), + ('TW', 'Taiwan, Province of China'), + ('TJ', 'Tajikistan'), + ('TZ', 'Tanzania, United Republic of'), + ('TH', 'Thailand'), + ('TL', 'Timor-Leste'), + ('TG', 'Togo'), + ('TK', 'Tokelau'), + ('TO', 'Tonga'), + ('TT', 'Trinidad and Tobago'), + ('TN', 'Tunisia'), + ('TR', 'Turkey'), + ('TM', 'Turkmenistan'), + ('TC', 'Turks and Caicos Islands'), + ('TV', 'Tuvalu'), + ('UG', 'Uganda'), + ('UA', 'Ukraine'), + ('AE', 'United Arab Emirates'), + ('GB', 'United Kingdom'), + ('US', 'United States'), + ('UM', 'United States Minor Outlying Islands'), + ('UY', 'Uruguay'), + ('UZ', 'Uzbekistan'), + ('VU', 'Vanuatu'), + ('VE', 'Venezuela, Bolivarian Republic of'), + ('VN', 'Viet Nam'), + ('VG', 'Virgin Islands, British'), + ('VI', 'Virgin Islands, U.S.'), + ('WF', 'Wallis and Futuna'), + ('EH', 'Western Sahara'), + ('YE', 'Yemen'), + ('ZM', 'Zambia'), + ('ZW', 'Zimbabwe'), + ) employer_types = ( - ('F','Federal Government'), - ('S','State and Local Governmental Employer'), - ('T','Tax Exempt Employer'), - ('Y','State and Local Tax Exempt Employer'), - ('N','None Apply'), - ) + ('F','Federal Government'), + ('S','State and Local Governmental Employer'), + ('T','Tax Exempt Employer'), + ('Y','State and Local Tax Exempt Employer'), + ('N','None Apply'), + ) employment_codes = ( - ('A', 'Agriculture'), - ('H', 'Household'), - ('M', 'Military'), - ('Q', 'Medicare Qualified Government Employee'), - ('X', 'Railroad'), - ('F', 'Regular'), - ('R', 'Regular (all others)'), - ) + ('A', 'Agriculture'), + ('H', 'Household'), + ('M', 'Military'), + ('Q', 'Medicare Qualified Government Employee'), + ('X', 'Railroad'), + ('F', 'Regular'), + ('R', 'Regular (all others)'), + ) tax_jurisdiction_codes = ( - ('V', 'Virgin Islands'), - ('G', 'Guam'), - ('S', 'American Samoa'), - ('N', 'Northern Mariana Islands'), - ('P', 'Puerto Rico'), - ) + ('V', 'Virgin Islands'), + ('G', 'Guam'), + ('S', 'American Samoa'), + ('N', 'Northern Mariana Islands'), + ('P', 'Puerto Rico'), + ) tax_type_codes = ( - ('C', 'City Income Tax'), - ('D', 'Country Income Tax'), - ('E', 'School District Income Tax'), - ('F', 'Other Income Tax'), - ) + ('C', 'City Income Tax'), + ('D', 'Country Income Tax'), + ('E', 'School District Income Tax'), + ('F', 'Other Income Tax'), + ) diff --git a/pyaccuwage/fields.py b/pyaccuwage/fields.py index 94147a8..ef60b92 100644 --- a/pyaccuwage/fields.py +++ b/pyaccuwage/fields.py @@ -2,6 +2,7 @@ import decimal, datetime import inspect from . import enums + class ValidationError(Exception): def __init__(self, msg, field=None): self.msg = msg @@ -90,14 +91,10 @@ class Field(object): wrapper = textwrap.TextWrapper(replace_whitespace=False, drop_whitespace=False) wrapper.width = 100 value = wrapper.wrap(value) - #value = textwrap.wrap(value, 100) - #print value value = list([(" " * 9) + ('"' + x + '"') for x in value]) - #value[0] = '"' + value[0] + '"' value.append(" " * 10 + ('_' * 10) * (wrapper.width / 10)) value.append(" " * 10 + ('0123456789') * (wrapper.width / 10)) value.append(" " * 10 + ''.join(([str(x) + (' ' * 9) for x in range(wrapper.width / 10 )]))) - #value.append((" " * 59) + map(lambda x:("%x" % x), range(16)) start = counter['c'] counter['c'] += len(self._orig_value or self.value) @@ -146,7 +143,6 @@ class StateField(TextField): self.use_numeric = use_numeric def get_data(self): - # value = str(self.value or 'XX').encode('ascii') or b'' value = str(self.value or 'XX') if value.strip() and self.use_numeric: postcode = enums.state_postal_numeric[value.upper()] @@ -199,6 +195,7 @@ class StaticField(TextField): def parse(self, s): pass + class BlankField(TextField): def __init__(self, name=None, max_length=0, required=False): super(TextField, self).__init__(name=name, max_length=max_length, required=required, uppercase=False) @@ -209,10 +206,12 @@ class BlankField(TextField): def parse(self, s): pass + class ZeroField(BlankField): def get_data(self): return b'0' * self.max_length + class CRLFField(TextField): def __init__(self, name=None, required=False): super(TextField, self).__init__(name=name, max_length=2, required=required, uppercase=False) @@ -231,6 +230,7 @@ class CRLFField(TextField): def parse(self, s): self.value = s + class BooleanField(Field): def __init__(self, name=None, required=True, value=None): super(BooleanField, self).__init__(name=name, required=required, max_length=1) @@ -299,7 +299,6 @@ class DateField(TextField): class MonthYearField(TextField): def __init__(self, name=None, required=True, value=None): super(TextField, self).__init__(name=name, required=required, max_length=6) - if value: self.value = value @@ -326,4 +325,3 @@ class MonthYearField(TextField): return self._value value = property(__getvalue, __setvalue) - diff --git a/pyaccuwage/model.py b/pyaccuwage/model.py index ae5f9e1..b71c26f 100644 --- a/pyaccuwage/model.py +++ b/pyaccuwage/model.py @@ -86,10 +86,5 @@ class Model(object): target._value = f._value - - #print (self.__dict__[f.name].name == f.name) - #self.__dict__[f.name].name == f.name - #self.__dict__[f.name].max_length == f.max_length - return self diff --git a/pyaccuwage/parser.py b/pyaccuwage/parser.py index 6b808fc..250d122 100644 --- a/pyaccuwage/parser.py +++ b/pyaccuwage/parser.py @@ -1,5 +1,3 @@ -#!/usr/bin/python -# coding=UTF-8 """ Parser utility to read data from Publication 1220 and convert it into python classes. @@ -146,8 +144,7 @@ class RecordBuilder(object): (re.compile(r'zero\-filled', re.IGNORECASE), +1), (re.compile(r'leading zeroes', re.IGNORECASE), +1), - (re.compile(r'left-\justif', re.IGNORECASE), -1), - + (re.compile(r'left\-justif', re.IGNORECASE), -1), ], }, }),