Skip to content
Extraits de code Groupes Projets
Valider 856fa179 rédigé par jordan's avatar jordan
Parcourir les fichiers

[fix] use DictReader to manipulate csv file

parent e99acf68
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -80,7 +80,7 @@ class ScopImportIDFWizard(models.TransientModel):
raise UserError('This file does not seem to be a CSV file')
file = StringIO(base64.b64decode(self.file).decode('ISO-8859-1'))
reader = csv.reader(file, delimiter=';')
reader = csv.DictReader(file, delimiter=';')
company_id = self.env.user.company_id
line = 0
......@@ -97,10 +97,10 @@ class ScopImportIDFWizard(models.TransientModel):
for row in reader:
line += 1
journal = row[2]
journal = row['Journal']
if journal in ["VE", "BFC"]:
tried_lines += 1
compte = row[0]
compte = row['Compte']
partner_id = self.env['res.partner'].search([
['member_number_int', '=', int(compte[2:7])],
['member_number_int', '!=', 0]
......@@ -112,20 +112,20 @@ class ScopImportIDFWizard(models.TransientModel):
+ compte \
+ "</li>"
else:
line_date = row[3]
libelle = row[5]
writing_date = row['Date écriture']
libelle = row['Libellé écriture']
existing_import_line = self.env[model].search(
[
['partner_id', '=', partner_id.id],
['date', '=', line_date],
['writing_date', '=', writing_date],
['journal', '=', journal],
['name', '=', libelle]
])
if len(existing_import_line) > 0:
logs += "<li> Ligne " + str(line) + ": Doublon</li>"
else:
debit = int(row[8])
credit = int(row[9])
debit = int(row['Débit euro'])
credit = int(row['Crédit euro'])
if journal == "VE" and debit > 0:
line_type = "inv"
elif journal == "BFC" and debit == 0:
......@@ -133,10 +133,8 @@ class ScopImportIDFWizard(models.TransientModel):
else:
line_type = "refund"
writing_date = row[3]
lettrage = row[10]
amount = debit if debit > 0 else credit
year = int(row[14])
lettrage = row['Lettrage N']
year = int(row['Année'])
values = {
'company_id': company_id.id,
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter