Skip to content
Extraits de code Groupes Projets
Valider 8ba8b3cd rédigé par Julien - Le Filament's avatar Julien - Le Filament
Parcourir les fichiers

Customer review

parent c605dd79
Branches
Aucune étiquette associée trouvée
1 requête de fusion!6Customer review
...@@ -4,14 +4,14 @@ ...@@ -4,14 +4,14 @@
============================ ============================
OACC - Clefs de répartition OACC - clés de répartition
============================ ============================
Ce module permet d'uploader de tester et d envoyer a enedis les clefs de répartion pour une Opération d'AutoConsommation Collective: Ce module permet d'uploader de tester et d envoyer a enedis les clés de répartion pour une Opération d'AutoConsommation Collective:
* Ajoute un onglet à la vue des opérations * Ajoute un onglet à la vue des opérations
* Ajout du test d'un fichier de clefs de répartition * Ajout du test d'un fichier de clés de répartition
* Ajout l'envoi via l'API enedis des clefs * Ajout l'envoi via l'API enedis des clés
* Stockage des fichiers * Stockage des fichiers
......
{ {
"name": "OACC - Clefs de répartions", "name": "OACC - clés de répartions",
"summary": "Module de gestion des clefs de répartitions enedis OACC", "summary": "Module de gestion des clés de répartitions enedis OACC",
"author": "Le Filament", "author": "Le Filament",
"website": "https://le-filament.com", "website": "https://le-filament.com",
"version": "16.0.1.0.0", "version": "16.0.1.0.0",
......
...@@ -3,13 +3,14 @@ from odoo import fields, models ...@@ -3,13 +3,14 @@ from odoo import fields, models
class AccRepartitionKeys(models.Model): class AccRepartitionKeys(models.Model):
_name = "acc.repartition.keys" _name = "acc.repartition.keys"
_description = "Clefs de repartition" _description = "clés de repartition"
_order = "date_send DESC, id DESC" _order = "date_send DESC, id DESC"
# ------------------------------------------------------ # ------------------------------------------------------
# Fields declaration # Fields declaration
csv_file = fields.Binary("Contenu du fichier CSV", required=True) csv_file = fields.Binary("Contenu du fichier CSV", required=True)
date_send = fields.Date("Date de l'envoi des clefs", required=True, default=None) filename = fields.Char("Nom du fichier", required=True)
date_send = fields.Date("Date de l'envoi des clés", required=True, default=None)
operation_id = fields.Many2one("acc.operation", "Opération", required=True) operation_id = fields.Many2one("acc.operation", "Opération", required=True)
# ------------------------------------------------------ # ------------------------------------------------------
......
...@@ -171,10 +171,10 @@ class RepartitionKeyEntryFile: ...@@ -171,10 +171,10 @@ class RepartitionKeyEntryFile:
[{ "id":id, "key":key}, ...] [{ "id":id, "key":key}, ...]
""" """
keys_sum = 0 keys_sum = 0.0
for key in horo: for key in horo:
if key["key"] == "0.00000000": if key["key"] == "0.00000000":
key["key"] = 0.0 key["key"] = 0.0
keys_sum = keys_sum + float(key["key"]) keys_sum = keys_sum + float(key["key"])
return keys_sum return round(keys_sum, 4)
...@@ -8,10 +8,13 @@ ...@@ -8,10 +8,13 @@
<field name="inherit_id" ref="oacc.acc_operation_form_view" /> <field name="inherit_id" ref="oacc.acc_operation_form_view" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<xpath expr="//notebook" position="inside"> <xpath expr="//notebook" position="inside">
<page string="Clefs de répartition" name="keys"> <page string="clés de répartition" name="keys">
<tree> <field name="keys_repartition_ids" mode="tree">
<field name="keys_repartition_ids" /> <tree create="0">
<field name="date_send" />
<field name="filename" />
</tree> </tree>
</field>
<button <button
string="Importer un fichier" string="Importer un fichier"
type="action" type="action"
......
...@@ -11,7 +11,7 @@ from ..tools.key_file import RepartitionKeyEntryFile ...@@ -11,7 +11,7 @@ from ..tools.key_file import RepartitionKeyEntryFile
class AccRepartitionKeysWizard(models.TransientModel): class AccRepartitionKeysWizard(models.TransientModel):
_name = "acc.repartition.keys.wizard" _name = "acc.repartition.keys.wizard"
_description = "Clefs de répartition" _description = "clés de répartition"
# ------------------------------------------------------ # ------------------------------------------------------
# Default methods # Default methods
...@@ -23,6 +23,7 @@ class AccRepartitionKeysWizard(models.TransientModel): ...@@ -23,6 +23,7 @@ class AccRepartitionKeysWizard(models.TransientModel):
# Fields declaration # Fields declaration
# ------------------------------------------------------ # ------------------------------------------------------
csv_file = fields.Binary("Contenu du fichier CSV") csv_file = fields.Binary("Contenu du fichier CSV")
filename = fields.Char("Nom du fichier")
date_send = fields.Date(default=None) date_send = fields.Date(default=None)
operation_id = fields.Many2one( operation_id = fields.Many2one(
"acc.operation", "Opération", default=_default_operation_id "acc.operation", "Opération", default=_default_operation_id
...@@ -108,6 +109,7 @@ class AccRepartitionKeysWizard(models.TransientModel): ...@@ -108,6 +109,7 @@ class AccRepartitionKeysWizard(models.TransientModel):
self.env["acc.repartition.keys"].create( self.env["acc.repartition.keys"].create(
{ {
"csv_file": self.csv_file, "csv_file": self.csv_file,
"filename": self.filename,
"date_send": fields.Date.context_today(self), "date_send": fields.Date.context_today(self),
"operation_id": self.operation_id.id, "operation_id": self.operation_id.id,
} }
......
...@@ -4,8 +4,9 @@ ...@@ -4,8 +4,9 @@
<field name="name">acc.repartition.keys.wizard.form</field> <field name="name">acc.repartition.keys.wizard.form</field>
<field name="model">acc.repartition.keys.wizard</field> <field name="model">acc.repartition.keys.wizard</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<form string="Création clefs de repartition"> <form string="Création clés de repartition">
<field name="csv_file" /> <field name="filename" invisible="1" />
<field widget="binary" name="csv_file" filename="filename" />
<footer> <footer>
<button <button
class="btn btn-primary" class="btn btn-primary"
...@@ -28,7 +29,7 @@ ...@@ -28,7 +29,7 @@
id="acc_repartition_keys_wizard_action" id="acc_repartition_keys_wizard_action"
model="ir.actions.act_window" model="ir.actions.act_window"
> >
<field name="name">Création clefs de repartition</field> <field name="name">Création clés de repartition</field>
<field name="type">ir.actions.act_window</field> <field name="type">ir.actions.act_window</field>
<field name="res_model">acc.repartition.keys.wizard</field> <field name="res_model">acc.repartition.keys.wizard</field>
<field name="view_mode">form</field> <field name="view_mode">form</field>
......
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