Skip to content
Snippets Groups Projects
Commit bfc69d7c authored by Daniil Digtyar Vasilieva's avatar Daniil Digtyar Vasilieva :call_me:
Browse files

[IMP]energy_selfconsumption: added date_format field for configuration of parsing effective_date

parent 8aab19c6
No related branches found
No related tags found
2 merge requests!187Release 14.0.1.1.13,!155[IMP] energy_selfconsumption: importation of selfconsumption inscriptions, supply points and distribution tables by CSV
import base64
import logging
from datetime import datetime
from csv import reader
from io import StringIO
......@@ -34,6 +35,12 @@ class SelfconsumptionImportWizard(models.TransientModel):
string="File Encoding",
help="Enconding format in import CSV file.",
)
date_format = fields.Char(
default="%d/%m/%Y",
required=True,
string="Date Format",
help="Date format for effective date.",
)
@api.constrains("import_file")
def _constrains_import_file(self):
......@@ -132,23 +139,19 @@ class SelfconsumptionImportWizard(models.TransientModel):
)
if not project.inscription_ids.filtered_domain(
[("partner_id", "=", partner.id)]
[("partner_id", "=", partner.id)]
):
if line_dict["effective_date"]:
try:
effective_date_iso = fields.date.fromisoformat(line_dict["effective_date"])
except ValueError as e:
return False, _("Could not create inscription for {vat}. {error}").format(
vat=line_dict["partner_vat"], error=e
)
else:
effective_date_iso = fields.date.today()
try:
if line_dict["effective_date"]:
effective_date = datetime.strptime(line_dict["effective_date"], self.date_format).date()
else:
effective_date = fields.date.today()
self.env["energy_project.inscription"].create(
{
"project_id": project.id,
"partner_id": partner.id,
"effective_date": effective_date_iso,
"effective_date": effective_date,
}
)
except Exception as e:
......
......@@ -17,6 +17,7 @@
<field name="fname" invisible="1"></field>
</group>
<group>
<field name="date_format"></field>
<field name="delimiter"></field>
<field name="quotechar"></field>
<field name="encoding"></field>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment